Skip to content

Instantly share code, notes, and snippets.

@drewfustin
Created November 17, 2015 18:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save drewfustin/ecca70d2b9779e97ff57 to your computer and use it in GitHub Desktop.
Save drewfustin/ecca70d2b9779e97ff57 to your computer and use it in GitHub Desktop.
Predicting Future Orders (boolean)
This file has been truncated, but you can view the full file.
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<script type=\"text/javascript\">d3=function(){function n(n){return null!=n&&!isNaN(n)}function t(n){return n.length}function e(n){for(var t=1;n*t%1;)t*=10;return t}function r(n,t){try{for(var e in t)Object.defineProperty(n.prototype,e,{value:t[e],enumerable:!1})}catch(r){n.prototype=t}}function u(){}function i(){}function o(n,t,e){return function(){var r=e.apply(t,arguments);return r===t?n:r}}function a(n,t){if(t in n)return t;t=t.charAt(0).toUpperCase()+t.substring(1);for(var e=0,r=Do.length;r>e;++e){var u=Do[e]+t;if(u in n)return u}}function c(){}function l(){}function s(n){function t(){for(var t,r=e,u=-1,i=r.length;++u<i;)(t=r[u].on)&&t.apply(this,arguments);return n}var e=[],r=new u;return t.on=function(t,u){var i,o=r.get(t);return arguments.length<2?o&&o.on:(o&&(o.on=null,e=e.slice(0,i=e.indexOf(o)).concat(e.slice(i+1)),r.remove(t)),u&&e.push(r.set(t,{on:u})),n)},t}function f(){mo.event.preventDefault()}function h(){for(var n,t=mo.event;n=t.sourceEvent;)t=n;return t}function g(n){for(var t=new l,e=0,r=arguments.length;++e<r;)t[arguments[e]]=s(t);return t.of=function(e,r){return function(u){try{var i=u.sourceEvent=mo.event;u.target=n,mo.event=u,t[u.type].apply(e,r)}finally{mo.event=i}}},t}function p(n){return Lo(n,Ro),n}function d(n){return\"function\"==typeof n?n:function(){return Ho(n,this)}}function v(n){return\"function\"==typeof n?n:function(){return Fo(n,this)}}function m(n,t){function e(){this.removeAttribute(n)}function r(){this.removeAttributeNS(n.space,n.local)}function u(){this.setAttribute(n,t)}function i(){this.setAttributeNS(n.space,n.local,t)}function o(){var e=t.apply(this,arguments);null==e?this.removeAttribute(n):this.setAttribute(n,e)}function a(){var e=t.apply(this,arguments);null==e?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,e)}return n=mo.ns.qualify(n),null==t?n.local?r:e:\"function\"==typeof t?n.local?a:o:n.local?i:u}function y(n){return n.trim().replace(/\\s+/g,\" \")}function M(n){return new RegExp(\"(?:^|\\\\s+)\"+mo.requote(n)+\"(?:\\\\s+|$)\",\"g\")}function x(n,t){function e(){for(var e=-1;++e<u;)n[e](this,t)}function r(){for(var e=-1,r=t.apply(this,arguments);++e<u;)n[e](this,r)}n=n.trim().split(/\\s+/).map(b);var u=n.length;return\"function\"==typeof t?r:e}function b(n){var t=M(n);return function(e,r){if(u=e.classList)return r?u.add(n):u.remove(n);var u=e.getAttribute(\"class\")||\"\";r?(t.lastIndex=0,t.test(u)||e.setAttribute(\"class\",y(u+\" \"+n))):e.setAttribute(\"class\",y(u.replace(t,\" \")))}}function _(n,t,e){function r(){this.style.removeProperty(n)}function u(){this.style.setProperty(n,t,e)}function i(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(n):this.style.setProperty(n,r,e)}return null==t?r:\"function\"==typeof t?i:u}function w(n,t){function e(){delete this[n]}function r(){this[n]=t}function u(){var e=t.apply(this,arguments);null==e?delete this[n]:this[n]=e}return null==t?e:\"function\"==typeof t?u:r}function S(n){return\"function\"==typeof n?n:(n=mo.ns.qualify(n)).local?function(){return xo.createElementNS(n.space,n.local)}:function(){return xo.createElementNS(this.namespaceURI,n)}}function E(n){return{__data__:n}}function k(n){return function(){return Oo(this,n)}}function A(n){return arguments.length||(n=mo.ascending),function(t,e){return t&&e?n(t.__data__,e.__data__):!t-!e}}function N(n,t){for(var e=0,r=n.length;r>e;e++)for(var u,i=n[e],o=0,a=i.length;a>o;o++)(u=i[o])&&t(u,o,e);return n}function T(n){return Lo(n,Io),n}function q(n){var t,e;return function(r,u,i){var o,a=n[i].update,c=a.length;for(i!=e&&(e=i,t=0),u>=t&&(t=u+1);!(o=a[t])&&++t<c;);return o}}function z(){var n=this.__transition__;n&&++n.active}function C(n,t,e){function r(){var t=this[o];t&&(this.removeEventListener(n,t,t.$),delete this[o])}function u(){var u=l(t,Mo(arguments));r.call(this),this.addEventListener(n,this[o]=u,u.$=e),u._=t}function i(){var t,e=new RegExp(\"^__on([^.]+)\"+mo.requote(n)+\"$\");for(var r in this)if(t=r.match(e)){var u=this[r];this.removeEventListener(t[1],u,u.$),delete this[r]}}var o=\"__on\"+n,a=n.indexOf(\".\"),l=D;a>0&&(n=n.substring(0,a));var s=Zo.get(n);return s&&(n=s,l=j),a?t?u:r:t?c:i}function D(n,t){return function(e){var r=mo.event;mo.event=e,t[0]=this.__data__;try{n.apply(this,t)}finally{mo.event=r}}}function j(n,t){var e=D(n,t);return function(n){var t=this,r=n.relatedTarget;r&&(r===t||8&r.compareDocumentPosition(t))||e.call(t,n)}}function L(){var n=\".dragsuppress-\"+ ++Xo,t=\"touchmove\"+n,e=\"selectstart\"+n,r=\"dragstart\"+n,u=\"click\"+n,i=mo.select(_o).on(t,f).on(e,f).on(r,f),o=bo.style,a=o[Vo];return o[Vo]=\"none\",function(t){function e(){i.on(u,null)}i.on(n,null),o[Vo]=a,t&&(i.on(u,function(){f(),e()},!0),setTimeout(e,0))}}function H(n,t){t.changedTouches&&(t=t.changedTouches[0]);var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();if(0>$o&&(_o.scrollX||_o.scrollY)){e=mo.select(\"body\").append(\"svg\").style({position:\"absolute\",top:0,left:0,margin:0,padding:0,border:\"none\"},\"important\");var u=e[0][0].getScreenCTM();$o=!(u.f||u.e),e.remove()}return $o?(r.x=t.pageX,r.y=t.pageY):(r.x=t.clientX,r.y=t.clientY),r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}function F(n){return n>0?1:0>n?-1:0}function P(n){return n>1?0:-1>n?Bo:Math.acos(n)}function O(n){return n>1?Bo/2:-1>n?-Bo/2:Math.asin(n)}function R(n){return(Math.exp(n)-Math.exp(-n))/2}function Y(n){return(Math.exp(n)+Math.exp(-n))/2}function I(n){return R(n)/Y(n)}function U(n){return(n=Math.sin(n/2))*n}function Z(){}function V(n,t,e){return new X(n,t,e)}function X(n,t,e){this.h=n,this.s=t,this.l=e}function $(n,t,e){function r(n){return n>360?n-=360:0>n&&(n+=360),60>n?i+(o-i)*n/60:180>n?o:240>n?i+(o-i)*(240-n)/60:i}function u(n){return Math.round(255*r(n))}var i,o;return n=isNaN(n)?0:(n%=360)<0?n+360:n,t=isNaN(t)?0:0>t?0:t>1?1:t,e=0>e?0:e>1?1:e,o=.5>=e?e*(1+t):e+t-e*t,i=2*e-o,ot(u(n+120),u(n),u(n-120))}function B(n,t,e){return new W(n,t,e)}function W(n,t,e){this.h=n,this.c=t,this.l=e}function J(n,t,e){return isNaN(n)&&(n=0),isNaN(t)&&(t=0),G(e,Math.cos(n*=Go)*t,Math.sin(n)*t)}function G(n,t,e){return new K(n,t,e)}function K(n,t,e){this.l=n,this.a=t,this.b=e}function Q(n,t,e){var r=(n+16)/116,u=r+t/500,i=r-e/200;return u=tt(u)*ca,r=tt(r)*la,i=tt(i)*sa,ot(rt(3.2404542*u-1.5371385*r-.4985314*i),rt(-.969266*u+1.8760108*r+.041556*i),rt(.0556434*u-.2040259*r+1.0572252*i))}function nt(n,t,e){return n>0?B(Math.atan2(e,t)*Ko,Math.sqrt(t*t+e*e),n):B(0/0,0/0,n)}function tt(n){return n>.206893034?n*n*n:(n-4/29)/7.787037}function et(n){return n>.008856?Math.pow(n,1/3):7.787037*n+4/29}function rt(n){return Math.round(255*(.00304>=n?12.92*n:1.055*Math.pow(n,1/2.4)-.055))}function ut(n){return ot(n>>16,255&n>>8,255&n)}function it(n){return ut(n)+\"\"}function ot(n,t,e){return new at(n,t,e)}function at(n,t,e){this.r=n,this.g=t,this.b=e}function ct(n){return 16>n?\"0\"+Math.max(0,n).toString(16):Math.min(255,n).toString(16)}function lt(n,t,e){var r,u,i,o=0,a=0,c=0;if(r=/([a-z]+)\\((.*)\\)/i.exec(n))switch(u=r[2].split(\",\"),r[1]){case\"hsl\":return e(parseFloat(u[0]),parseFloat(u[1])/100,parseFloat(u[2])/100);case\"rgb\":return t(gt(u[0]),gt(u[1]),gt(u[2]))}return(i=ga.get(n))?t(i.r,i.g,i.b):(null!=n&&\"#\"===n.charAt(0)&&(4===n.length?(o=n.charAt(1),o+=o,a=n.charAt(2),a+=a,c=n.charAt(3),c+=c):7===n.length&&(o=n.substring(1,3),a=n.substring(3,5),c=n.substring(5,7)),o=parseInt(o,16),a=parseInt(a,16),c=parseInt(c,16)),t(o,a,c))}function st(n,t,e){var r,u,i=Math.min(n/=255,t/=255,e/=255),o=Math.max(n,t,e),a=o-i,c=(o+i)/2;return a?(u=.5>c?a/(o+i):a/(2-o-i),r=n==o?(t-e)/a+(e>t?6:0):t==o?(e-n)/a+2:(n-t)/a+4,r*=60):(r=0/0,u=c>0&&1>c?0:r),V(r,u,c)}function ft(n,t,e){n=ht(n),t=ht(t),e=ht(e);var r=et((.4124564*n+.3575761*t+.1804375*e)/ca),u=et((.2126729*n+.7151522*t+.072175*e)/la),i=et((.0193339*n+.119192*t+.9503041*e)/sa);return G(116*u-16,500*(r-u),200*(u-i))}function ht(n){return(n/=255)<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function gt(n){var t=parseFloat(n);return\"%\"===n.charAt(n.length-1)?Math.round(2.55*t):t}function pt(n){return\"function\"==typeof n?n:function(){return n}}function dt(n){return n}function vt(n){return function(t,e,r){return 2===arguments.length&&\"function\"==typeof e&&(r=e,e=null),mt(t,e,n,r)}}function mt(n,t,e,r){function u(){var n,t=c.status;if(!t&&c.responseText||t>=200&&300>t||304===t){try{n=e.call(i,c)}catch(r){return o.error.call(i,r),void 0}o.load.call(i,n)}else o.error.call(i,c)}var i={},o=mo.dispatch(\"beforesend\",\"progress\",\"load\",\"error\"),a={},c=new XMLHttpRequest,l=null;return!_o.XDomainRequest||\"withCredentials\"in c||!/^(http(s)?:)?\\/\\//.test(n)||(c=new XDomainRequest),\"onload\"in c?c.onload=c.onerror=u:c.onreadystatechange=function(){c.readyState>3&&u()},c.onprogress=function(n){var t=mo.event;mo.event=n;try{o.progress.call(i,c)}finally{mo.event=t}},i.header=function(n,t){return n=(n+\"\").toLowerCase(),arguments.length<2?a[n]:(null==t?delete a[n]:a[n]=t+\"\",i)},i.mimeType=function(n){return arguments.length?(t=null==n?null:n+\"\",i):t},i.responseType=function(n){return arguments.length?(l=n,i):l},i.response=function(n){return e=n,i},[\"get\",\"post\"].forEach(function(n){i[n]=function(){return i.send.apply(i,[n].concat(Mo(arguments)))}}),i.send=function(e,r,u){if(2===arguments.length&&\"function\"==typeof r&&(u=r,r=null),c.open(e,n,!0),null==t||\"accept\"in a||(a.accept=t+\",*/*\"),c.setRequestHeader)for(var s in a)c.setRequestHeader(s,a[s]);return null!=t&&c.overrideMimeType&&c.overrideMimeType(t),null!=l&&(c.responseType=l),null!=u&&i.on(\"error\",u).on(\"load\",function(n){u(null,n)}),o.beforesend.call(i,c),c.send(null==r?null:r),i},i.abort=function(){return c.abort(),i},mo.rebind(i,o,\"on\"),null==r?i:i.get(yt(r))}function yt(n){return 1===n.length?function(t,e){n(null==t?e:null)}:n}function Mt(){var n=bt(),t=_t()-n;t>24?(isFinite(t)&&(clearTimeout(ma),ma=setTimeout(Mt,t)),va=0):(va=1,Ma(Mt))}function xt(n,t,e){var r=arguments.length;2>r&&(t=0),3>r&&(e=Date.now()),ya.callback=n,ya.time=e+t}function bt(){var n=Date.now();for(ya=pa;ya;)n>=ya.time&&(ya.flush=ya.callback(n-ya.time)),ya=ya.next;return n}function _t(){for(var n,t=pa,e=1/0;t;)t.flush?t=n?n.next=t.next:pa=t.next:(t.time<e&&(e=t.time),t=(n=t).next);return da=n,e}function wt(n,t){var e=Math.pow(10,3*Math.abs(8-t));return{scale:t>8?function(n){return n/e}:function(n){return n*e},symbol:n}}function St(n,t){return t-(n?Math.ceil(Math.log(n)/Math.LN10):1)}function Et(n){return n+\"\"}function kt(){}function At(n,t,e){var r=e.s=n+t,u=r-n,i=r-u;e.t=n-i+(t-u)}function Nt(n,t){n&&za.hasOwnProperty(n.type)&&za[n.type](n,t)}function Tt(n,t,e){var r,u=-1,i=n.length-e;for(t.lineStart();++u<i;)r=n[u],t.point(r[0],r[1],r[2]);t.lineEnd()}function qt(n,t){var e=-1,r=n.length;for(t.polygonStart();++e<r;)Tt(n[e],t,1);t.polygonEnd()}function zt(){function n(n,t){n*=Go,t=t*Go/2+Bo/4;var e=n-r,o=Math.cos(t),a=Math.sin(t),c=i*a,l=u*o+c*Math.cos(e),s=c*Math.sin(e);Da.add(Math.atan2(s,l)),r=n,u=o,i=a}var t,e,r,u,i;ja.point=function(o,a){ja.point=n,r=(t=o)*Go,u=Math.cos(a=(e=a)*Go/2+Bo/4),i=Math.sin(a)},ja.lineEnd=function(){n(t,e)}}function Ct(n){var t=n[0],e=n[1],r=Math.cos(e);return[r*Math.cos(t),r*Math.sin(t),Math.sin(e)]}function Dt(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]}function jt(n,t){return[n[1]*t[2]-n[2]*t[1],n[2]*t[0]-n[0]*t[2],n[0]*t[1]-n[1]*t[0]]}function Lt(n,t){n[0]+=t[0],n[1]+=t[1],n[2]+=t[2]}function Ht(n,t){return[n[0]*t,n[1]*t,n[2]*t]}function Ft(n){var t=Math.sqrt(n[0]*n[0]+n[1]*n[1]+n[2]*n[2]);n[0]/=t,n[1]/=t,n[2]/=t}function Pt(n){return[Math.atan2(n[1],n[0]),O(n[2])]}function Ot(n,t){return Math.abs(n[0]-t[0])<Wo&&Math.abs(n[1]-t[1])<Wo}function Rt(n,t){n*=Go;var e=Math.cos(t*=Go);Yt(e*Math.cos(n),e*Math.sin(n),Math.sin(t))}function Yt(n,t,e){++La,Fa+=(n-Fa)/La,Pa+=(t-Pa)/La,Oa+=(e-Oa)/La}function It(){function n(n,u){n*=Go;var i=Math.cos(u*=Go),o=i*Math.cos(n),a=i*Math.sin(n),c=Math.sin(u),l=Math.atan2(Math.sqrt((l=e*c-r*a)*l+(l=r*o-t*c)*l+(l=t*a-e*o)*l),t*o+e*a+r*c);Ha+=l,Ra+=l*(t+(t=o)),Ya+=l*(e+(e=a)),Ia+=l*(r+(r=c)),Yt(t,e,r)}var t,e,r;Xa.point=function(u,i){u*=Go;var o=Math.cos(i*=Go);t=o*Math.cos(u),e=o*Math.sin(u),r=Math.sin(i),Xa.point=n,Yt(t,e,r)}}function Ut(){Xa.point=Rt}function Zt(){function n(n,t){n*=Go;var e=Math.cos(t*=Go),o=e*Math.cos(n),a=e*Math.sin(n),c=Math.sin(t),l=u*c-i*a,s=i*o-r*c,f=r*a-u*o,h=Math.sqrt(l*l+s*s+f*f),g=r*o+u*a+i*c,p=h&&-P(g)/h,d=Math.atan2(h,g);Ua+=p*l,Za+=p*s,Va+=p*f,Ha+=d,Ra+=d*(r+(r=o)),Ya+=d*(u+(u=a)),Ia+=d*(i+(i=c)),Yt(r,u,i)}var t,e,r,u,i;Xa.point=function(o,a){t=o,e=a,Xa.point=n,o*=Go;var c=Math.cos(a*=Go);r=c*Math.cos(o),u=c*Math.sin(o),i=Math.sin(a),Yt(r,u,i)},Xa.lineEnd=function(){n(t,e),Xa.lineEnd=Ut,Xa.point=Rt}}function Vt(){return!0}function Xt(n,t,e,r,u){var i=[],o=[];if(n.forEach(function(n){if(!((t=n.length-1)<=0)){var t,e=n[0],r=n[t];if(Ot(e,r)){u.lineStart();for(var a=0;t>a;++a)u.point((e=n[a])[0],e[1]);return u.lineEnd(),void 0}var c={point:e,points:n,other:null,visited:!1,entry:!0,subject:!0},l={point:e,points:[e],other:c,visited:!1,entry:!1,subject:!1};c.other=l,i.push(c),o.push(l),c={point:r,points:[r],other:null,visited:!1,entry:!1,subject:!0},l={point:r,points:[r],other:c,visited:!1,entry:!0,subject:!1},c.other=l,i.push(c),o.push(l)}}),o.sort(t),$t(i),$t(o),i.length){if(e)for(var a=1,c=!e(o[0].point),l=o.length;l>a;++a)o[a].entry=c=!c;for(var s,f,h,g=i[0];;){for(s=g;s.visited;)if((s=s.next)===g)return;f=s.points,u.lineStart();do{if(s.visited=s.other.visited=!0,s.entry){if(s.subject)for(var a=0;a<f.length;a++)u.point((h=f[a])[0],h[1]);else r(s.point,s.next.point,1,u);s=s.next}else{if(s.subject){f=s.prev.points;for(var a=f.length;--a>=0;)u.point((h=f[a])[0],h[1])}else r(s.point,s.prev.point,-1,u);s=s.prev}s=s.other,f=s.points}while(!s.visited);u.lineEnd()}}}function $t(n){if(t=n.length){for(var t,e,r=0,u=n[0];++r<t;)u.next=e=n[r],e.prev=u,u=e;u.next=e=n[0],e.prev=u}}function Bt(n,t,e,r){return function(u){function i(t,e){n(t,e)&&u.point(t,e)}function o(n,t){d.point(n,t)}function a(){v.point=o,d.lineStart()}function c(){v.point=i,d.lineEnd()}function l(n,t){y.point(n,t),p.push([n,t])}function s(){y.lineStart(),p=[]}function f(){l(p[0][0],p[0][1]),y.lineEnd();var n,t=y.clean(),e=m.buffer(),r=e.length;if(p.pop(),g.push(p),p=null,r){if(1&t){n=e[0];var i,r=n.length-1,o=-1;for(u.lineStart();++o<r;)u.point((i=n[o])[0],i[1]);return u.lineEnd(),void 0}r>1&&2&t&&e.push(e.pop().concat(e.shift())),h.push(e.filter(Wt))}}var h,g,p,d=t(u),v={point:i,lineStart:a,lineEnd:c,polygonStart:function(){v.point=l,v.lineStart=s,v.lineEnd=f,h=[],g=[],u.polygonStart()},polygonEnd:function(){v.point=i,v.lineStart=a,v.lineEnd=c,h=mo.merge(h),h.length?Xt(h,Gt,null,e,u):r(g)&&(u.lineStart(),e(null,null,1,u),u.lineEnd()),u.polygonEnd(),h=g=null},sphere:function(){u.polygonStart(),u.lineStart(),e(null,null,1,u),u.lineEnd(),u.polygonEnd()}},m=Jt(),y=t(m);return v}}function Wt(n){return n.length>1}function Jt(){var n,t=[];return{lineStart:function(){t.push(n=[])},point:function(t,e){n.push([t,e])},lineEnd:c,buffer:function(){var e=t;return t=[],n=null,e},rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))}}}function Gt(n,t){return((n=n.point)[0]<0?n[1]-Bo/2-Wo:Bo/2-n[1])-((t=t.point)[0]<0?t[1]-Bo/2-Wo:Bo/2-t[1])}function Kt(n,t){var e=n[0],r=n[1],u=[Math.sin(e),-Math.cos(e),0],i=0,o=0;Da.reset();for(var a=0,c=t.length;c>a;++a){var l=t[a],s=l.length;if(s)for(var f=l[0],h=f[0],g=f[1]/2+Bo/4,p=Math.sin(g),d=Math.cos(g),v=1;;){v===s&&(v=0),n=l[v];var m=n[0],y=n[1]/2+Bo/4,M=Math.sin(y),x=Math.cos(y),b=m-h,_=Math.abs(b)>Bo,w=p*M;if(Da.add(Math.atan2(w*Math.sin(b),d*x+w*Math.cos(b))),i+=_?b+(b>=0?2:-2)*Bo:b,_^h>=e^m>=e){var S=jt(Ct(f),Ct(n));Ft(S);var E=jt(u,S);Ft(E);var k=(_^b>=0?-1:1)*O(E[2]);r>k&&(o+=_^b>=0?1:-1)}if(!v++)break;h=m,p=M,d=x,f=n}}return(-Wo>i||Wo>i&&0>Da)^1&o}function Qt(n){var t,e=0/0,r=0/0,u=0/0;return{lineStart:function(){n.lineStart(),t=1},point:function(i,o){var a=i>0?Bo:-Bo,c=Math.abs(i-e);Math.abs(c-Bo)<Wo?(n.point(e,r=(r+o)/2>0?Bo/2:-Bo/2),n.point(u,r),n.lineEnd(),n.lineStart(),n.point(a,r),n.point(i,r),t=0):u!==a&&c>=Bo&&(Math.abs(e-u)<Wo&&(e-=u*Wo),Math.abs(i-a)<Wo&&(i-=a*Wo),r=ne(e,r,i,o),n.point(u,r),n.lineEnd(),n.lineStart(),n.point(a,r),t=0),n.point(e=i,r=o),u=a},lineEnd:function(){n.lineEnd(),e=r=0/0},clean:function(){return 2-t}}}function ne(n,t,e,r){var u,i,o=Math.sin(n-e);return Math.abs(o)>Wo?Math.atan((Math.sin(t)*(i=Math.cos(r))*Math.sin(e)-Math.sin(r)*(u=Math.cos(t))*Math.sin(n))/(u*i*o)):(t+r)/2}function te(n,t,e,r){var u;if(null==n)u=e*Bo/2,r.point(-Bo,u),r.point(0,u),r.point(Bo,u),r.point(Bo,0),r.point(Bo,-u),r.point(0,-u),r.point(-Bo,-u),r.point(-Bo,0),r.point(-Bo,u);else if(Math.abs(n[0]-t[0])>Wo){var i=(n[0]<t[0]?1:-1)*Bo;u=e*i/2,r.point(-i,u),r.point(0,u),r.point(i,u)}else r.point(t[0],t[1])}function ee(n){return Kt(Ba,n)}function re(n){function t(n,t){return Math.cos(n)*Math.cos(t)>o}function e(n){var e,i,o,c,s;return{lineStart:function(){c=o=!1,s=1},point:function(f,h){var g,p=[f,h],d=t(f,h),v=a?d?0:u(f,h):d?u(f+(0>f?Bo:-Bo),h):0;if(!e&&(c=o=d)&&n.lineStart(),d!==o&&(g=r(e,p),(Ot(e,g)||Ot(p,g))&&(p[0]+=Wo,p[1]+=Wo,d=t(p[0],p[1]))),d!==o)s=0,d?(n.lineStart(),g=r(p,e),n.point(g[0],g[1])):(g=r(e,p),n.point(g[0],g[1]),n.lineEnd()),e=g;else if(l&&e&&a^d){var m;v&i||!(m=r(p,e,!0))||(s=0,a?(n.lineStart(),n.point(m[0][0],m[0][1]),n.point(m[1][0],m[1][1]),n.lineEnd()):(n.point(m[1][0],m[1][1]),n.lineEnd(),n.lineStart(),n.point(m[0][0],m[0][1])))}!d||e&&Ot(e,p)||n.point(p[0],p[1]),e=p,o=d,i=v},lineEnd:function(){o&&n.lineEnd(),e=null},clean:function(){return s|(c&&o)<<1}}}function r(n,t,e){var r=Ct(n),u=Ct(t),i=[1,0,0],a=jt(r,u),c=Dt(a,a),l=a[0],s=c-l*l;if(!s)return!e&&n;var f=o*c/s,h=-o*l/s,g=jt(i,a),p=Ht(i,f),d=Ht(a,h);Lt(p,d);var v=g,m=Dt(p,v),y=Dt(v,v),M=m*m-y*(Dt(p,p)-1);if(!(0>M)){var x=Math.sqrt(M),b=Ht(v,(-m-x)/y);if(Lt(b,p),b=Pt(b),!e)return b;var _,w=n[0],S=t[0],E=n[1],k=t[1];w>S&&(_=w,w=S,S=_);var A=S-w,N=Math.abs(A-Bo)<Wo,T=N||Wo>A;if(!N&&E>k&&(_=E,E=k,k=_),T?N?E+k>0^b[1]<(Math.abs(b[0]-w)<Wo?E:k):E<=b[1]&&b[1]<=k:A>Bo^(w<=b[0]&&b[0]<=S)){var q=Ht(v,(-m+x)/y);return Lt(q,p),[b,Pt(q)]}}}function u(t,e){var r=a?n:Bo-n,u=0;return-r>t?u|=1:t>r&&(u|=2),-r>e?u|=4:e>r&&(u|=8),u}function i(n){return Kt(c,n)}var o=Math.cos(n),a=o>0,c=[n,0],l=Math.abs(o)>Wo,s=Te(n,6*Go);return Bt(t,e,s,i)}function ue(n,t,e,r){function u(r,u){return Math.abs(r[0]-n)<Wo?u>0?0:3:Math.abs(r[0]-e)<Wo?u>0?2:1:Math.abs(r[1]-t)<Wo?u>0?1:0:u>0?3:2}function i(n,t){return o(n.point,t.point)}function o(n,t){var e=u(n,1),r=u(t,1);return e!==r?e-r:0===e?t[1]-n[1]:1===e?n[0]-t[0]:2===e?n[1]-t[1]:t[0]-n[0]}function a(u,i){var o=i[0]-u[0],a=i[1]-u[1],c=[0,1];return Math.abs(o)<Wo&&Math.abs(a)<Wo?n<=u[0]&&u[0]<=e&&t<=u[1]&&u[1]<=r:ie(n-u[0],o,c)&&ie(u[0]-e,-o,c)&&ie(t-u[1],a,c)&&ie(u[1]-r,-a,c)?(c[1]<1&&(i[0]=u[0]+c[1]*o,i[1]=u[1]+c[1]*a),c[0]>0&&(u[0]+=c[0]*o,u[1]+=c[0]*a),!0):!1}return function(c){function l(i){var o=u(i,-1),a=s([0===o||3===o?n:e,o>1?r:t]);return a}function s(n){for(var t=0,e=M.length,r=n[1],u=0;e>u;++u)for(var i,o=1,a=M[u],c=a.length,l=a[0];c>o;++o)i=a[o],l[1]<=r?i[1]>r&&f(l,i,n)>0&&++t:i[1]<=r&&f(l,i,n)<0&&--t,l=i;return 0!==t}function f(n,t,e){return(t[0]-n[0])*(e[1]-n[1])-(e[0]-n[0])*(t[1]-n[1])}function h(i,a,c,l){var s=0,f=0;if(null==i||(s=u(i,c))!==(f=u(a,c))||o(i,a)<0^c>0){do l.point(0===s||3===s?n:e,s>1?r:t);while((s=(s+c+4)%4)!==f)}else l.point(a[0],a[1])}function g(u,i){return u>=n&&e>=u&&i>=t&&r>=i}function p(n,t){g(n,t)&&c.point(n,t)}function d(){q.point=m,M&&M.push(x=[]),A=!0,k=!1,S=E=0/0}function v(){y&&(m(b,_),w&&k&&T.rejoin(),y.push(T.buffer())),q.point=p,k&&c.lineEnd()}function m(n,t){n=Math.max(-Wa,Math.min(Wa,n)),t=Math.max(-Wa,Math.min(Wa,t));var e=g(n,t);if(M&&x.push([n,t]),A)b=n,_=t,w=e,A=!1,e&&(c.lineStart(),c.point(n,t));else if(e&&k)c.point(n,t);else{var r=[S,E],u=[n,t];a(r,u)?(k||(c.lineStart(),c.point(r[0],r[1])),c.point(u[0],u[1]),e||c.lineEnd()):e&&(c.lineStart(),c.point(n,t))}S=n,E=t,k=e}var y,M,x,b,_,w,S,E,k,A,N=c,T=Jt(),q={point:p,lineStart:d,lineEnd:v,polygonStart:function(){c=T,y=[],M=[]},polygonEnd:function(){c=N,(y=mo.merge(y)).length?(c.polygonStart(),Xt(y,i,l,h,c),c.polygonEnd()):s([n,t])&&(c.polygonStart(),c.lineStart(),h(null,null,1,c),c.lineEnd(),c.polygonEnd()),y=M=x=null}};return q}}function ie(n,t,e){if(Math.abs(t)<Wo)return 0>=n;var r=n/t;if(t>0){if(r>e[1])return!1;r>e[0]&&(e[0]=r)}else{if(r<e[0])return!1;r<e[1]&&(e[1]=r)}return!0}function oe(n,t){function e(e,r){return e=n(e,r),t(e[0],e[1])}return n.invert&&t.invert&&(e.invert=function(e,r){return e=t.invert(e,r),e&&n.invert(e[0],e[1])}),e}function ae(n){var t=0,e=Bo/3,r=_e(n),u=r(t,e);return u.parallels=function(n){return arguments.length?r(t=n[0]*Bo/180,e=n[1]*Bo/180):[180*(t/Bo),180*(e/Bo)]},u}function ce(n,t){function e(n,t){var e=Math.sqrt(i-2*u*Math.sin(t))/u;return[e*Math.sin(n*=u),o-e*Math.cos(n)]}var r=Math.sin(n),u=(r+Math.sin(t))/2,i=1+r*(2*u-r),o=Math.sqrt(i)/u;return e.invert=function(n,t){var e=o-t;return[Math.atan2(n,e)/u,O((i-(n*n+e*e)*u*u)/(2*u))]},e}function le(){function n(n,t){Ga+=u*n-r*t,r=n,u=t}var t,e,r,u;ec.point=function(i,o){ec.point=n,t=r=i,e=u=o},ec.lineEnd=function(){n(t,e)}}function se(n,t){Ka>n&&(Ka=n),n>nc&&(nc=n),Qa>t&&(Qa=t),t>tc&&(tc=t)}function fe(){function n(n,t){o.push(\"M\",n,\",\",t,i)}function t(n,t){o.push(\"M\",n,\",\",t),a.point=e}function e(n,t){o.push(\"L\",n,\",\",t)}function r(){a.point=n}function u(){o.push(\"Z\")}var i=he(4.5),o=[],a={point:n,lineStart:function(){a.point=t},lineEnd:r,polygonStart:function(){a.lineEnd=u},polygonEnd:function(){a.lineEnd=r,a.point=n},pointRadius:function(n){return i=he(n),a},result:function(){if(o.length){var n=o.join(\"\");return o=[],n}}};return a}function he(n){return\"m0,\"+n+\"a\"+n+\",\"+n+\" 0 1,1 0,\"+-2*n+\"a\"+n+\",\"+n+\" 0 1,1 0,\"+2*n+\"z\"}function ge(n,t){Fa+=n,Pa+=t,++Oa}function pe(){function n(n,r){var u=n-t,i=r-e,o=Math.sqrt(u*u+i*i);Ra+=o*(t+n)/2,Ya+=o*(e+r)/2,Ia+=o,ge(t=n,e=r)}var t,e;uc.point=function(r,u){uc.point=n,ge(t=r,e=u)}}function de(){uc.point=ge}function ve(){function n(n,t){var e=n-r,i=t-u,o=Math.sqrt(e*e+i*i);Ra+=o*(r+n)/2,Ya+=o*(u+t)/2,Ia+=o,o=u*n-r*t,Ua+=o*(r+n),Za+=o*(u+t),Va+=3*o,ge(r=n,u=t)}var t,e,r,u;uc.point=function(i,o){uc.point=n,ge(t=r=i,e=u=o)},uc.lineEnd=function(){n(t,e)}}function me(n){function t(t,e){n.moveTo(t,e),n.arc(t,e,o,0,2*Bo)}function e(t,e){n.moveTo(t,e),a.point=r}function r(t,e){n.lineTo(t,e)}function u(){a.point=t}function i(){n.closePath()}var o=4.5,a={point:t,lineStart:function(){a.point=e},lineEnd:u,polygonStart:function(){a.lineEnd=i},polygonEnd:function(){a.lineEnd=u,a.point=t},pointRadius:function(n){return o=n,a},result:c};return a}function ye(n){function t(t){function r(e,r){e=n(e,r),t.point(e[0],e[1])}function u(){M=0/0,S.point=o,t.lineStart()}function o(r,u){var o=Ct([r,u]),a=n(r,u);e(M,x,y,b,_,w,M=a[0],x=a[1],y=r,b=o[0],_=o[1],w=o[2],i,t),t.point(M,x)}function a(){S.point=r,t.lineEnd()}function c(){u(),S.point=l,S.lineEnd=s}function l(n,t){o(f=n,h=t),g=M,p=x,d=b,v=_,m=w,S.point=o}function s(){e(M,x,y,b,_,w,g,p,f,d,v,m,i,t),S.lineEnd=a,a()}var f,h,g,p,d,v,m,y,M,x,b,_,w,S={point:r,lineStart:u,lineEnd:a,polygonStart:function(){t.polygonStart(),S.lineStart=c},polygonEnd:function(){t.polygonEnd(),S.lineStart=u}};return S}function e(t,i,o,a,c,l,s,f,h,g,p,d,v,m){var y=s-t,M=f-i,x=y*y+M*M;if(x>4*r&&v--){var b=a+g,_=c+p,w=l+d,S=Math.sqrt(b*b+_*_+w*w),E=Math.asin(w/=S),k=Math.abs(Math.abs(w)-1)<Wo?(o+h)/2:Math.atan2(_,b),A=n(k,E),N=A[0],T=A[1],q=N-t,z=T-i,C=M*q-y*z;(C*C/x>r||Math.abs((y*q+M*z)/x-.5)>.3||u>a*g+c*p+l*d)&&(e(t,i,o,a,c,l,N,T,k,b/=S,_/=S,w,v,m),m.point(N,T),e(N,T,k,b,_,w,s,f,h,g,p,d,v,m))}}var r=.5,u=Math.cos(30*Go),i=16;return t.precision=function(n){return arguments.length?(i=(r=n*n)>0&&16,t):Math.sqrt(r)},t}function Me(n){this.stream=n}function xe(n){var t=ye(function(t,e){return n([t*Ko,e*Ko])});return function(n){var e=new Me(n=t(n));return e.point=function(t,e){n.point(t*Go,e*Go)},e}}function be(n){return _e(function(){return n})()}function _e(n){function t(n){return n=a(n[0]*Go,n[1]*Go),[n[0]*h+c,l-n[1]*h]}function e(n){return n=a.invert((n[0]-c)/h,(l-n[1])/h),n&&[n[0]*Ko,n[1]*Ko]}function r(){a=oe(o=Ee(m,y,M),i);var n=i(d,v);return c=g-n[0]*h,l=p+n[1]*h,u()}function u(){return s&&(s.valid=!1,s=null),t}var i,o,a,c,l,s,f=ye(function(n,t){return n=i(n,t),[n[0]*h+c,l-n[1]*h]}),h=150,g=480,p=250,d=0,v=0,m=0,y=0,M=0,x=$a,b=dt,_=null,w=null;return t.stream=function(n){return s&&(s.valid=!1),s=we(o,x(f(b(n)))),s.valid=!0,s},t.clipAngle=function(n){return arguments.length?(x=null==n?(_=n,$a):re((_=+n)*Go),u()):_},t.clipExtent=function(n){return arguments.length?(w=n,b=n?ue(n[0][0],n[0][1],n[1][0],n[1][1]):dt,u()):w},t.scale=function(n){return arguments.length?(h=+n,r()):h},t.translate=function(n){return arguments.length?(g=+n[0],p=+n[1],r()):[g,p]},t.center=function(n){return arguments.length?(d=n[0]%360*Go,v=n[1]%360*Go,r()):[d*Ko,v*Ko]},t.rotate=function(n){return arguments.length?(m=n[0]%360*Go,y=n[1]%360*Go,M=n.length>2?n[2]%360*Go:0,r()):[m*Ko,y*Ko,M*Ko]},mo.rebind(t,f,\"precision\"),function(){return i=n.apply(this,arguments),t.invert=i.invert&&e,r()}}function we(n,t){var e=new Me(t);return e.point=function(e,r){r=n(e*Go,r*Go),e=r[0],t.point(e>Bo?e-2*Bo:-Bo>e?e+2*Bo:e,r[1])},e}function Se(n,t){return[n,t]}function Ee(n,t,e){return n?t||e?oe(Ae(n),Ne(t,e)):Ae(n):t||e?Ne(t,e):Se}function ke(n){return function(t,e){return t+=n,[t>Bo?t-2*Bo:-Bo>t?t+2*Bo:t,e]}}function Ae(n){var t=ke(n);return t.invert=ke(-n),t}function Ne(n,t){function e(n,t){var e=Math.cos(t),a=Math.cos(n)*e,c=Math.sin(n)*e,l=Math.sin(t),s=l*r+a*u;return[Math.atan2(c*i-s*o,a*r-l*u),O(s*i+c*o)]}var r=Math.cos(n),u=Math.sin(n),i=Math.cos(t),o=Math.sin(t);return e.invert=function(n,t){var e=Math.cos(t),a=Math.cos(n)*e,c=Math.sin(n)*e,l=Math.sin(t),s=l*i-c*o;return[Math.atan2(c*i+l*o,a*r+s*u),O(s*r-a*u)]},e}function Te(n,t){var e=Math.cos(n),r=Math.sin(n);return function(u,i,o,a){var c=o*t;null!=u?(u=qe(e,u),i=qe(e,i),(o>0?i>u:u>i)&&(u+=2*o*Bo)):(u=n+2*o*Bo,i=n-.5*c);for(var l,s=u;o>0?s>i:i>s;s-=c)a.point((l=Pt([e,-r*Math.cos(s),-r*Math.sin(s)]))[0],l[1])}}function qe(n,t){var e=Ct(t);e[0]-=n,Ft(e);var r=P(-e[1]);return((-e[2]<0?-r:r)+2*Math.PI-Wo)%(2*Math.PI)}function ze(n,t,e){var r=mo.range(n,t-Wo,e).concat(t);return function(n){return r.map(function(t){return[n,t]})}}function Ce(n,t,e){var r=mo.range(n,t-Wo,e).concat(t);return function(n){return r.map(function(t){return[t,n]})}}function De(n){return n.source}function je(n){return n.target}function Le(n,t,e,r){var u=Math.cos(t),i=Math.sin(t),o=Math.cos(r),a=Math.sin(r),c=u*Math.cos(n),l=u*Math.sin(n),s=o*Math.cos(e),f=o*Math.sin(e),h=2*Math.asin(Math.sqrt(U(r-t)+u*o*U(e-n))),g=1/Math.sin(h),p=h?function(n){var t=Math.sin(n*=h)*g,e=Math.sin(h-n)*g,r=e*c+t*s,u=e*l+t*f,o=e*i+t*a;return[Math.atan2(u,r)*Ko,Math.atan2(o,Math.sqrt(r*r+u*u))*Ko]}:function(){return[n*Ko,t*Ko]};return p.distance=h,p}function He(){function n(n,u){var i=Math.sin(u*=Go),o=Math.cos(u),a=Math.abs((n*=Go)-t),c=Math.cos(a);ic+=Math.atan2(Math.sqrt((a=o*Math.sin(a))*a+(a=r*i-e*o*c)*a),e*i+r*o*c),t=n,e=i,r=o}var t,e,r;oc.point=function(u,i){t=u*Go,e=Math.sin(i*=Go),r=Math.cos(i),oc.point=n},oc.lineEnd=function(){oc.point=oc.lineEnd=c}}function Fe(n,t){function e(t,e){var r=Math.cos(t),u=Math.cos(e),i=n(r*u);return[i*u*Math.sin(t),i*Math.sin(e)]}return e.invert=function(n,e){var r=Math.sqrt(n*n+e*e),u=t(r),i=Math.sin(u),o=Math.cos(u);return[Math.atan2(n*i,r*o),Math.asin(r&&e*i/r)]},e}function Pe(n,t){function e(n,t){var e=Math.abs(Math.abs(t)-Bo/2)<Wo?0:o/Math.pow(u(t),i);return[e*Math.sin(i*n),o-e*Math.cos(i*n)]}var r=Math.cos(n),u=function(n){return Math.tan(Bo/4+n/2)},i=n===t?Math.sin(n):Math.log(r/Math.cos(t))/Math.log(u(t)/u(n)),o=r*Math.pow(u(n),i)/i;return i?(e.invert=function(n,t){var e=o-t,r=F(i)*Math.sqrt(n*n+e*e);return[Math.atan2(n,e)/i,2*Math.atan(Math.pow(o/r,1/i))-Bo/2]},e):Re}function Oe(n,t){function e(n,t){var e=i-t;return[e*Math.sin(u*n),i-e*Math.cos(u*n)]}var r=Math.cos(n),u=n===t?Math.sin(n):(r-Math.cos(t))/(t-n),i=r/u+n;return Math.abs(u)<Wo?Se:(e.invert=function(n,t){var e=i-t;return[Math.atan2(n,e)/u,i-F(u)*Math.sqrt(n*n+e*e)]},e)}function Re(n,t){return[n,Math.log(Math.tan(Bo/4+t/2))]}function Ye(n){var t,e=be(n),r=e.scale,u=e.translate,i=e.clipExtent;return e.scale=function(){var n=r.apply(e,arguments);return n===e?t?e.clipExtent(null):e:n},e.translate=function(){var n=u.apply(e,arguments);return n===e?t?e.clipExtent(null):e:n},e.clipExtent=function(n){var o=i.apply(e,arguments);if(o===e){if(t=null==n){var a=Bo*r(),c=u();i([[c[0]-a,c[1]-a],[c[0]+a,c[1]+a]])}}else t&&(o=null);return o},e.clipExtent(null)}function Ie(n,t){var e=Math.cos(t)*Math.sin(n);return[Math.log((1+e)/(1-e))/2,Math.atan2(Math.tan(t),Math.cos(n))]}function Ue(n){function t(t){function o(){l.push(\"M\",i(n(s),a))}for(var c,l=[],s=[],f=-1,h=t.length,g=pt(e),p=pt(r);++f<h;)u.call(this,c=t[f],f)?s.push([+g.call(this,c,f),+p.call(this,c,f)]):s.length&&(o(),s=[]);return s.length&&o(),l.length?l.join(\"\"):null}var e=Ze,r=Ve,u=Vt,i=Xe,o=i.key,a=.7;return t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(r=n,t):r},t.defined=function(n){return arguments.length?(u=n,t):u},t.interpolate=function(n){return arguments.length?(o=\"function\"==typeof n?i=n:(i=hc.get(n)||Xe).key,t):o},t.tension=function(n){return arguments.length?(a=n,t):a},t}function Ze(n){return n[0]}function Ve(n){return n[1]}function Xe(n){return n.join(\"L\")}function $e(n){return Xe(n)+\"Z\"}function Be(n){for(var t=0,e=n.length,r=n[0],u=[r[0],\",\",r[1]];++t<e;)u.push(\"H\",(r[0]+(r=n[t])[0])/2,\"V\",r[1]);return e>1&&u.push(\"H\",r[0]),u.join(\"\")}function We(n){for(var t=0,e=n.length,r=n[0],u=[r[0],\",\",r[1]];++t<e;)u.push(\"V\",(r=n[t])[1],\"H\",r[0]);return u.join(\"\")}function Je(n){for(var t=0,e=n.length,r=n[0],u=[r[0],\",\",r[1]];++t<e;)u.push(\"H\",(r=n[t])[0],\"V\",r[1]);return u.join(\"\")}function Ge(n,t){return n.length<4?Xe(n):n[1]+nr(n.slice(1,n.length-1),tr(n,t))}function Ke(n,t){return n.length<3?Xe(n):n[0]+nr((n.push(n[0]),n),tr([n[n.length-2]].concat(n,[n[1]]),t))}function Qe(n,t){return n.length<3?Xe(n):n[0]+nr(n,tr(n,t))}function nr(n,t){if(t.length<1||n.length!=t.length&&n.length!=t.length+2)return Xe(n);var e=n.length!=t.length,r=\"\",u=n[0],i=n[1],o=t[0],a=o,c=1;if(e&&(r+=\"Q\"+(i[0]-2*o[0]/3)+\",\"+(i[1]-2*o[1]/3)+\",\"+i[0]+\",\"+i[1],u=n[1],c=2),t.length>1){a=t[1],i=n[c],c++,r+=\"C\"+(u[0]+o[0])+\",\"+(u[1]+o[1])+\",\"+(i[0]-a[0])+\",\"+(i[1]-a[1])+\",\"+i[0]+\",\"+i[1];for(var l=2;l<t.length;l++,c++)i=n[c],a=t[l],r+=\"S\"+(i[0]-a[0])+\",\"+(i[1]-a[1])+\",\"+i[0]+\",\"+i[1]}if(e){var s=n[c];r+=\"Q\"+(i[0]+2*a[0]/3)+\",\"+(i[1]+2*a[1]/3)+\",\"+s[0]+\",\"+s[1]}return r}function tr(n,t){for(var e,r=[],u=(1-t)/2,i=n[0],o=n[1],a=1,c=n.length;++a<c;)e=i,i=o,o=n[a],r.push([u*(o[0]-e[0]),u*(o[1]-e[1])]);return r}function er(n){if(n.length<3)return Xe(n);var t=1,e=n.length,r=n[0],u=r[0],i=r[1],o=[u,u,u,(r=n[1])[0]],a=[i,i,i,r[1]],c=[u,\",\",i,\"L\",or(dc,o),\",\",or(dc,a)];for(n.push(n[e-1]);++t<=e;)r=n[t],o.shift(),o.push(r[0]),a.shift(),a.push(r[1]),ar(c,o,a);return n.pop(),c.push(\"L\",r),c.join(\"\")}function rr(n){if(n.length<4)return Xe(n);for(var t,e=[],r=-1,u=n.length,i=[0],o=[0];++r<3;)t=n[r],i.push(t[0]),o.push(t[1]);for(e.push(or(dc,i)+\",\"+or(dc,o)),--r;++r<u;)t=n[r],i.shift(),i.push(t[0]),o.shift(),o.push(t[1]),ar(e,i,o);return e.join(\"\")}function ur(n){for(var t,e,r=-1,u=n.length,i=u+4,o=[],a=[];++r<4;)e=n[r%u],o.push(e[0]),a.push(e[1]);for(t=[or(dc,o),\",\",or(dc,a)],--r;++r<i;)e=n[r%u],o.shift(),o.push(e[0]),a.shift(),a.push(e[1]),ar(t,o,a);return t.join(\"\")}function ir(n,t){var e=n.length-1;if(e)for(var r,u,i=n[0][0],o=n[0][1],a=n[e][0]-i,c=n[e][1]-o,l=-1;++l<=e;)r=n[l],u=l/e,r[0]=t*r[0]+(1-t)*(i+u*a),r[1]=t*r[1]+(1-t)*(o+u*c);return er(n)}function or(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]+n[3]*t[3]}function ar(n,t,e){n.push(\"C\",or(gc,t),\",\",or(gc,e),\",\",or(pc,t),\",\",or(pc,e),\",\",or(dc,t),\",\",or(dc,e))}function cr(n,t){return(t[1]-n[1])/(t[0]-n[0])}function lr(n){for(var t=0,e=n.length-1,r=[],u=n[0],i=n[1],o=r[0]=cr(u,i);++t<e;)r[t]=(o+(o=cr(u=i,i=n[t+1])))/2;\n",
"return r[t]=o,r}function sr(n){for(var t,e,r,u,i=[],o=lr(n),a=-1,c=n.length-1;++a<c;)t=cr(n[a],n[a+1]),Math.abs(t)<1e-6?o[a]=o[a+1]=0:(e=o[a]/t,r=o[a+1]/t,u=e*e+r*r,u>9&&(u=3*t/Math.sqrt(u),o[a]=u*e,o[a+1]=u*r));for(a=-1;++a<=c;)u=(n[Math.min(c,a+1)][0]-n[Math.max(0,a-1)][0])/(6*(1+o[a]*o[a])),i.push([u||0,o[a]*u||0]);return i}function fr(n){return n.length<3?Xe(n):n[0]+nr(n,sr(n))}function hr(n,t,e,r){var u,i,o,a,c,l,s;return u=r[n],i=u[0],o=u[1],u=r[t],a=u[0],c=u[1],u=r[e],l=u[0],s=u[1],(s-o)*(a-i)-(c-o)*(l-i)>0}function gr(n,t,e){return(e[0]-t[0])*(n[1]-t[1])<(e[1]-t[1])*(n[0]-t[0])}function pr(n,t,e,r){var u=n[0],i=e[0],o=t[0]-u,a=r[0]-i,c=n[1],l=e[1],s=t[1]-c,f=r[1]-l,h=(a*(c-l)-f*(u-i))/(f*o-a*s);return[u+h*o,c+h*s]}function dr(n){var t=n[0],e=n[n.length-1];return!(t[0]-e[0]||t[1]-e[1])}function vr(n,t){var e={list:n.map(function(n,t){return{index:t,x:n[0],y:n[1]}}).sort(function(n,t){return n.y<t.y?-1:n.y>t.y?1:n.x<t.x?-1:n.x>t.x?1:0}),bottomSite:null},r={list:[],leftEnd:null,rightEnd:null,init:function(){r.leftEnd=r.createHalfEdge(null,\"l\"),r.rightEnd=r.createHalfEdge(null,\"l\"),r.leftEnd.r=r.rightEnd,r.rightEnd.l=r.leftEnd,r.list.unshift(r.leftEnd,r.rightEnd)},createHalfEdge:function(n,t){return{edge:n,side:t,vertex:null,l:null,r:null}},insert:function(n,t){t.l=n,t.r=n.r,n.r.l=t,n.r=t},leftBound:function(n){var t=r.leftEnd;do t=t.r;while(t!=r.rightEnd&&u.rightOf(t,n));return t=t.l},del:function(n){n.l.r=n.r,n.r.l=n.l,n.edge=null},right:function(n){return n.r},left:function(n){return n.l},leftRegion:function(n){return null==n.edge?e.bottomSite:n.edge.region[n.side]},rightRegion:function(n){return null==n.edge?e.bottomSite:n.edge.region[mc[n.side]]}},u={bisect:function(n,t){var e={region:{l:n,r:t},ep:{l:null,r:null}},r=t.x-n.x,u=t.y-n.y,i=r>0?r:-r,o=u>0?u:-u;return e.c=n.x*r+n.y*u+.5*(r*r+u*u),i>o?(e.a=1,e.b=u/r,e.c/=r):(e.b=1,e.a=r/u,e.c/=u),e},intersect:function(n,t){var e=n.edge,r=t.edge;if(!e||!r||e.region.r==r.region.r)return null;var u=e.a*r.b-e.b*r.a;if(Math.abs(u)<1e-10)return null;var i,o,a=(e.c*r.b-r.c*e.b)/u,c=(r.c*e.a-e.c*r.a)/u,l=e.region.r,s=r.region.r;l.y<s.y||l.y==s.y&&l.x<s.x?(i=n,o=e):(i=t,o=r);var f=a>=o.region.r.x;return f&&\"l\"===i.side||!f&&\"r\"===i.side?null:{x:a,y:c}},rightOf:function(n,t){var e=n.edge,r=e.region.r,u=t.x>r.x;if(u&&\"l\"===n.side)return 1;if(!u&&\"r\"===n.side)return 0;if(1===e.a){var i=t.y-r.y,o=t.x-r.x,a=0,c=0;if(!u&&e.b<0||u&&e.b>=0?c=a=i>=e.b*o:(c=t.x+t.y*e.b>e.c,e.b<0&&(c=!c),c||(a=1)),!a){var l=r.x-e.region.l.x;c=e.b*(o*o-i*i)<l*i*(1+2*o/l+e.b*e.b),e.b<0&&(c=!c)}}else{var s=e.c-e.a*t.x,f=t.y-s,h=t.x-r.x,g=s-r.y;c=f*f>h*h+g*g}return\"l\"===n.side?c:!c},endPoint:function(n,e,r){n.ep[e]=r,n.ep[mc[e]]&&t(n)},distance:function(n,t){var e=n.x-t.x,r=n.y-t.y;return Math.sqrt(e*e+r*r)}},i={list:[],insert:function(n,t,e){n.vertex=t,n.ystar=t.y+e;for(var r=0,u=i.list,o=u.length;o>r;r++){var a=u[r];if(!(n.ystar>a.ystar||n.ystar==a.ystar&&t.x>a.vertex.x))break}u.splice(r,0,n)},del:function(n){for(var t=0,e=i.list,r=e.length;r>t&&e[t]!=n;++t);e.splice(t,1)},empty:function(){return 0===i.list.length},nextEvent:function(n){for(var t=0,e=i.list,r=e.length;r>t;++t)if(e[t]==n)return e[t+1];return null},min:function(){var n=i.list[0];return{x:n.vertex.x,y:n.ystar}},extractMin:function(){return i.list.shift()}};r.init(),e.bottomSite=e.list.shift();for(var o,a,c,l,s,f,h,g,p,d,v,m,y,M=e.list.shift();;)if(i.empty()||(o=i.min()),M&&(i.empty()||M.y<o.y||M.y==o.y&&M.x<o.x))a=r.leftBound(M),c=r.right(a),h=r.rightRegion(a),m=u.bisect(h,M),f=r.createHalfEdge(m,\"l\"),r.insert(a,f),d=u.intersect(a,f),d&&(i.del(a),i.insert(a,d,u.distance(d,M))),a=f,f=r.createHalfEdge(m,\"r\"),r.insert(a,f),d=u.intersect(f,c),d&&i.insert(f,d,u.distance(d,M)),M=e.list.shift();else{if(i.empty())break;a=i.extractMin(),l=r.left(a),c=r.right(a),s=r.right(c),h=r.leftRegion(a),g=r.rightRegion(c),v=a.vertex,u.endPoint(a.edge,a.side,v),u.endPoint(c.edge,c.side,v),r.del(a),i.del(c),r.del(c),y=\"l\",h.y>g.y&&(p=h,h=g,g=p,y=\"r\"),m=u.bisect(h,g),f=r.createHalfEdge(m,y),r.insert(l,f),u.endPoint(m,mc[y],v),d=u.intersect(l,f),d&&(i.del(l),i.insert(l,d,u.distance(d,h))),d=u.intersect(f,s),d&&i.insert(f,d,u.distance(d,h))}for(a=r.right(r.leftEnd);a!=r.rightEnd;a=r.right(a))t(a.edge)}function mr(n){return n.x}function yr(n){return n.y}function Mr(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function xr(n,t,e,r,u,i){if(!n(t,e,r,u,i)){var o=.5*(e+u),a=.5*(r+i),c=t.nodes;c[0]&&xr(n,c[0],e,r,o,a),c[1]&&xr(n,c[1],o,r,u,a),c[2]&&xr(n,c[2],e,a,o,i),c[3]&&xr(n,c[3],o,a,u,i)}}function br(n,t){n=mo.rgb(n),t=mo.rgb(t);var e=n.r,r=n.g,u=n.b,i=t.r-e,o=t.g-r,a=t.b-u;return function(n){return\"#\"+ct(Math.round(e+i*n))+ct(Math.round(r+o*n))+ct(Math.round(u+a*n))}}function _r(n,t){var e,r={},u={};for(e in n)e in t?r[e]=Er(n[e],t[e]):u[e]=n[e];for(e in t)e in n||(u[e]=t[e]);return function(n){for(e in r)u[e]=r[e](n);return u}}function wr(n,t){return t-=n=+n,function(e){return n+t*e}}function Sr(n,t){var e,r,u,i,o,a=0,c=0,l=[],s=[];for(n+=\"\",t+=\"\",yc.lastIndex=0,r=0;e=yc.exec(t);++r)e.index&&l.push(t.substring(a,c=e.index)),s.push({i:l.length,x:e[0]}),l.push(null),a=yc.lastIndex;for(a<t.length&&l.push(t.substring(a)),r=0,i=s.length;(e=yc.exec(n))&&i>r;++r)if(o=s[r],o.x==e[0]){if(o.i)if(null==l[o.i+1])for(l[o.i-1]+=o.x,l.splice(o.i,1),u=r+1;i>u;++u)s[u].i--;else for(l[o.i-1]+=o.x+l[o.i+1],l.splice(o.i,2),u=r+1;i>u;++u)s[u].i-=2;else if(null==l[o.i+1])l[o.i]=o.x;else for(l[o.i]=o.x+l[o.i+1],l.splice(o.i+1,1),u=r+1;i>u;++u)s[u].i--;s.splice(r,1),i--,r--}else o.x=wr(parseFloat(e[0]),parseFloat(o.x));for(;i>r;)o=s.pop(),null==l[o.i+1]?l[o.i]=o.x:(l[o.i]=o.x+l[o.i+1],l.splice(o.i+1,1)),i--;return 1===l.length?null==l[0]?(o=s[0].x,function(n){return o(n)+\"\"}):function(){return t}:function(n){for(r=0;i>r;++r)l[(o=s[r]).i]=o.x(n);return l.join(\"\")}}function Er(n,t){for(var e,r=mo.interpolators.length;--r>=0&&!(e=mo.interpolators[r](n,t)););return e}function kr(n,t){var e,r=[],u=[],i=n.length,o=t.length,a=Math.min(n.length,t.length);for(e=0;a>e;++e)r.push(Er(n[e],t[e]));for(;i>e;++e)u[e]=n[e];for(;o>e;++e)u[e]=t[e];return function(n){for(e=0;a>e;++e)u[e]=r[e](n);return u}}function Ar(n){return function(t){return 0>=t?0:t>=1?1:n(t)}}function Nr(n){return function(t){return 1-n(1-t)}}function Tr(n){return function(t){return.5*(.5>t?n(2*t):2-n(2-2*t))}}function qr(n){return n*n}function zr(n){return n*n*n}function Cr(n){if(0>=n)return 0;if(n>=1)return 1;var t=n*n,e=t*n;return 4*(.5>n?e:3*(n-t)+e-.75)}function Dr(n){return function(t){return Math.pow(t,n)}}function jr(n){return 1-Math.cos(n*Bo/2)}function Lr(n){return Math.pow(2,10*(n-1))}function Hr(n){return 1-Math.sqrt(1-n*n)}function Fr(n,t){var e;return arguments.length<2&&(t=.45),arguments.length?e=t/(2*Bo)*Math.asin(1/n):(n=1,e=t/4),function(r){return 1+n*Math.pow(2,10*-r)*Math.sin(2*(r-e)*Bo/t)}}function Pr(n){return n||(n=1.70158),function(t){return t*t*((n+1)*t-n)}}function Or(n){return 1/2.75>n?7.5625*n*n:2/2.75>n?7.5625*(n-=1.5/2.75)*n+.75:2.5/2.75>n?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375}function Rr(n,t){n=mo.hcl(n),t=mo.hcl(t);var e=n.h,r=n.c,u=n.l,i=t.h-e,o=t.c-r,a=t.l-u;return isNaN(o)&&(o=0,r=isNaN(r)?t.c:r),isNaN(i)?(i=0,e=isNaN(e)?t.h:e):i>180?i-=360:-180>i&&(i+=360),function(n){return J(e+i*n,r+o*n,u+a*n)+\"\"}}function Yr(n,t){n=mo.hsl(n),t=mo.hsl(t);var e=n.h,r=n.s,u=n.l,i=t.h-e,o=t.s-r,a=t.l-u;return isNaN(o)&&(o=0,r=isNaN(r)?t.s:r),isNaN(i)?(i=0,e=isNaN(e)?t.h:e):i>180?i-=360:-180>i&&(i+=360),function(n){return $(e+i*n,r+o*n,u+a*n)+\"\"}}function Ir(n,t){n=mo.lab(n),t=mo.lab(t);var e=n.l,r=n.a,u=n.b,i=t.l-e,o=t.a-r,a=t.b-u;return function(n){return Q(e+i*n,r+o*n,u+a*n)+\"\"}}function Ur(n,t){return t-=n,function(e){return Math.round(n+t*e)}}function Zr(n){var t=[n.a,n.b],e=[n.c,n.d],r=Xr(t),u=Vr(t,e),i=Xr($r(e,t,-u))||0;t[0]*e[1]<e[0]*t[1]&&(t[0]*=-1,t[1]*=-1,r*=-1,u*=-1),this.rotate=(r?Math.atan2(t[1],t[0]):Math.atan2(-e[0],e[1]))*Ko,this.translate=[n.e,n.f],this.scale=[r,i],this.skew=i?Math.atan2(u,i)*Ko:0}function Vr(n,t){return n[0]*t[0]+n[1]*t[1]}function Xr(n){var t=Math.sqrt(Vr(n,n));return t&&(n[0]/=t,n[1]/=t),t}function $r(n,t,e){return n[0]+=e*t[0],n[1]+=e*t[1],n}function Br(n,t){var e,r=[],u=[],i=mo.transform(n),o=mo.transform(t),a=i.translate,c=o.translate,l=i.rotate,s=o.rotate,f=i.skew,h=o.skew,g=i.scale,p=o.scale;return a[0]!=c[0]||a[1]!=c[1]?(r.push(\"translate(\",null,\",\",null,\")\"),u.push({i:1,x:wr(a[0],c[0])},{i:3,x:wr(a[1],c[1])})):c[0]||c[1]?r.push(\"translate(\"+c+\")\"):r.push(\"\"),l!=s?(l-s>180?s+=360:s-l>180&&(l+=360),u.push({i:r.push(r.pop()+\"rotate(\",null,\")\")-2,x:wr(l,s)})):s&&r.push(r.pop()+\"rotate(\"+s+\")\"),f!=h?u.push({i:r.push(r.pop()+\"skewX(\",null,\")\")-2,x:wr(f,h)}):h&&r.push(r.pop()+\"skewX(\"+h+\")\"),g[0]!=p[0]||g[1]!=p[1]?(e=r.push(r.pop()+\"scale(\",null,\",\",null,\")\"),u.push({i:e-4,x:wr(g[0],p[0])},{i:e-2,x:wr(g[1],p[1])})):(1!=p[0]||1!=p[1])&&r.push(r.pop()+\"scale(\"+p+\")\"),e=u.length,function(n){for(var t,i=-1;++i<e;)r[(t=u[i]).i]=t.x(n);return r.join(\"\")}}function Wr(n,t){return t=t-(n=+n)?1/(t-n):0,function(e){return(e-n)*t}}function Jr(n,t){return t=t-(n=+n)?1/(t-n):0,function(e){return Math.max(0,Math.min(1,(e-n)*t))}}function Gr(n){for(var t=n.source,e=n.target,r=Qr(t,e),u=[t];t!==r;)t=t.parent,u.push(t);for(var i=u.length;e!==r;)u.splice(i,0,e),e=e.parent;return u}function Kr(n){for(var t=[],e=n.parent;null!=e;)t.push(n),n=e,e=e.parent;return t.push(n),t}function Qr(n,t){if(n===t)return n;for(var e=Kr(n),r=Kr(t),u=e.pop(),i=r.pop(),o=null;u===i;)o=u,u=e.pop(),i=r.pop();return o}function nu(n){n.fixed|=2}function tu(n){n.fixed&=-7}function eu(n){n.fixed|=4,n.px=n.x,n.py=n.y}function ru(n){n.fixed&=-5}function uu(n,t,e){var r=0,u=0;if(n.charge=0,!n.leaf)for(var i,o=n.nodes,a=o.length,c=-1;++c<a;)i=o[c],null!=i&&(uu(i,t,e),n.charge+=i.charge,r+=i.charge*i.cx,u+=i.charge*i.cy);if(n.point){n.leaf||(n.point.x+=Math.random()-.5,n.point.y+=Math.random()-.5);var l=t*e[n.point.index];n.charge+=n.pointCharge=l,r+=l*n.point.x,u+=l*n.point.y}n.cx=r/n.charge,n.cy=u/n.charge}function iu(n,t){return mo.rebind(n,t,\"sort\",\"children\",\"value\"),n.nodes=n,n.links=lu,n}function ou(n){return n.children}function au(n){return n.value}function cu(n,t){return t.value-n.value}function lu(n){return mo.merge(n.map(function(n){return(n.children||[]).map(function(t){return{source:n,target:t}})}))}function su(n){return n.x}function fu(n){return n.y}function hu(n,t,e){n.y0=t,n.y=e}function gu(n){return mo.range(n.length)}function pu(n){for(var t=-1,e=n[0].length,r=[];++t<e;)r[t]=0;return r}function du(n){for(var t,e=1,r=0,u=n[0][1],i=n.length;i>e;++e)(t=n[e][1])>u&&(r=e,u=t);return r}function vu(n){return n.reduce(mu,0)}function mu(n,t){return n+t[1]}function yu(n,t){return Mu(n,Math.ceil(Math.log(t.length)/Math.LN2+1))}function Mu(n,t){for(var e=-1,r=+n[0],u=(n[1]-r)/t,i=[];++e<=t;)i[e]=u*e+r;return i}function xu(n){return[mo.min(n),mo.max(n)]}function bu(n,t){return n.parent==t.parent?1:2}function _u(n){var t=n.children;return t&&t.length?t[0]:n._tree.thread}function wu(n){var t,e=n.children;return e&&(t=e.length)?e[t-1]:n._tree.thread}function Su(n,t){var e=n.children;if(e&&(u=e.length))for(var r,u,i=-1;++i<u;)t(r=Su(e[i],t),n)>0&&(n=r);return n}function Eu(n,t){return n.x-t.x}function ku(n,t){return t.x-n.x}function Au(n,t){return n.depth-t.depth}function Nu(n,t){function e(n,r){var u=n.children;if(u&&(o=u.length))for(var i,o,a=null,c=-1;++c<o;)i=u[c],e(i,a),a=i;t(n,r)}e(n,null)}function Tu(n){for(var t,e=0,r=0,u=n.children,i=u.length;--i>=0;)t=u[i]._tree,t.prelim+=e,t.mod+=e,e+=t.shift+(r+=t.change)}function qu(n,t,e){n=n._tree,t=t._tree;var r=e/(t.number-n.number);n.change+=r,t.change-=r,t.shift+=e,t.prelim+=e,t.mod+=e}function zu(n,t,e){return n._tree.ancestor.parent==t.parent?n._tree.ancestor:e}function Cu(n,t){return n.value-t.value}function Du(n,t){var e=n._pack_next;n._pack_next=t,t._pack_prev=n,t._pack_next=e,e._pack_prev=t}function ju(n,t){n._pack_next=t,t._pack_prev=n}function Lu(n,t){var e=t.x-n.x,r=t.y-n.y,u=n.r+t.r;return.999*u*u>e*e+r*r}function Hu(n){function t(n){s=Math.min(n.x-n.r,s),f=Math.max(n.x+n.r,f),h=Math.min(n.y-n.r,h),g=Math.max(n.y+n.r,g)}if((e=n.children)&&(l=e.length)){var e,r,u,i,o,a,c,l,s=1/0,f=-1/0,h=1/0,g=-1/0;if(e.forEach(Fu),r=e[0],r.x=-r.r,r.y=0,t(r),l>1&&(u=e[1],u.x=u.r,u.y=0,t(u),l>2))for(i=e[2],Ru(r,u,i),t(i),Du(r,i),r._pack_prev=i,Du(i,u),u=r._pack_next,o=3;l>o;o++){Ru(r,u,i=e[o]);var p=0,d=1,v=1;for(a=u._pack_next;a!==u;a=a._pack_next,d++)if(Lu(a,i)){p=1;break}if(1==p)for(c=r._pack_prev;c!==a._pack_prev&&!Lu(c,i);c=c._pack_prev,v++);p?(v>d||d==v&&u.r<r.r?ju(r,u=a):ju(r=c,u),o--):(Du(r,i),u=i,t(i))}var m=(s+f)/2,y=(h+g)/2,M=0;for(o=0;l>o;o++)i=e[o],i.x-=m,i.y-=y,M=Math.max(M,i.r+Math.sqrt(i.x*i.x+i.y*i.y));n.r=M,e.forEach(Pu)}}function Fu(n){n._pack_next=n._pack_prev=n}function Pu(n){delete n._pack_next,delete n._pack_prev}function Ou(n,t,e,r){var u=n.children;if(n.x=t+=r*n.x,n.y=e+=r*n.y,n.r*=r,u)for(var i=-1,o=u.length;++i<o;)Ou(u[i],t,e,r)}function Ru(n,t,e){var r=n.r+e.r,u=t.x-n.x,i=t.y-n.y;if(r&&(u||i)){var o=t.r+e.r,a=u*u+i*i;o*=o,r*=r;var c=.5+(r-o)/(2*a),l=Math.sqrt(Math.max(0,2*o*(r+a)-(r-=a)*r-o*o))/(2*a);e.x=n.x+c*u+l*i,e.y=n.y+c*i-l*u}else e.x=n.x+r,e.y=n.y}function Yu(n){return 1+mo.max(n,function(n){return n.y})}function Iu(n){return n.reduce(function(n,t){return n+t.x},0)/n.length}function Uu(n){var t=n.children;return t&&t.length?Uu(t[0]):n}function Zu(n){var t,e=n.children;return e&&(t=e.length)?Zu(e[t-1]):n}function Vu(n){return{x:n.x,y:n.y,dx:n.dx,dy:n.dy}}function Xu(n,t){var e=n.x+t[3],r=n.y+t[0],u=n.dx-t[1]-t[3],i=n.dy-t[0]-t[2];return 0>u&&(e+=u/2,u=0),0>i&&(r+=i/2,i=0),{x:e,y:r,dx:u,dy:i}}function $u(n){var t=n[0],e=n[n.length-1];return e>t?[t,e]:[e,t]}function Bu(n){return n.rangeExtent?n.rangeExtent():$u(n.range())}function Wu(n,t,e,r){var u=e(n[0],n[1]),i=r(t[0],t[1]);return function(n){return i(u(n))}}function Ju(n,t){var e,r=0,u=n.length-1,i=n[r],o=n[u];return i>o&&(e=r,r=u,u=e,e=i,i=o,o=e),n[r]=t.floor(i),n[u]=t.ceil(o),n}function Gu(n){return n?{floor:function(t){return Math.floor(t/n)*n},ceil:function(t){return Math.ceil(t/n)*n}}:Nc}function Ku(n,t,e,r){var u=[],i=[],o=0,a=Math.min(n.length,t.length)-1;for(n[a]<n[0]&&(n=n.slice().reverse(),t=t.slice().reverse());++o<=a;)u.push(e(n[o-1],n[o])),i.push(r(t[o-1],t[o]));return function(t){var e=mo.bisect(n,t,1,a)-1;return i[e](u[e](t))}}function Qu(n,t,e,r){function u(){var u=Math.min(n.length,t.length)>2?Ku:Wu,c=r?Jr:Wr;return o=u(n,t,c,e),a=u(t,n,c,Er),i}function i(n){return o(n)}var o,a;return i.invert=function(n){return a(n)},i.domain=function(t){return arguments.length?(n=t.map(Number),u()):n},i.range=function(n){return arguments.length?(t=n,u()):t},i.rangeRound=function(n){return i.range(n).interpolate(Ur)},i.clamp=function(n){return arguments.length?(r=n,u()):r},i.interpolate=function(n){return arguments.length?(e=n,u()):e},i.ticks=function(t){return ri(n,t)},i.tickFormat=function(t,e){return ui(n,t,e)},i.nice=function(t){return ti(n,t),u()},i.copy=function(){return Qu(n,t,e,r)},u()}function ni(n,t){return mo.rebind(n,t,\"range\",\"rangeRound\",\"interpolate\",\"clamp\")}function ti(n,t){return Ju(n,Gu(ei(n,t)[2]))}function ei(n,t){null==t&&(t=10);var e=$u(n),r=e[1]-e[0],u=Math.pow(10,Math.floor(Math.log(r/t)/Math.LN10)),i=t/r*u;return.15>=i?u*=10:.35>=i?u*=5:.75>=i&&(u*=2),e[0]=Math.ceil(e[0]/u)*u,e[1]=Math.floor(e[1]/u)*u+.5*u,e[2]=u,e}function ri(n,t){return mo.range.apply(mo,ei(n,t))}function ui(n,t,e){var r=-Math.floor(Math.log(ei(n,t)[2])/Math.LN10+.01);return mo.format(e?e.replace(Ea,function(n,t,e,u,i,o,a,c,l,s){return[t,e,u,i,o,a,c,l||\".\"+(r-2*(\"%\"===s)),s].join(\"\")}):\",.\"+r+\"f\")}function ii(n,t,e,r){function u(n){return(e?Math.log(0>n?0:n):-Math.log(n>0?0:-n))/Math.log(t)}function i(n){return e?Math.pow(t,n):-Math.pow(t,-n)}function o(t){return n(u(t))}return o.invert=function(t){return i(n.invert(t))},o.domain=function(t){return arguments.length?(e=t[0]>=0,n.domain((r=t.map(Number)).map(u)),o):r},o.base=function(e){return arguments.length?(t=+e,n.domain(r.map(u)),o):t},o.nice=function(){var t=Ju(r.map(u),e?Math:qc);return n.domain(t),r=t.map(i),o},o.ticks=function(){var n=$u(r),o=[],a=n[0],c=n[1],l=Math.floor(u(a)),s=Math.ceil(u(c)),f=t%1?2:t;if(isFinite(s-l)){if(e){for(;s>l;l++)for(var h=1;f>h;h++)o.push(i(l)*h);o.push(i(l))}else for(o.push(i(l));l++<s;)for(var h=f-1;h>0;h--)o.push(i(l)*h);for(l=0;o[l]<a;l++);for(s=o.length;o[s-1]>c;s--);o=o.slice(l,s)}return o},o.tickFormat=function(n,t){if(!arguments.length)return Tc;arguments.length<2?t=Tc:\"function\"!=typeof t&&(t=mo.format(t));var r,a=Math.max(.1,n/o.ticks().length),c=e?(r=1e-12,Math.ceil):(r=-1e-12,Math.floor);return function(n){return n/i(c(u(n)+r))<=a?t(n):\"\"}},o.copy=function(){return ii(n.copy(),t,e,r)},ni(o,n)}function oi(n,t,e){function r(t){return n(u(t))}var u=ai(t),i=ai(1/t);return r.invert=function(t){return i(n.invert(t))},r.domain=function(t){return arguments.length?(n.domain((e=t.map(Number)).map(u)),r):e},r.ticks=function(n){return ri(e,n)},r.tickFormat=function(n,t){return ui(e,n,t)},r.nice=function(n){return r.domain(ti(e,n))},r.exponent=function(o){return arguments.length?(u=ai(t=o),i=ai(1/t),n.domain(e.map(u)),r):t},r.copy=function(){return oi(n.copy(),t,e)},ni(r,n)}function ai(n){return function(t){return 0>t?-Math.pow(-t,n):Math.pow(t,n)}}function ci(n,t){function e(e){return o[((i.get(e)||\"range\"===t.t&&i.set(e,n.push(e)))-1)%o.length]}function r(t,e){return mo.range(n.length).map(function(n){return t+e*n})}var i,o,a;return e.domain=function(r){if(!arguments.length)return n;n=[],i=new u;for(var o,a=-1,c=r.length;++a<c;)i.has(o=r[a])||i.set(o,n.push(o));return e[t.t].apply(e,t.a)},e.range=function(n){return arguments.length?(o=n,a=0,t={t:\"range\",a:arguments},e):o},e.rangePoints=function(u,i){arguments.length<2&&(i=0);var c=u[0],l=u[1],s=(l-c)/(Math.max(1,n.length-1)+i);return o=r(n.length<2?(c+l)/2:c+s*i/2,s),a=0,t={t:\"rangePoints\",a:arguments},e},e.rangeBands=function(u,i,c){arguments.length<2&&(i=0),arguments.length<3&&(c=i);var l=u[1]<u[0],s=u[l-0],f=u[1-l],h=(f-s)/(n.length-i+2*c);return o=r(s+h*c,h),l&&o.reverse(),a=h*(1-i),t={t:\"rangeBands\",a:arguments},e},e.rangeRoundBands=function(u,i,c){arguments.length<2&&(i=0),arguments.length<3&&(c=i);var l=u[1]<u[0],s=u[l-0],f=u[1-l],h=Math.floor((f-s)/(n.length-i+2*c)),g=f-s-(n.length-i)*h;return o=r(s+Math.round(g/2),h),l&&o.reverse(),a=Math.round(h*(1-i)),t={t:\"rangeRoundBands\",a:arguments},e},e.rangeBand=function(){return a},e.rangeExtent=function(){return $u(t.a[0])},e.copy=function(){return ci(n,t)},e.domain(n)}function li(n,t){function e(){var e=0,i=t.length;for(u=[];++e<i;)u[e-1]=mo.quantile(n,e/i);return r}function r(n){return isNaN(n=+n)?void 0:t[mo.bisect(u,n)]}var u;return r.domain=function(t){return arguments.length?(n=t.filter(function(n){return!isNaN(n)}).sort(mo.ascending),e()):n},r.range=function(n){return arguments.length?(t=n,e()):t},r.quantiles=function(){return u},r.invertExtent=function(e){return e=t.indexOf(e),0>e?[0/0,0/0]:[e>0?u[e-1]:n[0],e<u.length?u[e]:n[n.length-1]]},r.copy=function(){return li(n,t)},e()}function si(n,t,e){function r(t){return e[Math.max(0,Math.min(o,Math.floor(i*(t-n))))]}function u(){return i=e.length/(t-n),o=e.length-1,r}var i,o;return r.domain=function(e){return arguments.length?(n=+e[0],t=+e[e.length-1],u()):[n,t]},r.range=function(n){return arguments.length?(e=n,u()):e},r.invertExtent=function(t){return t=e.indexOf(t),t=0>t?0/0:t/i+n,[t,t+1/i]},r.copy=function(){return si(n,t,e)},u()}function fi(n,t){function e(e){return e>=e?t[mo.bisect(n,e)]:void 0}return e.domain=function(t){return arguments.length?(n=t,e):n},e.range=function(n){return arguments.length?(t=n,e):t},e.invertExtent=function(e){return e=t.indexOf(e),[n[e-1],n[e]]},e.copy=function(){return fi(n,t)},e}function hi(n){function t(n){return+n}return t.invert=t,t.domain=t.range=function(e){return arguments.length?(n=e.map(t),t):n},t.ticks=function(t){return ri(n,t)},t.tickFormat=function(t,e){return ui(n,t,e)},t.copy=function(){return hi(n)},t}function gi(n){return n.innerRadius}function pi(n){return n.outerRadius}function di(n){return n.startAngle}function vi(n){return n.endAngle}function mi(n){for(var t,e,r,u=-1,i=n.length;++u<i;)t=n[u],e=t[0],r=t[1]+Lc,t[0]=e*Math.cos(r),t[1]=e*Math.sin(r);return n}function yi(n){function t(t){function c(){d.push(\"M\",a(n(m),f),s,l(n(v.reverse()),f),\"Z\")}for(var h,g,p,d=[],v=[],m=[],y=-1,M=t.length,x=pt(e),b=pt(u),_=e===r?function(){return g}:pt(r),w=u===i?function(){return p}:pt(i);++y<M;)o.call(this,h=t[y],y)?(v.push([g=+x.call(this,h,y),p=+b.call(this,h,y)]),m.push([+_.call(this,h,y),+w.call(this,h,y)])):v.length&&(c(),v=[],m=[]);return v.length&&c(),d.length?d.join(\"\"):null}var e=Ze,r=Ze,u=0,i=Ve,o=Vt,a=Xe,c=a.key,l=a,s=\"L\",f=.7;return t.x=function(n){return arguments.length?(e=r=n,t):r},t.x0=function(n){return arguments.length?(e=n,t):e},t.x1=function(n){return arguments.length?(r=n,t):r},t.y=function(n){return arguments.length?(u=i=n,t):i},t.y0=function(n){return arguments.length?(u=n,t):u},t.y1=function(n){return arguments.length?(i=n,t):i},t.defined=function(n){return arguments.length?(o=n,t):o},t.interpolate=function(n){return arguments.length?(c=\"function\"==typeof n?a=n:(a=hc.get(n)||Xe).key,l=a.reverse||a,s=a.closed?\"M\":\"L\",t):c},t.tension=function(n){return arguments.length?(f=n,t):f},t}function Mi(n){return n.radius}function xi(n){return[n.x,n.y]}function bi(n){return function(){var t=n.apply(this,arguments),e=t[0],r=t[1]+Lc;return[e*Math.cos(r),e*Math.sin(r)]}}function _i(){return 64}function wi(){return\"circle\"}function Si(n){var t=Math.sqrt(n/Bo);return\"M0,\"+t+\"A\"+t+\",\"+t+\" 0 1,1 0,\"+-t+\"A\"+t+\",\"+t+\" 0 1,1 0,\"+t+\"Z\"}function Ei(n,t){return Lo(n,Ic),n.id=t,n}function ki(n,t,e,r){var u=n.id;return N(n,\"function\"==typeof e?function(n,i,o){n.__transition__[u].tween.set(t,r(e.call(n,n.__data__,i,o)))}:(e=r(e),function(n){n.__transition__[u].tween.set(t,e)}))}function Ai(n){return null==n&&(n=\"\"),function(){this.textContent=n}}function Ni(n,t,e,r){var i=n.__transition__||(n.__transition__={active:0,count:0}),o=i[e];if(!o){var a=r.time;o=i[e]={tween:new u,time:a,ease:r.ease,delay:r.delay,duration:r.duration},++i.count,mo.timer(function(r){function u(r){return i.active>e?l():(i.active=e,o.event&&o.event.start.call(n,s,t),o.tween.forEach(function(e,r){(r=r.call(n,s,t))&&p.push(r)}),c(r)?1:(xt(c,0,a),void 0))}function c(r){if(i.active!==e)return l();for(var u=(r-h)/g,a=f(u),c=p.length;c>0;)p[--c].call(n,a);return u>=1?(o.event&&o.event.end.call(n,s,t),l()):void 0}function l(){return--i.count?delete i[e]:delete n.__transition__,1}var s=n.__data__,f=o.ease,h=o.delay,g=o.duration,p=[];return r>=h?u(r):(xt(u,h,a),void 0)},0,a)}}function Ti(n,t){n.attr(\"transform\",function(n){return\"translate(\"+t(n)+\",0)\"})}function qi(n,t){n.attr(\"transform\",function(n){return\"translate(0,\"+t(n)+\")\"})}function zi(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function Ci(n,t,e){function r(t){var e=n(t),r=i(e,1);return r-t>t-e?e:r}function u(e){return t(e=n(new Wc(e-1)),1),e}function i(n,e){return t(n=new Wc(+n),e),n}function o(n,r,i){var o=u(n),a=[];if(i>1)for(;r>o;)e(o)%i||a.push(new Date(+o)),t(o,1);else for(;r>o;)a.push(new Date(+o)),t(o,1);return a}function a(n,t,e){try{Wc=zi;var r=new zi;return r._=n,o(r,t,e)}finally{Wc=Date}}n.floor=n,n.round=r,n.ceil=u,n.offset=i,n.range=o;var c=n.utc=Di(n);return c.floor=c,c.round=Di(r),c.ceil=Di(u),c.offset=Di(i),c.range=a,n}function Di(n){return function(t,e){try{Wc=zi;var r=new zi;return r._=t,n(r,e)._}finally{Wc=Date}}}function ji(n){function t(t){for(var r,u,i,o=[],a=-1,c=0;++a<e;)37===n.charCodeAt(a)&&(o.push(n.substring(c,a)),null!=(u=pl[r=n.charAt(++a)])&&(r=n.charAt(++a)),(i=dl[r])&&(r=i(t,null==u?\"e\"===r?\" \":\"0\":u)),o.push(r),c=a+1);return o.push(n.substring(c,a)),o.join(\"\")}var e=n.length;return t.parse=function(t){var e={y:1900,m:0,d:1,H:0,M:0,S:0,L:0,Z:null},r=Li(e,n,t,0);if(r!=t.length)return null;\"p\"in e&&(e.H=e.H%12+12*e.p);var u=null!=e.Z&&Wc!==zi,i=new(u?zi:Wc);return\"j\"in e?i.setFullYear(e.y,0,e.j):\"w\"in e&&(\"W\"in e||\"U\"in e)?(i.setFullYear(e.y,0,1),i.setFullYear(e.y,0,\"W\"in e?(e.w+6)%7+7*e.W-(i.getDay()+5)%7:e.w+7*e.U-(i.getDay()+6)%7)):i.setFullYear(e.y,e.m,e.d),i.setHours(e.H+Math.floor(e.Z/100),e.M+e.Z%100,e.S,e.L),u?i._:i},t.toString=function(){return n},t}function Li(n,t,e,r){for(var u,i,o,a=0,c=t.length,l=e.length;c>a;){if(r>=l)return-1;if(u=t.charCodeAt(a++),37===u){if(o=t.charAt(a++),i=vl[o in pl?t.charAt(a++):o],!i||(r=i(n,e,r))<0)return-1}else if(u!=e.charCodeAt(r++))return-1}return r}function Hi(n){return new RegExp(\"^(?:\"+n.map(mo.requote).join(\"|\")+\")\",\"i\")}function Fi(n){for(var t=new u,e=-1,r=n.length;++e<r;)t.set(n[e].toLowerCase(),e);return t}function Pi(n,t,e){var r=0>n?\"-\":\"\",u=(r?-n:n)+\"\",i=u.length;return r+(e>i?new Array(e-i+1).join(t)+u:u)}function Oi(n,t,e){al.lastIndex=0;var r=al.exec(t.substring(e));return r?(n.w=cl.get(r[0].toLowerCase()),e+r[0].length):-1}function Ri(n,t,e){il.lastIndex=0;var r=il.exec(t.substring(e));return r?(n.w=ol.get(r[0].toLowerCase()),e+r[0].length):-1}function Yi(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+1));return r?(n.w=+r[0],e+r[0].length):-1}function Ii(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e));return r?(n.U=+r[0],e+r[0].length):-1}function Ui(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e));return r?(n.W=+r[0],e+r[0].length):-1}function Zi(n,t,e){fl.lastIndex=0;var r=fl.exec(t.substring(e));return r?(n.m=hl.get(r[0].toLowerCase()),e+r[0].length):-1}function Vi(n,t,e){ll.lastIndex=0;var r=ll.exec(t.substring(e));return r?(n.m=sl.get(r[0].toLowerCase()),e+r[0].length):-1}function Xi(n,t,e){return Li(n,dl.c.toString(),t,e)}function $i(n,t,e){return Li(n,dl.x.toString(),t,e)}function Bi(n,t,e){return Li(n,dl.X.toString(),t,e)}function Wi(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+4));return r?(n.y=+r[0],e+r[0].length):-1}function Ji(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.y=Ki(+r[0]),e+r[0].length):-1}function Gi(n,t,e){return/^[+-]\\d{4}$/.test(t=t.substring(e,e+5))?(n.Z=+t,e+5):-1}function Ki(n){return n+(n>68?1900:2e3)}function Qi(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.m=r[0]-1,e+r[0].length):-1}function no(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.d=+r[0],e+r[0].length):-1}function to(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+3));return r?(n.j=+r[0],e+r[0].length):-1}function eo(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.H=+r[0],e+r[0].length):-1}function ro(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.M=+r[0],e+r[0].length):-1}function uo(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+2));return r?(n.S=+r[0],e+r[0].length):-1}function io(n,t,e){ml.lastIndex=0;var r=ml.exec(t.substring(e,e+3));return r?(n.L=+r[0],e+r[0].length):-1}function oo(n,t,e){var r=yl.get(t.substring(e,e+=2).toLowerCase());return null==r?-1:(n.p=r,e)}function ao(n){var t=n.getTimezoneOffset(),e=t>0?\"-\":\"+\",r=~~(Math.abs(t)/60),u=Math.abs(t)%60;return e+Pi(r,\"0\",2)+Pi(u,\"0\",2)}function co(n,t,e){gl.lastIndex=0;var r=gl.exec(t.substring(e,e+1));return r?e+r[0].length:-1}function lo(n){function t(n){try{Wc=zi;var t=new Wc;return t._=n,e(t)}finally{Wc=Date}}var e=ji(n);return t.parse=function(n){try{Wc=zi;var t=e.parse(n);return t&&t._}finally{Wc=Date}},t.toString=e.toString,t}function so(n){return n.toISOString()}function fo(n,t,e){function r(t){return n(t)}function u(n,e){var r=n[1]-n[0],u=r/e,i=mo.bisect(xl,u);return i==xl.length?[t.year,ei(n.map(function(n){return n/31536e6}),e)[2]]:i?t[u/xl[i-1]<xl[i]/u?i-1:i]:[Sl,ei(n,e)[2]]}return r.invert=function(t){return ho(n.invert(t))},r.domain=function(t){return arguments.length?(n.domain(t),r):n.domain().map(ho)},r.nice=function(n,t){function e(e){return!isNaN(e)&&!n.range(e,ho(+e+1),t).length}var i=r.domain(),o=$u(i),a=null==n?u(o,10):\"number\"==typeof n&&u(o,n);return a&&(n=a[0],t=a[1]),r.domain(Ju(i,t>1?{floor:function(t){for(;e(t=n.floor(t));)t=ho(t-1);return t},ceil:function(t){for(;e(t=n.ceil(t));)t=ho(+t+1);return t}}:n))},r.ticks=function(n,t){var e=$u(r.domain()),i=null==n?u(e,10):\"number\"==typeof n?u(e,n):!n.range&&[{range:n},t];return i&&(n=i[0],t=i[1]),n.range(e[0],ho(+e[1]+1),1>t?1:t)},r.tickFormat=function(){return e},r.copy=function(){return fo(n.copy(),t,e)},ni(r,n)}function ho(n){return new Date(n)}function go(n){return function(t){for(var e=n.length-1,r=n[e];!r[1](t);)r=n[--e];return r[0](t)}}function po(n){return JSON.parse(n.responseText)}function vo(n){var t=xo.createRange();return t.selectNode(xo.body),t.createContextualFragment(n.responseText)}var mo={version:\"3.3.5\"};Date.now||(Date.now=function(){return+new Date});var yo=[].slice,Mo=function(n){return yo.call(n)},xo=document,bo=xo.documentElement,_o=window;try{Mo(bo.childNodes)[0].nodeType}catch(wo){Mo=function(n){for(var t=n.length,e=new Array(t);t--;)e[t]=n[t];return e}}try{xo.createElement(\"div\").style.setProperty(\"opacity\",0,\"\")}catch(So){var Eo=_o.Element.prototype,ko=Eo.setAttribute,Ao=Eo.setAttributeNS,No=_o.CSSStyleDeclaration.prototype,To=No.setProperty;Eo.setAttribute=function(n,t){ko.call(this,n,t+\"\")},Eo.setAttributeNS=function(n,t,e){Ao.call(this,n,t,e+\"\")},No.setProperty=function(n,t,e){To.call(this,n,t+\"\",e)}}mo.ascending=function(n,t){return t>n?-1:n>t?1:n>=t?0:0/0},mo.descending=function(n,t){return n>t?-1:t>n?1:t>=n?0:0/0},mo.min=function(n,t){var e,r,u=-1,i=n.length;if(1===arguments.length){for(;++u<i&&!(null!=(e=n[u])&&e>=e);)e=void 0;for(;++u<i;)null!=(r=n[u])&&e>r&&(e=r)}else{for(;++u<i&&!(null!=(e=t.call(n,n[u],u))&&e>=e);)e=void 0;for(;++u<i;)null!=(r=t.call(n,n[u],u))&&e>r&&(e=r)}return e},mo.max=function(n,t){var e,r,u=-1,i=n.length;if(1===arguments.length){for(;++u<i&&!(null!=(e=n[u])&&e>=e);)e=void 0;for(;++u<i;)null!=(r=n[u])&&r>e&&(e=r)}else{for(;++u<i&&!(null!=(e=t.call(n,n[u],u))&&e>=e);)e=void 0;for(;++u<i;)null!=(r=t.call(n,n[u],u))&&r>e&&(e=r)}return e},mo.extent=function(n,t){var e,r,u,i=-1,o=n.length;if(1===arguments.length){for(;++i<o&&!(null!=(e=u=n[i])&&e>=e);)e=u=void 0;for(;++i<o;)null!=(r=n[i])&&(e>r&&(e=r),r>u&&(u=r))}else{for(;++i<o&&!(null!=(e=u=t.call(n,n[i],i))&&e>=e);)e=void 0;for(;++i<o;)null!=(r=t.call(n,n[i],i))&&(e>r&&(e=r),r>u&&(u=r))}return[e,u]},mo.sum=function(n,t){var e,r=0,u=n.length,i=-1;if(1===arguments.length)for(;++i<u;)isNaN(e=+n[i])||(r+=e);else for(;++i<u;)isNaN(e=+t.call(n,n[i],i))||(r+=e);return r},mo.mean=function(t,e){var r,u=t.length,i=0,o=-1,a=0;if(1===arguments.length)for(;++o<u;)n(r=t[o])&&(i+=(r-i)/++a);else for(;++o<u;)n(r=e.call(t,t[o],o))&&(i+=(r-i)/++a);return a?i:void 0},mo.quantile=function(n,t){var e=(n.length-1)*t+1,r=Math.floor(e),u=+n[r-1],i=e-r;return i?u+i*(n[r]-u):u},mo.median=function(t,e){return arguments.length>1&&(t=t.map(e)),t=t.filter(n),t.length?mo.quantile(t.sort(mo.ascending),.5):void 0},mo.bisector=function(n){return{left:function(t,e,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var i=r+u>>>1;n.call(t,t[i],i)<e?r=i+1:u=i}return r},right:function(t,e,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var i=r+u>>>1;e<n.call(t,t[i],i)?u=i:r=i+1}return r}}};var qo=mo.bisector(function(n){return n});mo.bisectLeft=qo.left,mo.bisect=mo.bisectRight=qo.right,mo.shuffle=function(n){for(var t,e,r=n.length;r;)e=0|Math.random()*r--,t=n[r],n[r]=n[e],n[e]=t;return n},mo.permute=function(n,t){for(var e=t.length,r=new Array(e);e--;)r[e]=n[t[e]];return r},mo.pairs=function(n){for(var t,e=0,r=n.length-1,u=n[0],i=new Array(0>r?0:r);r>e;)i[e]=[t=u,u=n[++e]];return i},mo.zip=function(){if(!(u=arguments.length))return[];for(var n=-1,e=mo.min(arguments,t),r=new Array(e);++n<e;)for(var u,i=-1,o=r[n]=new Array(u);++i<u;)o[i]=arguments[i][n];return r},mo.transpose=function(n){return mo.zip.apply(mo,n)},mo.keys=function(n){var t=[];for(var e in n)t.push(e);return t},mo.values=function(n){var t=[];for(var e in n)t.push(n[e]);return t},mo.entries=function(n){var t=[];\n",
"for(var e in n)t.push({key:e,value:n[e]});return t},mo.merge=function(n){return Array.prototype.concat.apply([],n)},mo.range=function(n,t,r){if(arguments.length<3&&(r=1,arguments.length<2&&(t=n,n=0)),1/0===(t-n)/r)throw new Error(\"infinite range\");var u,i=[],o=e(Math.abs(r)),a=-1;if(n*=o,t*=o,r*=o,0>r)for(;(u=n+r*++a)>t;)i.push(u/o);else for(;(u=n+r*++a)<t;)i.push(u/o);return i},mo.map=function(n){var t=new u;if(n instanceof u)n.forEach(function(n,e){t.set(n,e)});else for(var e in n)t.set(e,n[e]);return t},r(u,{has:function(n){return zo+n in this},get:function(n){return this[zo+n]},set:function(n,t){return this[zo+n]=t},remove:function(n){return n=zo+n,n in this&&delete this[n]},keys:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},values:function(){var n=[];return this.forEach(function(t,e){n.push(e)}),n},entries:function(){var n=[];return this.forEach(function(t,e){n.push({key:t,value:e})}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===Co&&n.call(this,t.substring(1),this[t])}});var zo=\"\\0\",Co=zo.charCodeAt(0);mo.nest=function(){function n(t,a,c){if(c>=o.length)return r?r.call(i,a):e?a.sort(e):a;for(var l,s,f,h,g=-1,p=a.length,d=o[c++],v=new u;++g<p;)(h=v.get(l=d(s=a[g])))?h.push(s):v.set(l,[s]);return t?(s=t(),f=function(e,r){s.set(e,n(t,r,c))}):(s={},f=function(e,r){s[e]=n(t,r,c)}),v.forEach(f),s}function t(n,e){if(e>=o.length)return n;var r=[],u=a[e++];return n.forEach(function(n,u){r.push({key:n,values:t(u,e)})}),u?r.sort(function(n,t){return u(n.key,t.key)}):r}var e,r,i={},o=[],a=[];return i.map=function(t,e){return n(e,t,0)},i.entries=function(e){return t(n(mo.map,e,0),0)},i.key=function(n){return o.push(n),i},i.sortKeys=function(n){return a[o.length-1]=n,i},i.sortValues=function(n){return e=n,i},i.rollup=function(n){return r=n,i},i},mo.set=function(n){var t=new i;if(n)for(var e=0,r=n.length;r>e;++e)t.add(n[e]);return t},r(i,{has:function(n){return zo+n in this},add:function(n){return this[zo+n]=!0,n},remove:function(n){return n=zo+n,n in this&&delete this[n]},values:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===Co&&n.call(this,t.substring(1))}}),mo.behavior={},mo.rebind=function(n,t){for(var e,r=1,u=arguments.length;++r<u;)n[e=arguments[r]]=o(n,t,t[e]);return n};var Do=[\"webkit\",\"ms\",\"moz\",\"Moz\",\"o\",\"O\"];mo.dispatch=function(){for(var n=new l,t=-1,e=arguments.length;++t<e;)n[arguments[t]]=s(n);return n},l.prototype.on=function(n,t){var e=n.indexOf(\".\"),r=\"\";if(e>=0&&(r=n.substring(e+1),n=n.substring(0,e)),n)return arguments.length<2?this[n].on(r):this[n].on(r,t);if(2===arguments.length){if(null==t)for(n in this)this.hasOwnProperty(n)&&this[n].on(r,null);return this}},mo.event=null,mo.requote=function(n){return n.replace(jo,\"\\\\$&\")};var jo=/[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g,Lo={}.__proto__?function(n,t){n.__proto__=t}:function(n,t){for(var e in t)n[e]=t[e]},Ho=function(n,t){return t.querySelector(n)},Fo=function(n,t){return t.querySelectorAll(n)},Po=bo[a(bo,\"matchesSelector\")],Oo=function(n,t){return Po.call(n,t)};\"function\"==typeof Sizzle&&(Ho=function(n,t){return Sizzle(n,t)[0]||null},Fo=function(n,t){return Sizzle.uniqueSort(Sizzle(n,t))},Oo=Sizzle.matchesSelector),mo.selection=function(){return Uo};var Ro=mo.selection.prototype=[];Ro.select=function(n){var t,e,r,u,i=[];n=d(n);for(var o=-1,a=this.length;++o<a;){i.push(t=[]),t.parentNode=(r=this[o]).parentNode;for(var c=-1,l=r.length;++c<l;)(u=r[c])?(t.push(e=n.call(u,u.__data__,c,o)),e&&\"__data__\"in u&&(e.__data__=u.__data__)):t.push(null)}return p(i)},Ro.selectAll=function(n){var t,e,r=[];n=v(n);for(var u=-1,i=this.length;++u<i;)for(var o=this[u],a=-1,c=o.length;++a<c;)(e=o[a])&&(r.push(t=Mo(n.call(e,e.__data__,a,u))),t.parentNode=e);return p(r)};var Yo={svg:\"http://www.w3.org/2000/svg\",xhtml:\"http://www.w3.org/1999/xhtml\",xlink:\"http://www.w3.org/1999/xlink\",xml:\"http://www.w3.org/XML/1998/namespace\",xmlns:\"http://www.w3.org/2000/xmlns/\"};mo.ns={prefix:Yo,qualify:function(n){var t=n.indexOf(\":\"),e=n;return t>=0&&(e=n.substring(0,t),n=n.substring(t+1)),Yo.hasOwnProperty(e)?{space:Yo[e],local:n}:n}},Ro.attr=function(n,t){if(arguments.length<2){if(\"string\"==typeof n){var e=this.node();return n=mo.ns.qualify(n),n.local?e.getAttributeNS(n.space,n.local):e.getAttribute(n)}for(t in n)this.each(m(t,n[t]));return this}return this.each(m(n,t))},Ro.classed=function(n,t){if(arguments.length<2){if(\"string\"==typeof n){var e=this.node(),r=(n=n.trim().split(/^|\\s+/g)).length,u=-1;if(t=e.classList){for(;++u<r;)if(!t.contains(n[u]))return!1}else for(t=e.getAttribute(\"class\");++u<r;)if(!M(n[u]).test(t))return!1;return!0}for(t in n)this.each(x(t,n[t]));return this}return this.each(x(n,t))},Ro.style=function(n,t,e){var r=arguments.length;if(3>r){if(\"string\"!=typeof n){2>r&&(t=\"\");for(e in n)this.each(_(e,n[e],t));return this}if(2>r)return _o.getComputedStyle(this.node(),null).getPropertyValue(n);e=\"\"}return this.each(_(n,t,e))},Ro.property=function(n,t){if(arguments.length<2){if(\"string\"==typeof n)return this.node()[n];for(t in n)this.each(w(t,n[t]));return this}return this.each(w(n,t))},Ro.text=function(n){return arguments.length?this.each(\"function\"==typeof n?function(){var t=n.apply(this,arguments);this.textContent=null==t?\"\":t}:null==n?function(){this.textContent=\"\"}:function(){this.textContent=n}):this.node().textContent},Ro.html=function(n){return arguments.length?this.each(\"function\"==typeof n?function(){var t=n.apply(this,arguments);this.innerHTML=null==t?\"\":t}:null==n?function(){this.innerHTML=\"\"}:function(){this.innerHTML=n}):this.node().innerHTML},Ro.append=function(n){return n=S(n),this.select(function(){return this.appendChild(n.apply(this,arguments))})},Ro.insert=function(n,t){return n=S(n),t=d(t),this.select(function(){return this.insertBefore(n.apply(this,arguments),t.apply(this,arguments))})},Ro.remove=function(){return this.each(function(){var n=this.parentNode;n&&n.removeChild(this)})},Ro.data=function(n,t){function e(n,e){var r,i,o,a=n.length,f=e.length,h=Math.min(a,f),g=new Array(f),p=new Array(f),d=new Array(a);if(t){var v,m=new u,y=new u,M=[];for(r=-1;++r<a;)v=t.call(i=n[r],i.__data__,r),m.has(v)?d[r]=i:m.set(v,i),M.push(v);for(r=-1;++r<f;)v=t.call(e,o=e[r],r),(i=m.get(v))?(g[r]=i,i.__data__=o):y.has(v)||(p[r]=E(o)),y.set(v,o),m.remove(v);for(r=-1;++r<a;)m.has(M[r])&&(d[r]=n[r])}else{for(r=-1;++r<h;)i=n[r],o=e[r],i?(i.__data__=o,g[r]=i):p[r]=E(o);for(;f>r;++r)p[r]=E(e[r]);for(;a>r;++r)d[r]=n[r]}p.update=g,p.parentNode=g.parentNode=d.parentNode=n.parentNode,c.push(p),l.push(g),s.push(d)}var r,i,o=-1,a=this.length;if(!arguments.length){for(n=new Array(a=(r=this[0]).length);++o<a;)(i=r[o])&&(n[o]=i.__data__);return n}var c=T([]),l=p([]),s=p([]);if(\"function\"==typeof n)for(;++o<a;)e(r=this[o],n.call(r,r.parentNode.__data__,o));else for(;++o<a;)e(r=this[o],n);return l.enter=function(){return c},l.exit=function(){return s},l},Ro.datum=function(n){return arguments.length?this.property(\"__data__\",n):this.property(\"__data__\")},Ro.filter=function(n){var t,e,r,u=[];\"function\"!=typeof n&&(n=k(n));for(var i=0,o=this.length;o>i;i++){u.push(t=[]),t.parentNode=(e=this[i]).parentNode;for(var a=0,c=e.length;c>a;a++)(r=e[a])&&n.call(r,r.__data__,a)&&t.push(r)}return p(u)},Ro.order=function(){for(var n=-1,t=this.length;++n<t;)for(var e,r=this[n],u=r.length-1,i=r[u];--u>=0;)(e=r[u])&&(i&&i!==e.nextSibling&&i.parentNode.insertBefore(e,i),i=e);return this},Ro.sort=function(n){n=A.apply(this,arguments);for(var t=-1,e=this.length;++t<e;)this[t].sort(n);return this.order()},Ro.each=function(n){return N(this,function(t,e,r){n.call(t,t.__data__,e,r)})},Ro.call=function(n){var t=Mo(arguments);return n.apply(t[0]=this,t),this},Ro.empty=function(){return!this.node()},Ro.node=function(){for(var n=0,t=this.length;t>n;n++)for(var e=this[n],r=0,u=e.length;u>r;r++){var i=e[r];if(i)return i}return null},Ro.size=function(){var n=0;return this.each(function(){++n}),n};var Io=[];mo.selection.enter=T,mo.selection.enter.prototype=Io,Io.append=Ro.append,Io.empty=Ro.empty,Io.node=Ro.node,Io.call=Ro.call,Io.size=Ro.size,Io.select=function(n){for(var t,e,r,u,i,o=[],a=-1,c=this.length;++a<c;){r=(u=this[a]).update,o.push(t=[]),t.parentNode=u.parentNode;for(var l=-1,s=u.length;++l<s;)(i=u[l])?(t.push(r[l]=e=n.call(u.parentNode,i.__data__,l,a)),e.__data__=i.__data__):t.push(null)}return p(o)},Io.insert=function(n,t){return arguments.length<2&&(t=q(this)),Ro.insert.call(this,n,t)},Ro.transition=function(){for(var n,t,e=Pc||++Uc,r=[],u=Oc||{time:Date.now(),ease:Cr,delay:0,duration:250},i=-1,o=this.length;++i<o;){r.push(n=[]);for(var a=this[i],c=-1,l=a.length;++c<l;)(t=a[c])&&Ni(t,c,e,u),n.push(t)}return Ei(r,e)},Ro.interrupt=function(){return this.each(z)},mo.select=function(n){var t=[\"string\"==typeof n?Ho(n,xo):n];return t.parentNode=bo,p([t])},mo.selectAll=function(n){var t=Mo(\"string\"==typeof n?Fo(n,xo):n);return t.parentNode=bo,p([t])};var Uo=mo.select(bo);Ro.on=function(n,t,e){var r=arguments.length;if(3>r){if(\"string\"!=typeof n){2>r&&(t=!1);for(e in n)this.each(C(e,n[e],t));return this}if(2>r)return(r=this.node()[\"__on\"+n])&&r._;e=!1}return this.each(C(n,t,e))};var Zo=mo.map({mouseenter:\"mouseover\",mouseleave:\"mouseout\"});Zo.forEach(function(n){\"on\"+n in xo&&Zo.remove(n)});var Vo=a(bo.style,\"userSelect\"),Xo=0;mo.mouse=function(n){return H(n,h())};var $o=/WebKit/.test(_o.navigator.userAgent)?-1:0;mo.touches=function(n,t){return arguments.length<2&&(t=h().touches),t?Mo(t).map(function(t){var e=H(n,t);return e.identifier=t.identifier,e}):[]},mo.behavior.drag=function(){function n(){this.on(\"mousedown.drag\",o).on(\"touchstart.drag\",a)}function t(){return mo.event.changedTouches[0].identifier}function e(n,t){return mo.touches(n).filter(function(n){return n.identifier===t})[0]}function r(n,t,e,r){return function(){function o(){var n=t(s,g),e=n[0]-d[0],r=n[1]-d[1];v|=e|r,d=n,f({type:\"drag\",x:n[0]+c[0],y:n[1]+c[1],dx:e,dy:r})}function a(){m.on(e+\".\"+p,null).on(r+\".\"+p,null),y(v&&mo.event.target===h),f({type:\"dragend\"})}var c,l=this,s=l.parentNode,f=u.of(l,arguments),h=mo.event.target,g=n(),p=null==g?\"drag\":\"drag-\"+g,d=t(s,g),v=0,m=mo.select(_o).on(e+\".\"+p,o).on(r+\".\"+p,a),y=L();i?(c=i.apply(l,arguments),c=[c.x-d[0],c.y-d[1]]):c=[0,0],f({type:\"dragstart\"})}}var u=g(n,\"drag\",\"dragstart\",\"dragend\"),i=null,o=r(c,mo.mouse,\"mousemove\",\"mouseup\"),a=r(t,e,\"touchmove\",\"touchend\");return n.origin=function(t){return arguments.length?(i=t,n):i},mo.rebind(n,u,\"on\")};var Bo=Math.PI,Wo=1e-6,Jo=Wo*Wo,Go=Bo/180,Ko=180/Bo,Qo=Math.SQRT2,na=2,ta=4;mo.interpolateZoom=function(n,t){function e(n){var t=n*y;if(m){var e=Y(d),o=i/(na*h)*(e*I(Qo*t+d)-R(d));return[r+o*l,u+o*s,i*e/Y(Qo*t+d)]}return[r+n*l,u+n*s,i*Math.exp(Qo*t)]}var r=n[0],u=n[1],i=n[2],o=t[0],a=t[1],c=t[2],l=o-r,s=a-u,f=l*l+s*s,h=Math.sqrt(f),g=(c*c-i*i+ta*f)/(2*i*na*h),p=(c*c-i*i-ta*f)/(2*c*na*h),d=Math.log(Math.sqrt(g*g+1)-g),v=Math.log(Math.sqrt(p*p+1)-p),m=v-d,y=(m||Math.log(c/i))/Qo;return e.duration=1e3*y,e},mo.behavior.zoom=function(){function n(n){n.on(A,l).on(ua+\".zoom\",h).on(N,p).on(\"dblclick.zoom\",d).on(q,s)}function t(n){return[(n[0]-S.x)/S.k,(n[1]-S.y)/S.k]}function e(n){return[n[0]*S.k+S.x,n[1]*S.k+S.y]}function r(n){S.k=Math.max(k[0],Math.min(k[1],n))}function u(n,t){t=e(t),S.x+=n[0]-t[0],S.y+=n[1]-t[1]}function i(){b&&b.domain(x.range().map(function(n){return(n-S.x)/S.k}).map(x.invert)),w&&w.domain(_.range().map(function(n){return(n-S.y)/S.k}).map(_.invert))}function o(n){n({type:\"zoomstart\"})}function a(n){i(),n({type:\"zoom\",scale:S.k,translate:[S.x,S.y]})}function c(n){n({type:\"zoomend\"})}function l(){function n(){s=1,u(mo.mouse(r),h),a(i)}function e(){f.on(N,_o===r?p:null).on(T,null),g(s&&mo.event.target===l),c(i)}var r=this,i=C.of(r,arguments),l=mo.event.target,s=0,f=mo.select(_o).on(N,n).on(T,e),h=t(mo.mouse(r)),g=L();z.call(r),o(i)}function s(){function n(){var n=mo.touches(p);return g=S.k,n.forEach(function(n){n.identifier in v&&(v[n.identifier]=t(n))}),n}function e(){for(var t=mo.event.changedTouches,e=0,i=t.length;i>e;++e)v[t[e].identifier]=null;var o=n(),c=Date.now();if(1===o.length){if(500>c-M){var l=o[0],s=v[l.identifier];r(2*S.k),u(l,s),f(),a(d)}M=c}else if(o.length>1){var l=o[0],h=o[1],g=l[0]-h[0],p=l[1]-h[1];m=g*g+p*p}}function i(){for(var n,t,e,i,o=mo.touches(p),c=0,l=o.length;l>c;++c,i=null)if(e=o[c],i=v[e.identifier]){if(t)break;n=e,t=i}if(i){var s=(s=e[0]-n[0])*s+(s=e[1]-n[1])*s,f=m&&Math.sqrt(s/m);n=[(n[0]+e[0])/2,(n[1]+e[1])/2],t=[(t[0]+i[0])/2,(t[1]+i[1])/2],r(f*g)}M=null,u(n,t),a(d)}function h(){if(mo.event.touches.length){for(var t=mo.event.changedTouches,e=0,r=t.length;r>e;++e)delete v[t[e].identifier];for(var u in v)return void n()}_.on(x,null).on(b,null),w.on(A,l).on(q,s),E(),c(d)}var g,p=this,d=C.of(p,arguments),v={},m=0,y=mo.event.changedTouches[0].identifier,x=\"touchmove.zoom-\"+y,b=\"touchend.zoom-\"+y,_=mo.select(_o).on(x,i).on(b,h),w=mo.select(p).on(A,null).on(q,e),E=L();z.call(p),e(),o(d)}function h(){var n=C.of(this,arguments);y?clearTimeout(y):(z.call(this),o(n)),y=setTimeout(function(){y=null,c(n)},50),f();var e=m||mo.mouse(this);v||(v=t(e)),r(Math.pow(2,.002*ea())*S.k),u(e,v),a(n)}function p(){v=null}function d(){var n=C.of(this,arguments),e=mo.mouse(this),i=t(e),l=Math.log(S.k)/Math.LN2;o(n),r(Math.pow(2,mo.event.shiftKey?Math.ceil(l)-1:Math.floor(l)+1)),u(e,i),a(n),c(n)}var v,m,y,M,x,b,_,w,S={x:0,y:0,k:1},E=[960,500],k=ra,A=\"mousedown.zoom\",N=\"mousemove.zoom\",T=\"mouseup.zoom\",q=\"touchstart.zoom\",C=g(n,\"zoomstart\",\"zoom\",\"zoomend\");return n.event=function(n){n.each(function(){var n=C.of(this,arguments),t=S;Pc?mo.select(this).transition().each(\"start.zoom\",function(){S=this.__chart__||{x:0,y:0,k:1},o(n)}).tween(\"zoom:zoom\",function(){var e=E[0],r=E[1],u=e/2,i=r/2,o=mo.interpolateZoom([(u-S.x)/S.k,(i-S.y)/S.k,e/S.k],[(u-t.x)/t.k,(i-t.y)/t.k,e/t.k]);return function(t){var r=o(t),c=e/r[2];this.__chart__=S={x:u-r[0]*c,y:i-r[1]*c,k:c},a(n)}}).each(\"end.zoom\",function(){c(n)}):(this.__chart__=S,o(n),a(n),c(n))})},n.translate=function(t){return arguments.length?(S={x:+t[0],y:+t[1],k:S.k},i(),n):[S.x,S.y]},n.scale=function(t){return arguments.length?(S={x:S.x,y:S.y,k:+t},i(),n):S.k},n.scaleExtent=function(t){return arguments.length?(k=null==t?ra:[+t[0],+t[1]],n):k},n.center=function(t){return arguments.length?(m=t&&[+t[0],+t[1]],n):m},n.size=function(t){return arguments.length?(E=t&&[+t[0],+t[1]],n):E},n.x=function(t){return arguments.length?(b=t,x=t.copy(),S={x:0,y:0,k:1},n):b},n.y=function(t){return arguments.length?(w=t,_=t.copy(),S={x:0,y:0,k:1},n):w},mo.rebind(n,C,\"on\")};var ea,ra=[0,1/0],ua=\"onwheel\"in xo?(ea=function(){return-mo.event.deltaY*(mo.event.deltaMode?120:1)},\"wheel\"):\"onmousewheel\"in xo?(ea=function(){return mo.event.wheelDelta},\"mousewheel\"):(ea=function(){return-mo.event.detail},\"MozMousePixelScroll\");Z.prototype.toString=function(){return this.rgb()+\"\"},mo.hsl=function(n,t,e){return 1===arguments.length?n instanceof X?V(n.h,n.s,n.l):lt(\"\"+n,st,V):V(+n,+t,+e)};var ia=X.prototype=new Z;ia.brighter=function(n){return n=Math.pow(.7,arguments.length?n:1),V(this.h,this.s,this.l/n)},ia.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),V(this.h,this.s,n*this.l)},ia.rgb=function(){return $(this.h,this.s,this.l)},mo.hcl=function(n,t,e){return 1===arguments.length?n instanceof W?B(n.h,n.c,n.l):n instanceof K?nt(n.l,n.a,n.b):nt((n=ft((n=mo.rgb(n)).r,n.g,n.b)).l,n.a,n.b):B(+n,+t,+e)};var oa=W.prototype=new Z;oa.brighter=function(n){return B(this.h,this.c,Math.min(100,this.l+aa*(arguments.length?n:1)))},oa.darker=function(n){return B(this.h,this.c,Math.max(0,this.l-aa*(arguments.length?n:1)))},oa.rgb=function(){return J(this.h,this.c,this.l).rgb()},mo.lab=function(n,t,e){return 1===arguments.length?n instanceof K?G(n.l,n.a,n.b):n instanceof W?J(n.l,n.c,n.h):ft((n=mo.rgb(n)).r,n.g,n.b):G(+n,+t,+e)};var aa=18,ca=.95047,la=1,sa=1.08883,fa=K.prototype=new Z;fa.brighter=function(n){return G(Math.min(100,this.l+aa*(arguments.length?n:1)),this.a,this.b)},fa.darker=function(n){return G(Math.max(0,this.l-aa*(arguments.length?n:1)),this.a,this.b)},fa.rgb=function(){return Q(this.l,this.a,this.b)},mo.rgb=function(n,t,e){return 1===arguments.length?n instanceof at?ot(n.r,n.g,n.b):lt(\"\"+n,ot,$):ot(~~n,~~t,~~e)};var ha=at.prototype=new Z;ha.brighter=function(n){n=Math.pow(.7,arguments.length?n:1);var t=this.r,e=this.g,r=this.b,u=30;return t||e||r?(t&&u>t&&(t=u),e&&u>e&&(e=u),r&&u>r&&(r=u),ot(Math.min(255,~~(t/n)),Math.min(255,~~(e/n)),Math.min(255,~~(r/n)))):ot(u,u,u)},ha.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),ot(~~(n*this.r),~~(n*this.g),~~(n*this.b))},ha.hsl=function(){return st(this.r,this.g,this.b)},ha.toString=function(){return\"#\"+ct(this.r)+ct(this.g)+ct(this.b)};var ga=mo.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});ga.forEach(function(n,t){ga.set(n,ut(t))}),mo.functor=pt,mo.xhr=vt(dt),mo.dsv=function(n,t){function e(n,e,i){arguments.length<3&&(i=e,e=null);var o=mo.xhr(n,t,i);return o.row=function(n){return arguments.length?o.response(null==(e=n)?r:u(n)):e},o.row(e)}function r(n){return e.parse(n.responseText)}function u(n){return function(t){return e.parse(t.responseText,n)}}function o(t){return t.map(a).join(n)}function a(n){return c.test(n)?'\"'+n.replace(/\\\"/g,'\"\"')+'\"':n}var c=new RegExp('[\"'+n+\"\\n]\"),l=n.charCodeAt(0);return e.parse=function(n,t){var r;return e.parseRows(n,function(n,e){if(r)return r(n,e-1);var u=new Function(\"d\",\"return {\"+n.map(function(n,t){return JSON.stringify(n)+\": d[\"+t+\"]\"}).join(\",\")+\"}\");r=t?function(n,e){return t(u(n),e)}:u})},e.parseRows=function(n,t){function e(){if(s>=c)return o;if(u)return u=!1,i;var t=s;if(34===n.charCodeAt(t)){for(var e=t;e++<c;)if(34===n.charCodeAt(e)){if(34!==n.charCodeAt(e+1))break;++e}s=e+2;var r=n.charCodeAt(e+1);return 13===r?(u=!0,10===n.charCodeAt(e+2)&&++s):10===r&&(u=!0),n.substring(t+1,e).replace(/\"\"/g,'\"')}for(;c>s;){var r=n.charCodeAt(s++),a=1;if(10===r)u=!0;else if(13===r)u=!0,10===n.charCodeAt(s)&&(++s,++a);else if(r!==l)continue;return n.substring(t,s-a)}return n.substring(t)}for(var r,u,i={},o={},a=[],c=n.length,s=0,f=0;(r=e())!==o;){for(var h=[];r!==i&&r!==o;)h.push(r),r=e();(!t||(h=t(h,f++)))&&a.push(h)}return a},e.format=function(t){if(Array.isArray(t[0]))return e.formatRows(t);var r=new i,u=[];return t.forEach(function(n){for(var t in n)r.has(t)||u.push(r.add(t))}),[u.map(a).join(n)].concat(t.map(function(t){return u.map(function(n){return a(t[n])}).join(n)})).join(\"\\n\")},e.formatRows=function(n){return n.map(o).join(\"\\n\")},e},mo.csv=mo.dsv(\",\",\"text/csv\"),mo.tsv=mo.dsv(\"\t\",\"text/tab-separated-values\");var pa,da,va,ma,ya,Ma=_o[a(_o,\"requestAnimationFrame\")]||function(n){setTimeout(n,17)};mo.timer=function(n,t,e){var r=arguments.length;2>r&&(t=0),3>r&&(e=Date.now());var u=e+t,i={callback:n,time:u,next:null};da?da.next=i:pa=i,da=i,va||(ma=clearTimeout(ma),va=1,Ma(Mt))},mo.timer.flush=function(){bt(),_t()};var xa=\".\",ba=\",\",_a=[3,3],wa=\"$\",Sa=[\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"\\xb5\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"].map(wt);mo.formatPrefix=function(n,t){var e=0;return n&&(0>n&&(n*=-1),t&&(n=mo.round(n,St(n,t))),e=1+Math.floor(1e-12+Math.log(n)/Math.LN10),e=Math.max(-24,Math.min(24,3*Math.floor((0>=e?e+1:e-1)/3)))),Sa[8+e/3]},mo.round=function(n,t){return t?Math.round(n*(t=Math.pow(10,t)))/t:Math.round(n)},mo.format=function(n){var t=Ea.exec(n),e=t[1]||\" \",r=t[2]||\">\",u=t[3]||\"\",i=t[4]||\"\",o=t[5],a=+t[6],c=t[7],l=t[8],s=t[9],f=1,h=\"\",g=!1;switch(l&&(l=+l.substring(1)),(o||\"0\"===e&&\"=\"===r)&&(o=e=\"0\",r=\"=\",c&&(a-=Math.floor((a-1)/4))),s){case\"n\":c=!0,s=\"g\";break;case\"%\":f=100,h=\"%\",s=\"f\";break;case\"p\":f=100,h=\"%\",s=\"r\";break;case\"b\":case\"o\":case\"x\":case\"X\":\"#\"===i&&(i=\"0\"+s.toLowerCase());case\"c\":case\"d\":g=!0,l=0;break;case\"s\":f=-1,s=\"r\"}\"#\"===i?i=\"\":\"$\"===i&&(i=wa),\"r\"!=s||l||(s=\"g\"),null!=l&&(\"g\"==s?l=Math.max(1,Math.min(21,l)):(\"e\"==s||\"f\"==s)&&(l=Math.max(0,Math.min(20,l)))),s=ka.get(s)||Et;var p=o&&c;return function(n){if(g&&n%1)return\"\";var t=0>n||0===n&&0>1/n?(n=-n,\"-\"):u;if(0>f){var d=mo.formatPrefix(n,l);n=d.scale(n),h=d.symbol}else n*=f;n=s(n,l);var v=n.lastIndexOf(\".\"),m=0>v?n:n.substring(0,v),y=0>v?\"\":xa+n.substring(v+1);!o&&c&&(m=Aa(m));var M=i.length+m.length+y.length+(p?0:t.length),x=a>M?new Array(M=a-M+1).join(e):\"\";return p&&(m=Aa(x+m)),t+=i,n=m+y,(\"<\"===r?t+n+x:\">\"===r?x+t+n:\"^\"===r?x.substring(0,M>>=1)+t+n+x.substring(M):t+(p?n:x+n))+h}};var Ea=/(?:([^{])?([<>=^]))?([+\\- ])?([$#])?(0)?(\\d+)?(,)?(\\.-?\\d+)?([a-z%])?/i,ka=mo.map({b:function(n){return n.toString(2)},c:function(n){return String.fromCharCode(n)},o:function(n){return n.toString(8)},x:function(n){return n.toString(16)},X:function(n){return n.toString(16).toUpperCase()},g:function(n,t){return n.toPrecision(t)},e:function(n,t){return n.toExponential(t)},f:function(n,t){return n.toFixed(t)},r:function(n,t){return(n=mo.round(n,St(n,t))).toFixed(Math.max(0,Math.min(20,St(n*(1+1e-15),t))))}}),Aa=dt;if(_a){var Na=_a.length;Aa=function(n){for(var t=n.length,e=[],r=0,u=_a[0];t>0&&u>0;)e.push(n.substring(t-=u,t+u)),u=_a[r=(r+1)%Na];return e.reverse().join(ba)}}mo.geo={},kt.prototype={s:0,t:0,add:function(n){At(n,this.t,Ta),At(Ta.s,this.s,this),this.s?this.t+=Ta.t:this.s=Ta.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var Ta=new kt;mo.geo.stream=function(n,t){n&&qa.hasOwnProperty(n.type)?qa[n.type](n,t):Nt(n,t)};var qa={Feature:function(n,t){Nt(n.geometry,t)},FeatureCollection:function(n,t){for(var e=n.features,r=-1,u=e.length;++r<u;)Nt(e[r].geometry,t)}},za={Sphere:function(n,t){t.sphere()},Point:function(n,t){n=n.coordinates,t.point(n[0],n[1],n[2])},MultiPoint:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)n=e[r],t.point(n[0],n[1],n[2])},LineString:function(n,t){Tt(n.coordinates,t,0)},MultiLineString:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)Tt(e[r],t,0)},Polygon:function(n,t){qt(n.coordinates,t)},MultiPolygon:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)qt(e[r],t)},GeometryCollection:function(n,t){for(var e=n.geometries,r=-1,u=e.length;++r<u;)Nt(e[r],t)}};mo.geo.area=function(n){return Ca=0,mo.geo.stream(n,ja),Ca};var Ca,Da=new kt,ja={sphere:function(){Ca+=4*Bo},point:c,lineStart:c,lineEnd:c,polygonStart:function(){Da.reset(),ja.lineStart=zt},polygonEnd:function(){var n=2*Da;Ca+=0>n?4*Bo+n:n,ja.lineStart=ja.lineEnd=ja.point=c}};mo.geo.bounds=function(){function n(n,t){M.push(x=[s=n,h=n]),f>t&&(f=t),t>g&&(g=t)}function t(t,e){var r=Ct([t*Go,e*Go]);if(m){var u=jt(m,r),i=[u[1],-u[0],0],o=jt(i,u);Ft(o),o=Pt(o);var c=t-p,l=c>0?1:-1,d=o[0]*Ko*l,v=Math.abs(c)>180;if(v^(d>l*p&&l*t>d)){var y=o[1]*Ko;y>g&&(g=y)}else if(d=(d+360)%360-180,v^(d>l*p&&l*t>d)){var y=-o[1]*Ko;f>y&&(f=y)}else f>e&&(f=e),e>g&&(g=e);v?p>t?a(s,t)>a(s,h)&&(h=t):a(t,h)>a(s,h)&&(s=t):h>=s?(s>t&&(s=t),t>h&&(h=t)):t>p?a(s,t)>a(s,h)&&(h=t):a(t,h)>a(s,h)&&(s=t)}else n(t,e);m=r,p=t}function e(){b.point=t}function r(){x[0]=s,x[1]=h,b.point=n,m=null}function u(n,e){if(m){var r=n-p;y+=Math.abs(r)>180?r+(r>0?360:-360):r}else d=n,v=e;ja.point(n,e),t(n,e)}function i(){ja.lineStart()}function o(){u(d,v),ja.lineEnd(),Math.abs(y)>Wo&&(s=-(h=180)),x[0]=s,x[1]=h,m=null}function a(n,t){return(t-=n)<0?t+360:t}function c(n,t){return n[0]-t[0]}function l(n,t){return t[0]<=t[1]?t[0]<=n&&n<=t[1]:n<t[0]||t[1]<n}var s,f,h,g,p,d,v,m,y,M,x,b={point:n,lineStart:e,lineEnd:r,polygonStart:function(){b.point=u,b.lineStart=i,b.lineEnd=o,y=0,ja.polygonStart()},polygonEnd:function(){ja.polygonEnd(),b.point=n,b.lineStart=e,b.lineEnd=r,0>Da?(s=-(h=180),f=-(g=90)):y>Wo?g=90:-Wo>y&&(f=-90),x[0]=s,x[1]=h}};return function(n){g=h=-(s=f=1/0),M=[],mo.geo.stream(n,b);var t=M.length;if(t){M.sort(c);for(var e,r=1,u=M[0],i=[u];t>r;++r)e=M[r],l(e[0],u)||l(e[1],u)?(a(u[0],e[1])>a(u[0],u[1])&&(u[1]=e[1]),a(e[0],u[1])>a(u[0],u[1])&&(u[0]=e[0])):i.push(u=e);for(var o,e,p=-1/0,t=i.length-1,r=0,u=i[t];t>=r;u=e,++r)e=i[r],(o=a(u[1],e[0]))>p&&(p=o,s=e[0],h=u[1])}return M=x=null,1/0===s||1/0===f?[[0/0,0/0],[0/0,0/0]]:[[s,f],[h,g]]}}(),mo.geo.centroid=function(n){La=Ha=Fa=Pa=Oa=Ra=Ya=Ia=Ua=Za=Va=0,mo.geo.stream(n,Xa);var t=Ua,e=Za,r=Va,u=t*t+e*e+r*r;return Jo>u&&(t=Ra,e=Ya,r=Ia,Wo>Ha&&(t=Fa,e=Pa,r=Oa),u=t*t+e*e+r*r,Jo>u)?[0/0,0/0]:[Math.atan2(e,t)*Ko,O(r/Math.sqrt(u))*Ko]};var La,Ha,Fa,Pa,Oa,Ra,Ya,Ia,Ua,Za,Va,Xa={sphere:c,point:Rt,lineStart:It,lineEnd:Ut,polygonStart:function(){Xa.lineStart=Zt},polygonEnd:function(){Xa.lineStart=It}},$a=Bt(Vt,Qt,te,ee),Ba=[-Bo,0],Wa=1e9;mo.geo.clipExtent=function(){var n,t,e,r,u,i,o={stream:function(n){return u&&(u.valid=!1),u=i(n),u.valid=!0,u},extent:function(a){return arguments.length?(i=ue(n=+a[0][0],t=+a[0][1],e=+a[1][0],r=+a[1][1]),u&&(u.valid=!1,u=null),o):[[n,t],[e,r]]}};return o.extent([[0,0],[960,500]])},(mo.geo.conicEqualArea=function(){return ae(ce)}).raw=ce,mo.geo.albers=function(){return mo.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},mo.geo.albersUsa=function(){function n(n){var i=n[0],o=n[1];return t=null,e(i,o),t||(r(i,o),t)||u(i,o),t}var t,e,r,u,i=mo.geo.albers(),o=mo.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a=mo.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),c={point:function(n,e){t=[n,e]}};return n.invert=function(n){var t=i.scale(),e=i.translate(),r=(n[0]-e[0])/t,u=(n[1]-e[1])/t;return(u>=.12&&.234>u&&r>=-.425&&-.214>r?o:u>=.166&&.234>u&&r>=-.214&&-.115>r?a:i).invert(n)},n.stream=function(n){var t=i.stream(n),e=o.stream(n),r=a.stream(n);return{point:function(n,u){t.point(n,u),e.point(n,u),r.point(n,u)},sphere:function(){t.sphere(),e.sphere(),r.sphere()},lineStart:function(){t.lineStart(),e.lineStart(),r.lineStart()},lineEnd:function(){t.lineEnd(),e.lineEnd(),r.lineEnd()},polygonStart:function(){t.polygonStart(),e.polygonStart(),r.polygonStart()},polygonEnd:function(){t.polygonEnd(),e.polygonEnd(),r.polygonEnd()}}},n.precision=function(t){return arguments.length?(i.precision(t),o.precision(t),a.precision(t),n):i.precision()},n.scale=function(t){return arguments.length?(i.scale(t),o.scale(.35*t),a.scale(t),n.translate(i.translate())):i.scale()},n.translate=function(t){if(!arguments.length)return i.translate();var l=i.scale(),s=+t[0],f=+t[1];return e=i.translate(t).clipExtent([[s-.455*l,f-.238*l],[s+.455*l,f+.238*l]]).stream(c).point,r=o.translate([s-.307*l,f+.201*l]).clipExtent([[s-.425*l+Wo,f+.12*l+Wo],[s-.214*l-Wo,f+.234*l-Wo]]).stream(c).point,u=a.translate([s-.205*l,f+.212*l]).clipExtent([[s-.214*l+Wo,f+.166*l+Wo],[s-.115*l-Wo,f+.234*l-Wo]]).stream(c).point,n},n.scale(1070)};var Ja,Ga,Ka,Qa,nc,tc,ec={point:c,lineStart:c,lineEnd:c,polygonStart:function(){Ga=0,ec.lineStart=le},polygonEnd:function(){ec.lineStart=ec.lineEnd=ec.point=c,Ja+=Math.abs(Ga/2)}},rc={point:se,lineStart:c,lineEnd:c,polygonStart:c,polygonEnd:c},uc={point:ge,lineStart:pe,lineEnd:de,polygonStart:function(){uc.lineStart=ve},polygonEnd:function(){uc.point=ge,uc.lineStart=pe,uc.lineEnd=de}};mo.geo.transform=function(n){return{stream:function(t){var e=new Me(t);for(var r in n)e[r]=n[r];return e}}},Me.prototype={point:function(n,t){this.stream.point(n,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},mo.geo.path=function(){function n(n){return n&&(\"function\"==typeof a&&i.pointRadius(+a.apply(this,arguments)),o&&o.valid||(o=u(i)),mo.geo.stream(n,o)),i.result()}function t(){return o=null,n}var e,r,u,i,o,a=4.5;return n.area=function(n){return Ja=0,mo.geo.stream(n,u(ec)),Ja},n.centroid=function(n){return Fa=Pa=Oa=Ra=Ya=Ia=Ua=Za=Va=0,mo.geo.stream(n,u(uc)),Va?[Ua/Va,Za/Va]:Ia?[Ra/Ia,Ya/Ia]:Oa?[Fa/Oa,Pa/Oa]:[0/0,0/0]},n.bounds=function(n){return nc=tc=-(Ka=Qa=1/0),mo.geo.stream(n,u(rc)),[[Ka,Qa],[nc,tc]]},n.projection=function(n){return arguments.length?(u=(e=n)?n.stream||xe(n):dt,t()):e},n.context=function(n){return arguments.length?(i=null==(r=n)?new fe:new me(n),\"function\"!=typeof a&&i.pointRadius(a),t()):r},n.pointRadius=function(t){return arguments.length?(a=\"function\"==typeof t?t:(i.pointRadius(+t),+t),n):a},n.projection(mo.geo.albersUsa()).context(null)},mo.geo.projection=be,mo.geo.projectionMutator=_e,(mo.geo.equirectangular=function(){return be(Se)}).raw=Se.invert=Se,mo.geo.rotation=function(n){function t(t){return t=n(t[0]*Go,t[1]*Go),t[0]*=Ko,t[1]*=Ko,t}return n=Ee(n[0]%360*Go,n[1]*Go,n.length>2?n[2]*Go:0),t.invert=function(t){return t=n.invert(t[0]*Go,t[1]*Go),t[0]*=Ko,t[1]*=Ko,t},t},mo.geo.circle=function(){function n(){var n=\"function\"==typeof r?r.apply(this,arguments):r,t=Ee(-n[0]*Go,-n[1]*Go,0).invert,u=[];return e(null,null,1,{point:function(n,e){u.push(n=t(n,e)),n[0]*=Ko,n[1]*=Ko}}),{type:\"Polygon\",coordinates:[u]}}var t,e,r=[0,0],u=6;return n.origin=function(t){return arguments.length?(r=t,n):r},n.angle=function(r){return arguments.length?(e=Te((t=+r)*Go,u*Go),n):t},n.precision=function(r){return arguments.length?(e=Te(t*Go,(u=+r)*Go),n):u},n.angle(90)},mo.geo.distance=function(n,t){var e,r=(t[0]-n[0])*Go,u=n[1]*Go,i=t[1]*Go,o=Math.sin(r),a=Math.cos(r),c=Math.sin(u),l=Math.cos(u),s=Math.sin(i),f=Math.cos(i);return Math.atan2(Math.sqrt((e=f*o)*e+(e=l*s-c*f*a)*e),c*s+l*f*a)},mo.geo.graticule=function(){function n(){return{type:\"MultiLineString\",coordinates:t()}}function t(){return mo.range(Math.ceil(i/v)*v,u,v).map(h).concat(mo.range(Math.ceil(l/m)*m,c,m).map(g)).concat(mo.range(Math.ceil(r/p)*p,e,p).filter(function(n){return Math.abs(n%v)>Wo\n",
"}).map(s)).concat(mo.range(Math.ceil(a/d)*d,o,d).filter(function(n){return Math.abs(n%m)>Wo}).map(f))}var e,r,u,i,o,a,c,l,s,f,h,g,p=10,d=p,v=90,m=360,y=2.5;return n.lines=function(){return t().map(function(n){return{type:\"LineString\",coordinates:n}})},n.outline=function(){return{type:\"Polygon\",coordinates:[h(i).concat(g(c).slice(1),h(u).reverse().slice(1),g(l).reverse().slice(1))]}},n.extent=function(t){return arguments.length?n.majorExtent(t).minorExtent(t):n.minorExtent()},n.majorExtent=function(t){return arguments.length?(i=+t[0][0],u=+t[1][0],l=+t[0][1],c=+t[1][1],i>u&&(t=i,i=u,u=t),l>c&&(t=l,l=c,c=t),n.precision(y)):[[i,l],[u,c]]},n.minorExtent=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],a=+t[0][1],o=+t[1][1],r>e&&(t=r,r=e,e=t),a>o&&(t=a,a=o,o=t),n.precision(y)):[[r,a],[e,o]]},n.step=function(t){return arguments.length?n.majorStep(t).minorStep(t):n.minorStep()},n.majorStep=function(t){return arguments.length?(v=+t[0],m=+t[1],n):[v,m]},n.minorStep=function(t){return arguments.length?(p=+t[0],d=+t[1],n):[p,d]},n.precision=function(t){return arguments.length?(y=+t,s=ze(a,o,90),f=Ce(r,e,y),h=ze(l,c,90),g=Ce(i,u,y),n):y},n.majorExtent([[-180,-90+Wo],[180,90-Wo]]).minorExtent([[-180,-80-Wo],[180,80+Wo]])},mo.geo.greatArc=function(){function n(){return{type:\"LineString\",coordinates:[t||r.apply(this,arguments),e||u.apply(this,arguments)]}}var t,e,r=De,u=je;return n.distance=function(){return mo.geo.distance(t||r.apply(this,arguments),e||u.apply(this,arguments))},n.source=function(e){return arguments.length?(r=e,t=\"function\"==typeof e?null:e,n):r},n.target=function(t){return arguments.length?(u=t,e=\"function\"==typeof t?null:t,n):u},n.precision=function(){return arguments.length?n:0},n},mo.geo.interpolate=function(n,t){return Le(n[0]*Go,n[1]*Go,t[0]*Go,t[1]*Go)},mo.geo.length=function(n){return ic=0,mo.geo.stream(n,oc),ic};var ic,oc={sphere:c,point:c,lineStart:He,lineEnd:c,polygonStart:c,polygonEnd:c},ac=Fe(function(n){return Math.sqrt(2/(1+n))},function(n){return 2*Math.asin(n/2)});(mo.geo.azimuthalEqualArea=function(){return be(ac)}).raw=ac;var cc=Fe(function(n){var t=Math.acos(n);return t&&t/Math.sin(t)},dt);(mo.geo.azimuthalEquidistant=function(){return be(cc)}).raw=cc,(mo.geo.conicConformal=function(){return ae(Pe)}).raw=Pe,(mo.geo.conicEquidistant=function(){return ae(Oe)}).raw=Oe;var lc=Fe(function(n){return 1/n},Math.atan);(mo.geo.gnomonic=function(){return be(lc)}).raw=lc,Re.invert=function(n,t){return[n,2*Math.atan(Math.exp(t))-Bo/2]},(mo.geo.mercator=function(){return Ye(Re)}).raw=Re;var sc=Fe(function(){return 1},Math.asin);(mo.geo.orthographic=function(){return be(sc)}).raw=sc;var fc=Fe(function(n){return 1/(1+n)},function(n){return 2*Math.atan(n)});(mo.geo.stereographic=function(){return be(fc)}).raw=fc,Ie.invert=function(n,t){return[Math.atan2(R(n),Math.cos(t)),O(Math.sin(t)/Y(n))]},(mo.geo.transverseMercator=function(){return Ye(Ie)}).raw=Ie,mo.geom={},mo.svg={},mo.svg.line=function(){return Ue(dt)};var hc=mo.map({linear:Xe,\"linear-closed\":$e,step:Be,\"step-before\":We,\"step-after\":Je,basis:er,\"basis-open\":rr,\"basis-closed\":ur,bundle:ir,cardinal:Qe,\"cardinal-open\":Ge,\"cardinal-closed\":Ke,monotone:fr});hc.forEach(function(n,t){t.key=n,t.closed=/-closed$/.test(n)});var gc=[0,2/3,1/3,0],pc=[0,1/3,2/3,0],dc=[0,1/6,2/3,1/6];mo.geom.hull=function(n){function t(n){if(n.length<3)return[];var t,u,i,o,a,c,l,s,f,h,g,p,d=pt(e),v=pt(r),m=n.length,y=m-1,M=[],x=[],b=0;if(d===Ze&&r===Ve)t=n;else for(i=0,t=[];m>i;++i)t.push([+d.call(this,u=n[i],i),+v.call(this,u,i)]);for(i=1;m>i;++i)(t[i][1]<t[b][1]||t[i][1]==t[b][1]&&t[i][0]<t[b][0])&&(b=i);for(i=0;m>i;++i)i!==b&&(c=t[i][1]-t[b][1],a=t[i][0]-t[b][0],M.push({angle:Math.atan2(c,a),index:i}));for(M.sort(function(n,t){return n.angle-t.angle}),g=M[0].angle,h=M[0].index,f=0,i=1;y>i;++i){if(o=M[i].index,g==M[i].angle){if(a=t[h][0]-t[b][0],c=t[h][1]-t[b][1],l=t[o][0]-t[b][0],s=t[o][1]-t[b][1],a*a+c*c>=l*l+s*s){M[i].index=-1;continue}M[f].index=-1}g=M[i].angle,f=i,h=o}for(x.push(b),i=0,o=0;2>i;++o)M[o].index>-1&&(x.push(M[o].index),i++);for(p=x.length;y>o;++o)if(!(M[o].index<0)){for(;!hr(x[p-2],x[p-1],M[o].index,t);)--p;x[p++]=M[o].index}var _=[];for(i=p-1;i>=0;--i)_.push(n[x[i]]);return _}var e=Ze,r=Ve;return arguments.length?t(n):(t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(r=n,t):r},t)},mo.geom.polygon=function(n){return Lo(n,vc),n};var vc=mo.geom.polygon.prototype=[];vc.area=function(){for(var n,t=-1,e=this.length,r=this[e-1],u=0;++t<e;)n=r,r=this[t],u+=n[1]*r[0]-n[0]*r[1];return.5*u},vc.centroid=function(n){var t,e,r=-1,u=this.length,i=0,o=0,a=this[u-1];for(arguments.length||(n=-1/(6*this.area()));++r<u;)t=a,a=this[r],e=t[0]*a[1]-a[0]*t[1],i+=(t[0]+a[0])*e,o+=(t[1]+a[1])*e;return[i*n,o*n]},vc.clip=function(n){for(var t,e,r,u,i,o,a=dr(n),c=-1,l=this.length-dr(this),s=this[l-1];++c<l;){for(t=n.slice(),n.length=0,u=this[c],i=t[(r=t.length-a)-1],e=-1;++e<r;)o=t[e],gr(o,s,u)?(gr(i,s,u)||n.push(pr(i,o,s,u)),n.push(o)):gr(i,s,u)&&n.push(pr(i,o,s,u)),i=o;a&&n.push(n[0]),s=u}return n},mo.geom.delaunay=function(n){var t=n.map(function(){return[]}),e=[];return vr(n,function(e){t[e.region.l.index].push(n[e.region.r.index])}),t.forEach(function(t,r){var u=n[r],i=u[0],o=u[1];t.forEach(function(n){n.angle=Math.atan2(n[0]-i,n[1]-o)}),t.sort(function(n,t){return n.angle-t.angle});for(var a=0,c=t.length-1;c>a;a++)e.push([u,t[a],t[a+1]])}),e},mo.geom.voronoi=function(n){function t(n){var t,i,o,a=n.map(function(){return[]}),c=pt(e),l=pt(r),s=n.length,f=1e6;if(c===Ze&&l===Ve)t=n;else for(t=new Array(s),o=0;s>o;++o)t[o]=[+c.call(this,i=n[o],o),+l.call(this,i,o)];if(vr(t,function(n){var t,e,r,u,i,o;1===n.a&&n.b>=0?(t=n.ep.r,e=n.ep.l):(t=n.ep.l,e=n.ep.r),1===n.a?(i=t?t.y:-f,r=n.c-n.b*i,o=e?e.y:f,u=n.c-n.b*o):(r=t?t.x:-f,i=n.c-n.a*r,u=e?e.x:f,o=n.c-n.a*u);var c=[r,i],l=[u,o];a[n.region.l.index].push(c,l),a[n.region.r.index].push(c,l)}),a=a.map(function(n,e){var r=t[e][0],u=t[e][1],i=n.map(function(n){return Math.atan2(n[0]-r,n[1]-u)}),o=mo.range(n.length).sort(function(n,t){return i[n]-i[t]});return o.filter(function(n,t){return!t||i[n]-i[o[t-1]]>Wo}).map(function(t){return n[t]})}),a.forEach(function(n,e){var r=n.length;if(!r)return n.push([-f,-f],[-f,f],[f,f],[f,-f]);if(!(r>2)){var u=t[e],i=n[0],o=n[1],a=u[0],c=u[1],l=i[0],s=i[1],h=o[0],g=o[1],p=Math.abs(h-l),d=g-s;if(Math.abs(d)<Wo){var v=s>c?-f:f;n.push([-f,v],[f,v])}else if(Wo>p){var m=l>a?-f:f;n.push([m,-f],[m,f])}else{var v=(l-a)*(g-s)>(h-l)*(s-c)?f:-f,y=Math.abs(d)-p;Math.abs(y)<Wo?n.push([0>d?v:-v,v]):(y>0&&(v*=-1),n.push([-f,v],[f,v]))}}}),u)for(o=0;s>o;++o)u.clip(a[o]);for(o=0;s>o;++o)a[o].point=n[o];return a}var e=Ze,r=Ve,u=null;return arguments.length?t(n):(t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(r=n,t):r},t.clipExtent=function(n){if(!arguments.length)return u&&[u[0],u[2]];if(null==n)u=null;else{var e=+n[0][0],r=+n[0][1],i=+n[1][0],o=+n[1][1];u=mo.geom.polygon([[e,r],[e,o],[i,o],[i,r]])}return t},t.size=function(n){return arguments.length?t.clipExtent(n&&[[0,0],n]):u&&u[2]},t.links=function(n){var t,u,i,o=n.map(function(){return[]}),a=[],c=pt(e),l=pt(r),s=n.length;if(c===Ze&&l===Ve)t=n;else for(t=new Array(s),i=0;s>i;++i)t[i]=[+c.call(this,u=n[i],i),+l.call(this,u,i)];return vr(t,function(t){var e=t.region.l.index,r=t.region.r.index;o[e][r]||(o[e][r]=o[r][e]=!0,a.push({source:n[e],target:n[r]}))}),a},t.triangles=function(n){if(e===Ze&&r===Ve)return mo.geom.delaunay(n);for(var t,u=new Array(c),i=pt(e),o=pt(r),a=-1,c=n.length;++a<c;)(u[a]=[+i.call(this,t=n[a],a),+o.call(this,t,a)]).data=t;return mo.geom.delaunay(u).map(function(n){return n.map(function(n){return n.data})})},t)};var mc={l:\"r\",r:\"l\"};mo.geom.quadtree=function(n,t,e,r,u){function i(n){function i(n,t,e,r,u,i,o,a){if(!isNaN(e)&&!isNaN(r))if(n.leaf){var c=n.x,s=n.y;if(null!=c)if(Math.abs(c-e)+Math.abs(s-r)<.01)l(n,t,e,r,u,i,o,a);else{var f=n.point;n.x=n.y=n.point=null,l(n,f,c,s,u,i,o,a),l(n,t,e,r,u,i,o,a)}else n.x=e,n.y=r,n.point=t}else l(n,t,e,r,u,i,o,a)}function l(n,t,e,r,u,o,a,c){var l=.5*(u+a),s=.5*(o+c),f=e>=l,h=r>=s,g=(h<<1)+f;n.leaf=!1,n=n.nodes[g]||(n.nodes[g]=Mr()),f?u=l:a=l,h?o=s:c=s,i(n,t,e,r,u,o,a,c)}var s,f,h,g,p,d,v,m,y,M=pt(a),x=pt(c);if(null!=t)d=t,v=e,m=r,y=u;else if(m=y=-(d=v=1/0),f=[],h=[],p=n.length,o)for(g=0;p>g;++g)s=n[g],s.x<d&&(d=s.x),s.y<v&&(v=s.y),s.x>m&&(m=s.x),s.y>y&&(y=s.y),f.push(s.x),h.push(s.y);else for(g=0;p>g;++g){var b=+M(s=n[g],g),_=+x(s,g);d>b&&(d=b),v>_&&(v=_),b>m&&(m=b),_>y&&(y=_),f.push(b),h.push(_)}var w=m-d,S=y-v;w>S?y=v+w:m=d+S;var E=Mr();if(E.add=function(n){i(E,n,+M(n,++g),+x(n,g),d,v,m,y)},E.visit=function(n){xr(n,E,d,v,m,y)},g=-1,null==t){for(;++g<p;)i(E,n[g],f[g],h[g],d,v,m,y);--g}else n.forEach(E.add);return f=h=n=s=null,E}var o,a=Ze,c=Ve;return(o=arguments.length)?(a=mr,c=yr,3===o&&(u=e,r=t,e=t=0),i(n)):(i.x=function(n){return arguments.length?(a=n,i):a},i.y=function(n){return arguments.length?(c=n,i):c},i.extent=function(n){return arguments.length?(null==n?t=e=r=u=null:(t=+n[0][0],e=+n[0][1],r=+n[1][0],u=+n[1][1]),i):null==t?null:[[t,e],[r,u]]},i.size=function(n){return arguments.length?(null==n?t=e=r=u=null:(t=e=0,r=+n[0],u=+n[1]),i):null==t?null:[r-t,u-e]},i)},mo.interpolateRgb=br,mo.interpolateObject=_r,mo.interpolateNumber=wr,mo.interpolateString=Sr;var yc=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g;mo.interpolate=Er,mo.interpolators=[function(n,t){var e=typeof t;return(\"string\"===e?ga.has(t)||/^(#|rgb\\(|hsl\\()/.test(t)?br:Sr:t instanceof Z?br:\"object\"===e?Array.isArray(t)?kr:_r:wr)(n,t)}],mo.interpolateArray=kr;var Mc=function(){return dt},xc=mo.map({linear:Mc,poly:Dr,quad:function(){return qr},cubic:function(){return zr},sin:function(){return jr},exp:function(){return Lr},circle:function(){return Hr},elastic:Fr,back:Pr,bounce:function(){return Or}}),bc=mo.map({\"in\":dt,out:Nr,\"in-out\":Tr,\"out-in\":function(n){return Tr(Nr(n))}});mo.ease=function(n){var t=n.indexOf(\"-\"),e=t>=0?n.substring(0,t):n,r=t>=0?n.substring(t+1):\"in\";return e=xc.get(e)||Mc,r=bc.get(r)||dt,Ar(r(e.apply(null,Array.prototype.slice.call(arguments,1))))},mo.interpolateHcl=Rr,mo.interpolateHsl=Yr,mo.interpolateLab=Ir,mo.interpolateRound=Ur,mo.transform=function(n){var t=xo.createElementNS(mo.ns.prefix.svg,\"g\");return(mo.transform=function(n){if(null!=n){t.setAttribute(\"transform\",n);var e=t.transform.baseVal.consolidate()}return new Zr(e?e.matrix:_c)})(n)},Zr.prototype.toString=function(){return\"translate(\"+this.translate+\")rotate(\"+this.rotate+\")skewX(\"+this.skew+\")scale(\"+this.scale+\")\"};var _c={a:1,b:0,c:0,d:1,e:0,f:0};mo.interpolateTransform=Br,mo.layout={},mo.layout.bundle=function(){return function(n){for(var t=[],e=-1,r=n.length;++e<r;)t.push(Gr(n[e]));return t}},mo.layout.chord=function(){function n(){var n,l,f,h,g,p={},d=[],v=mo.range(i),m=[];for(e=[],r=[],n=0,h=-1;++h<i;){for(l=0,g=-1;++g<i;)l+=u[h][g];d.push(l),m.push(mo.range(i)),n+=l}for(o&&v.sort(function(n,t){return o(d[n],d[t])}),a&&m.forEach(function(n,t){n.sort(function(n,e){return a(u[t][n],u[t][e])})}),n=(2*Bo-s*i)/n,l=0,h=-1;++h<i;){for(f=l,g=-1;++g<i;){var y=v[h],M=m[y][g],x=u[y][M],b=l,_=l+=x*n;p[y+\"-\"+M]={index:y,subindex:M,startAngle:b,endAngle:_,value:x}}r[y]={index:y,startAngle:f,endAngle:l,value:(l-f)/n},l+=s}for(h=-1;++h<i;)for(g=h-1;++g<i;){var w=p[h+\"-\"+g],S=p[g+\"-\"+h];(w.value||S.value)&&e.push(w.value<S.value?{source:S,target:w}:{source:w,target:S})}c&&t()}function t(){e.sort(function(n,t){return c((n.source.value+n.target.value)/2,(t.source.value+t.target.value)/2)})}var e,r,u,i,o,a,c,l={},s=0;return l.matrix=function(n){return arguments.length?(i=(u=n)&&u.length,e=r=null,l):u},l.padding=function(n){return arguments.length?(s=n,e=r=null,l):s},l.sortGroups=function(n){return arguments.length?(o=n,e=r=null,l):o},l.sortSubgroups=function(n){return arguments.length?(a=n,e=null,l):a},l.sortChords=function(n){return arguments.length?(c=n,e&&t(),l):c},l.chords=function(){return e||n(),e},l.groups=function(){return r||n(),r},l},mo.layout.force=function(){function n(n){return function(t,e,r,u){if(t.point!==n){var i=t.cx-n.x,o=t.cy-n.y,a=1/Math.sqrt(i*i+o*o);if(d>(u-e)*a){var c=t.charge*a*a;return n.px-=i*c,n.py-=o*c,!0}if(t.point&&isFinite(a)){var c=t.pointCharge*a*a;n.px-=i*c,n.py-=o*c}}return!t.charge}}function t(n){n.px=mo.event.x,n.py=mo.event.y,a.resume()}var e,r,u,i,o,a={},c=mo.dispatch(\"start\",\"tick\",\"end\"),l=[1,1],s=.9,f=wc,h=Sc,g=-30,p=.1,d=.8,v=[],m=[];return a.tick=function(){if((r*=.99)<.005)return c.end({type:\"end\",alpha:r=0}),!0;var t,e,a,f,h,d,y,M,x,b=v.length,_=m.length;for(e=0;_>e;++e)a=m[e],f=a.source,h=a.target,M=h.x-f.x,x=h.y-f.y,(d=M*M+x*x)&&(d=r*i[e]*((d=Math.sqrt(d))-u[e])/d,M*=d,x*=d,h.x-=M*(y=f.weight/(h.weight+f.weight)),h.y-=x*y,f.x+=M*(y=1-y),f.y+=x*y);if((y=r*p)&&(M=l[0]/2,x=l[1]/2,e=-1,y))for(;++e<b;)a=v[e],a.x+=(M-a.x)*y,a.y+=(x-a.y)*y;if(g)for(uu(t=mo.geom.quadtree(v),r,o),e=-1;++e<b;)(a=v[e]).fixed||t.visit(n(a));for(e=-1;++e<b;)a=v[e],a.fixed?(a.x=a.px,a.y=a.py):(a.x-=(a.px-(a.px=a.x))*s,a.y-=(a.py-(a.py=a.y))*s);c.tick({type:\"tick\",alpha:r})},a.nodes=function(n){return arguments.length?(v=n,a):v},a.links=function(n){return arguments.length?(m=n,a):m},a.size=function(n){return arguments.length?(l=n,a):l},a.linkDistance=function(n){return arguments.length?(f=\"function\"==typeof n?n:+n,a):f},a.distance=a.linkDistance,a.linkStrength=function(n){return arguments.length?(h=\"function\"==typeof n?n:+n,a):h},a.friction=function(n){return arguments.length?(s=+n,a):s},a.charge=function(n){return arguments.length?(g=\"function\"==typeof n?n:+n,a):g},a.gravity=function(n){return arguments.length?(p=+n,a):p},a.theta=function(n){return arguments.length?(d=+n,a):d},a.alpha=function(n){return arguments.length?(n=+n,r?r=n>0?n:0:n>0&&(c.start({type:\"start\",alpha:r=n}),mo.timer(a.tick)),a):r},a.start=function(){function n(n,r){for(var u,i=t(e),o=-1,a=i.length;++o<a;)if(!isNaN(u=i[o][n]))return u;return Math.random()*r}function t(){if(!c){for(c=[],r=0;p>r;++r)c[r]=[];for(r=0;d>r;++r){var n=m[r];c[n.source.index].push(n.target),c[n.target.index].push(n.source)}}return c[e]}var e,r,c,s,p=v.length,d=m.length,y=l[0],M=l[1];for(e=0;p>e;++e)(s=v[e]).index=e,s.weight=0;for(e=0;d>e;++e)s=m[e],\"number\"==typeof s.source&&(s.source=v[s.source]),\"number\"==typeof s.target&&(s.target=v[s.target]),++s.source.weight,++s.target.weight;for(e=0;p>e;++e)s=v[e],isNaN(s.x)&&(s.x=n(\"x\",y)),isNaN(s.y)&&(s.y=n(\"y\",M)),isNaN(s.px)&&(s.px=s.x),isNaN(s.py)&&(s.py=s.y);if(u=[],\"function\"==typeof f)for(e=0;d>e;++e)u[e]=+f.call(this,m[e],e);else for(e=0;d>e;++e)u[e]=f;if(i=[],\"function\"==typeof h)for(e=0;d>e;++e)i[e]=+h.call(this,m[e],e);else for(e=0;d>e;++e)i[e]=h;if(o=[],\"function\"==typeof g)for(e=0;p>e;++e)o[e]=+g.call(this,v[e],e);else for(e=0;p>e;++e)o[e]=g;return a.resume()},a.resume=function(){return a.alpha(.1)},a.stop=function(){return a.alpha(0)},a.drag=function(){return e||(e=mo.behavior.drag().origin(dt).on(\"dragstart.force\",nu).on(\"drag.force\",t).on(\"dragend.force\",tu)),arguments.length?(this.on(\"mouseover.force\",eu).on(\"mouseout.force\",ru).call(e),void 0):e},mo.rebind(a,c,\"on\")};var wc=20,Sc=1;mo.layout.hierarchy=function(){function n(t,o,a){var c=u.call(e,t,o);if(t.depth=o,a.push(t),c&&(l=c.length)){for(var l,s,f=-1,h=t.children=[],g=0,p=o+1;++f<l;)s=n(c[f],p,a),s.parent=t,h.push(s),g+=s.value;r&&h.sort(r),i&&(t.value=g)}else i&&(t.value=+i.call(e,t,o)||0);return t}function t(n,r){var u=n.children,o=0;if(u&&(a=u.length))for(var a,c=-1,l=r+1;++c<a;)o+=t(u[c],l);else i&&(o=+i.call(e,n,r)||0);return i&&(n.value=o),o}function e(t){var e=[];return n(t,0,e),e}var r=cu,u=ou,i=au;return e.sort=function(n){return arguments.length?(r=n,e):r},e.children=function(n){return arguments.length?(u=n,e):u},e.value=function(n){return arguments.length?(i=n,e):i},e.revalue=function(n){return t(n,0),n},e},mo.layout.partition=function(){function n(t,e,r,u){var i=t.children;if(t.x=e,t.y=t.depth*u,t.dx=r,t.dy=u,i&&(o=i.length)){var o,a,c,l=-1;for(r=t.value?r/t.value:0;++l<o;)n(a=i[l],e,c=a.value*r,u),e+=c}}function t(n){var e=n.children,r=0;if(e&&(u=e.length))for(var u,i=-1;++i<u;)r=Math.max(r,t(e[i]));return 1+r}function e(e,i){var o=r.call(this,e,i);return n(o[0],0,u[0],u[1]/t(o[0])),o}var r=mo.layout.hierarchy(),u=[1,1];return e.size=function(n){return arguments.length?(u=n,e):u},iu(e,r)},mo.layout.pie=function(){function n(i){var o=i.map(function(e,r){return+t.call(n,e,r)}),a=+(\"function\"==typeof r?r.apply(this,arguments):r),c=((\"function\"==typeof u?u.apply(this,arguments):u)-a)/mo.sum(o),l=mo.range(i.length);null!=e&&l.sort(e===Ec?function(n,t){return o[t]-o[n]}:function(n,t){return e(i[n],i[t])});var s=[];return l.forEach(function(n){var t;s[n]={data:i[n],value:t=o[n],startAngle:a,endAngle:a+=t*c}}),s}var t=Number,e=Ec,r=0,u=2*Bo;return n.value=function(e){return arguments.length?(t=e,n):t},n.sort=function(t){return arguments.length?(e=t,n):e},n.startAngle=function(t){return arguments.length?(r=t,n):r},n.endAngle=function(t){return arguments.length?(u=t,n):u},n};var Ec={};mo.layout.stack=function(){function n(a,c){var l=a.map(function(e,r){return t.call(n,e,r)}),s=l.map(function(t){return t.map(function(t,e){return[i.call(n,t,e),o.call(n,t,e)]})}),f=e.call(n,s,c);l=mo.permute(l,f),s=mo.permute(s,f);var h,g,p,d=r.call(n,s,c),v=l.length,m=l[0].length;for(g=0;m>g;++g)for(u.call(n,l[0][g],p=d[g],s[0][g][1]),h=1;v>h;++h)u.call(n,l[h][g],p+=s[h-1][g][1],s[h][g][1]);return a}var t=dt,e=gu,r=pu,u=hu,i=su,o=fu;return n.values=function(e){return arguments.length?(t=e,n):t},n.order=function(t){return arguments.length?(e=\"function\"==typeof t?t:kc.get(t)||gu,n):e},n.offset=function(t){return arguments.length?(r=\"function\"==typeof t?t:Ac.get(t)||pu,n):r},n.x=function(t){return arguments.length?(i=t,n):i},n.y=function(t){return arguments.length?(o=t,n):o},n.out=function(t){return arguments.length?(u=t,n):u},n};var kc=mo.map({\"inside-out\":function(n){var t,e,r=n.length,u=n.map(du),i=n.map(vu),o=mo.range(r).sort(function(n,t){return u[n]-u[t]}),a=0,c=0,l=[],s=[];for(t=0;r>t;++t)e=o[t],c>a?(a+=i[e],l.push(e)):(c+=i[e],s.push(e));return s.reverse().concat(l)},reverse:function(n){return mo.range(n.length).reverse()},\"default\":gu}),Ac=mo.map({silhouette:function(n){var t,e,r,u=n.length,i=n[0].length,o=[],a=0,c=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];r>a&&(a=r),o.push(r)}for(e=0;i>e;++e)c[e]=(a-o[e])/2;return c},wiggle:function(n){var t,e,r,u,i,o,a,c,l,s=n.length,f=n[0],h=f.length,g=[];for(g[0]=c=l=0,e=1;h>e;++e){for(t=0,u=0;s>t;++t)u+=n[t][e][1];for(t=0,i=0,a=f[e][0]-f[e-1][0];s>t;++t){for(r=0,o=(n[t][e][1]-n[t][e-1][1])/(2*a);t>r;++r)o+=(n[r][e][1]-n[r][e-1][1])/a;i+=o*n[t][e][1]}g[e]=c-=u?i/u*a:0,l>c&&(l=c)}for(e=0;h>e;++e)g[e]-=l;return g},expand:function(n){var t,e,r,u=n.length,i=n[0].length,o=1/u,a=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];if(r)for(t=0;u>t;t++)n[t][e][1]/=r;else for(t=0;u>t;t++)n[t][e][1]=o}for(e=0;i>e;++e)a[e]=0;return a},zero:pu});mo.layout.histogram=function(){function n(n,i){for(var o,a,c=[],l=n.map(e,this),s=r.call(this,l,i),f=u.call(this,s,l,i),i=-1,h=l.length,g=f.length-1,p=t?1:1/h;++i<g;)o=c[i]=[],o.dx=f[i+1]-(o.x=f[i]),o.y=0;if(g>0)for(i=-1;++i<h;)a=l[i],a>=s[0]&&a<=s[1]&&(o=c[mo.bisect(f,a,1,g)-1],o.y+=p,o.push(n[i]));return c}var t=!0,e=Number,r=xu,u=yu;return n.value=function(t){return arguments.length?(e=t,n):e},n.range=function(t){return arguments.length?(r=pt(t),n):r},n.bins=function(t){return arguments.length?(u=\"number\"==typeof t?function(n){return Mu(n,t)}:pt(t),n):u},n.frequency=function(e){return arguments.length?(t=!!e,n):t},n},mo.layout.tree=function(){function n(n,i){function o(n,t){var r=n.children,u=n._tree;if(r&&(i=r.length)){for(var i,a,l,s=r[0],f=s,h=-1;++h<i;)l=r[h],o(l,a),f=c(l,a,f),a=l;Tu(n);var g=.5*(s._tree.prelim+l._tree.prelim);t?(u.prelim=t._tree.prelim+e(n,t),u.mod=u.prelim-g):u.prelim=g}else t&&(u.prelim=t._tree.prelim+e(n,t))}function a(n,t){n.x=n._tree.prelim+t;var e=n.children;if(e&&(r=e.length)){var r,u=-1;for(t+=n._tree.mod;++u<r;)a(e[u],t)}}function c(n,t,r){if(t){for(var u,i=n,o=n,a=t,c=n.parent.children[0],l=i._tree.mod,s=o._tree.mod,f=a._tree.mod,h=c._tree.mod;a=wu(a),i=_u(i),a&&i;)c=_u(c),o=wu(o),o._tree.ancestor=n,u=a._tree.prelim+f-i._tree.prelim-l+e(a,i),u>0&&(qu(zu(a,n,r),n,u),l+=u,s+=u),f+=a._tree.mod,l+=i._tree.mod,h+=c._tree.mod,s+=o._tree.mod;a&&!wu(o)&&(o._tree.thread=a,o._tree.mod+=f-s),i&&!_u(c)&&(c._tree.thread=i,c._tree.mod+=l-h,r=n)}return r}var l=t.call(this,n,i),s=l[0];Nu(s,function(n,t){n._tree={ancestor:n,prelim:0,mod:0,change:0,shift:0,number:t?t._tree.number+1:0}}),o(s),a(s,-s._tree.prelim);var f=Su(s,ku),h=Su(s,Eu),g=Su(s,Au),p=f.x-e(f,h)/2,d=h.x+e(h,f)/2,v=g.depth||1;return Nu(s,u?function(n){n.x*=r[0],n.y=n.depth*r[1],delete n._tree}:function(n){n.x=(n.x-p)/(d-p)*r[0],n.y=n.depth/v*r[1],delete n._tree}),l}var t=mo.layout.hierarchy().sort(null).value(null),e=bu,r=[1,1],u=!1;return n.separation=function(t){return arguments.length?(e=t,n):e},n.size=function(t){return arguments.length?(u=null==(r=t),n):u?null:r},n.nodeSize=function(t){return arguments.length?(u=null!=(r=t),n):u?r:null},iu(n,t)},mo.layout.pack=function(){function n(n,i){var o=e.call(this,n,i),a=o[0],c=u[0],l=u[1],s=null==t?Math.sqrt:\"function\"==typeof t?t:function(){return t};if(a.x=a.y=0,Nu(a,function(n){n.r=+s(n.value)}),Nu(a,Hu),r){var f=r*(t?1:Math.max(2*a.r/c,2*a.r/l))/2;Nu(a,function(n){n.r+=f}),Nu(a,Hu),Nu(a,function(n){n.r-=f})}return Ou(a,c/2,l/2,t?1:1/Math.max(2*a.r/c,2*a.r/l)),o}var t,e=mo.layout.hierarchy().sort(Cu),r=0,u=[1,1];return n.size=function(t){return arguments.length?(u=t,n):u},n.radius=function(e){return arguments.length?(t=null==e||\"function\"==typeof e?e:+e,n):t},n.padding=function(t){return arguments.length?(r=+t,n):r},iu(n,e)},mo.layout.cluster=function(){function n(n,i){var o,a=t.call(this,n,i),c=a[0],l=0;Nu(c,function(n){var t=n.children;t&&t.length?(n.x=Iu(t),n.y=Yu(t)):(n.x=o?l+=e(n,o):0,n.y=0,o=n)});var s=Uu(c),f=Zu(c),h=s.x-e(s,f)/2,g=f.x+e(f,s)/2;return Nu(c,u?function(n){n.x=(n.x-c.x)*r[0],n.y=(c.y-n.y)*r[1]}:function(n){n.x=(n.x-h)/(g-h)*r[0],n.y=(1-(c.y?n.y/c.y:1))*r[1]}),a}var t=mo.layout.hierarchy().sort(null).value(null),e=bu,r=[1,1],u=!1;return n.separation=function(t){return arguments.length?(e=t,n):e},n.size=function(t){return arguments.length?(u=null==(r=t),n):u?null:r},n.nodeSize=function(t){return arguments.length?(u=null!=(r=t),n):u?r:null},iu(n,t)},mo.layout.treemap=function(){function n(n,t){for(var e,r,u=-1,i=n.length;++u<i;)r=(e=n[u]).value*(0>t?0:t),e.area=isNaN(r)||0>=r?0:r}function t(e){var i=e.children;if(i&&i.length){var o,a,c,l=f(e),s=[],h=i.slice(),p=1/0,d=\"slice\"===g?l.dx:\"dice\"===g?l.dy:\"slice-dice\"===g?1&e.depth?l.dy:l.dx:Math.min(l.dx,l.dy);for(n(h,l.dx*l.dy/e.value),s.area=0;(c=h.length)>0;)s.push(o=h[c-1]),s.area+=o.area,\"squarify\"!==g||(a=r(s,d))<=p?(h.pop(),p=a):(s.area-=s.pop().area,u(s,d,l,!1),d=Math.min(l.dx,l.dy),s.length=s.area=0,p=1/0);s.length&&(u(s,d,l,!0),s.length=s.area=0),i.forEach(t)}}function e(t){var r=t.children;if(r&&r.length){var i,o=f(t),a=r.slice(),c=[];for(n(a,o.dx*o.dy/t.value),c.area=0;i=a.pop();)c.push(i),c.area+=i.area,null!=i.z&&(u(c,i.z?o.dx:o.dy,o,!a.length),c.length=c.area=0);r.forEach(e)}}function r(n,t){for(var e,r=n.area,u=0,i=1/0,o=-1,a=n.length;++o<a;)(e=n[o].area)&&(i>e&&(i=e),e>u&&(u=e));return r*=r,t*=t,r?Math.max(t*u*p/r,r/(t*i*p)):1/0}function u(n,t,e,r){var u,i=-1,o=n.length,a=e.x,l=e.y,s=t?c(n.area/t):0;if(t==e.dx){for((r||s>e.dy)&&(s=e.dy);++i<o;)u=n[i],u.x=a,u.y=l,u.dy=s,a+=u.dx=Math.min(e.x+e.dx-a,s?c(u.area/s):0);u.z=!0,u.dx+=e.x+e.dx-a,e.y+=s,e.dy-=s}else{for((r||s>e.dx)&&(s=e.dx);++i<o;)u=n[i],u.x=a,u.y=l,u.dx=s,l+=u.dy=Math.min(e.y+e.dy-l,s?c(u.area/s):0);u.z=!1,u.dy+=e.y+e.dy-l,e.x+=s,e.dx-=s}}function i(r){var u=o||a(r),i=u[0];return i.x=0,i.y=0,i.dx=l[0],i.dy=l[1],o&&a.revalue(i),n([i],i.dx*i.dy/i.value),(o?e:t)(i),h&&(o=u),u}var o,a=mo.layout.hierarchy(),c=Math.round,l=[1,1],s=null,f=Vu,h=!1,g=\"squarify\",p=.5*(1+Math.sqrt(5));return i.size=function(n){return arguments.length?(l=n,i):l},i.padding=function(n){function t(t){var e=n.call(i,t,t.depth);return null==e?Vu(t):Xu(t,\"number\"==typeof e?[e,e,e,e]:e)}function e(t){return Xu(t,n)}if(!arguments.length)return s;var r;return f=null==(s=n)?Vu:\"function\"==(r=typeof n)?t:\"number\"===r?(n=[n,n,n,n],e):e,i},i.round=function(n){return arguments.length?(c=n?Math.round:Number,i):c!=Number},i.sticky=function(n){return arguments.length?(h=n,o=null,i):h},i.ratio=function(n){return arguments.length?(p=n,i):p},i.mode=function(n){return arguments.length?(g=n+\"\",i):g},iu(i,a)},mo.random={normal:function(n,t){var e=arguments.length;return 2>e&&(t=1),1>e&&(n=0),function(){var e,r,u;do e=2*Math.random()-1,r=2*Math.random()-1,u=e*e+r*r;while(!u||u>1);return n+t*e*Math.sqrt(-2*Math.log(u)/u)}},logNormal:function(){var n=mo.random.normal.apply(mo,arguments);return function(){return Math.exp(n())}},irwinHall:function(n){return function(){for(var t=0,e=0;n>e;e++)t+=Math.random();return t/n}}},mo.scale={};var Nc={floor:dt,ceil:dt};mo.scale.linear=function(){return Qu([0,1],[0,1],Er,!1)},mo.scale.log=function(){return ii(mo.scale.linear().domain([0,1]),10,!0,[1,10])};var Tc=mo.format(\".0e\"),qc={floor:function(n){return-Math.ceil(-n)},ceil:function(n){return-Math.floor(-n)}};mo.scale.pow=function(){return oi(mo.scale.linear(),1,[0,1])},mo.scale.sqrt=function(){return mo.scale.pow().exponent(.5)},mo.scale.ordinal=function(){return ci([],{t:\"range\",a:[[]]})},mo.scale.category10=function(){return mo.scale.ordinal().range(zc)},mo.scale.category20=function(){return mo.scale.ordinal().range(Cc)},mo.scale.category20b=function(){return mo.scale.ordinal().range(Dc)},mo.scale.category20c=function(){return mo.scale.ordinal().range(jc)};var zc=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(it),Cc=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(it),Dc=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(it),jc=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(it);mo.scale.quantile=function(){return li([],[])},mo.scale.quantize=function(){return si(0,1,[0,1])},mo.scale.threshold=function(){return fi([.5],[0,1])},mo.scale.identity=function(){return hi([0,1])},mo.svg.arc=function(){function n(){var n=t.apply(this,arguments),i=e.apply(this,arguments),o=r.apply(this,arguments)+Lc,a=u.apply(this,arguments)+Lc,c=(o>a&&(c=o,o=a,a=c),a-o),l=Bo>c?\"0\":\"1\",s=Math.cos(o),f=Math.sin(o),h=Math.cos(a),g=Math.sin(a);return c>=Hc?n?\"M0,\"+i+\"A\"+i+\",\"+i+\" 0 1,1 0,\"+-i+\"A\"+i+\",\"+i+\" 0 1,1 0,\"+i+\"M0,\"+n+\"A\"+n+\",\"+n+\" 0 1,0 0,\"+-n+\"A\"+n+\",\"+n+\" 0 1,0 0,\"+n+\"Z\":\"M0,\"+i+\"A\"+i+\",\"+i+\" 0 1,1 0,\"+-i+\"A\"+i+\",\"+i+\" 0 1,1 0,\"+i+\"Z\":n?\"M\"+i*s+\",\"+i*f+\"A\"+i+\",\"+i+\" 0 \"+l+\",1 \"+i*h+\",\"+i*g+\"L\"+n*h+\",\"+n*g+\"A\"+n+\",\"+n+\" 0 \"+l+\",0 \"+n*s+\",\"+n*f+\"Z\":\"M\"+i*s+\",\"+i*f+\"A\"+i+\",\"+i+\" 0 \"+l+\",1 \"+i*h+\",\"+i*g+\"L0,0\"+\"Z\"}var t=gi,e=pi,r=di,u=vi;return n.innerRadius=function(e){return arguments.length?(t=pt(e),n):t},n.outerRadius=function(t){return arguments.length?(e=pt(t),n):e},n.startAngle=function(t){return arguments.length?(r=pt(t),n):r},n.endAngle=function(t){return arguments.length?(u=pt(t),n):u},n.centroid=function(){var n=(t.apply(this,arguments)+e.apply(this,arguments))/2,i=(r.apply(this,arguments)+u.apply(this,arguments))/2+Lc;return[Math.cos(i)*n,Math.sin(i)*n]},n};var Lc=-Bo/2,Hc=2*Bo-1e-6;mo.svg.line.radial=function(){var n=Ue(mi);return n.radius=n.x,delete n.x,n.angle=n.y,delete n.y,n},We.reverse=Je,Je.reverse=We,mo.svg.area=function(){return yi(dt)},mo.svg.area.radial=function(){var n=yi(mi);return n.radius=n.x,delete n.x,n.innerRadius=n.x0,delete n.x0,n.outerRadius=n.x1,delete n.x1,n.angle=n.y,delete n.y,n.startAngle=n.y0,delete n.y0,n.endAngle=n.y1,delete n.y1,n},mo.svg.chord=function(){function n(n,a){var c=t(this,i,n,a),l=t(this,o,n,a);return\"M\"+c.p0+r(c.r,c.p1,c.a1-c.a0)+(e(c,l)?u(c.r,c.p1,c.r,c.p0):u(c.r,c.p1,l.r,l.p0)+r(l.r,l.p1,l.a1-l.a0)+u(l.r,l.p1,c.r,c.p0))+\"Z\"}function t(n,t,e,r){var u=t.call(n,e,r),i=a.call(n,u,r),o=c.call(n,u,r)+Lc,s=l.call(n,u,r)+Lc;return{r:i,a0:o,a1:s,p0:[i*Math.cos(o),i*Math.sin(o)],p1:[i*Math.cos(s),i*Math.sin(s)]}}function e(n,t){return n.a0==t.a0&&n.a1==t.a1}function r(n,t,e){return\"A\"+n+\",\"+n+\" 0 \"+ +(e>Bo)+\",1 \"+t}function u(n,t,e,r){return\"Q 0,0 \"+r}var i=De,o=je,a=Mi,c=di,l=vi;return n.radius=function(t){return arguments.length?(a=pt(t),n):a},n.source=function(t){return arguments.length?(i=pt(t),n):i},n.target=function(t){return arguments.length?(o=pt(t),n):o},n.startAngle=function(t){return arguments.length?(c=pt(t),n):c},n.endAngle=function(t){return arguments.length?(l=pt(t),n):l},n},mo.svg.diagonal=function(){function n(n,u){var i=t.call(this,n,u),o=e.call(this,n,u),a=(i.y+o.y)/2,c=[i,{x:i.x,y:a},{x:o.x,y:a},o];return c=c.map(r),\"M\"+c[0]+\"C\"+c[1]+\" \"+c[2]+\" \"+c[3]}var t=De,e=je,r=xi;return n.source=function(e){return arguments.length?(t=pt(e),n):t},n.target=function(t){return arguments.length?(e=pt(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},mo.svg.diagonal.radial=function(){var n=mo.svg.diagonal(),t=xi,e=n.projection;return n.projection=function(n){return arguments.length?e(bi(t=n)):t},n},mo.svg.symbol=function(){function n(n,r){return(Fc.get(t.call(this,n,r))||Si)(e.call(this,n,r))}var t=wi,e=_i;return n.type=function(e){return arguments.length?(t=pt(e),n):t},n.size=function(t){return arguments.length?(e=pt(t),n):e},n};var Fc=mo.map({circle:Si,cross:function(n){var t=Math.sqrt(n/5)/2;return\"M\"+-3*t+\",\"+-t+\"H\"+-t+\"V\"+-3*t+\"H\"+t+\"V\"+-t+\"H\"+3*t+\"V\"+t+\"H\"+t+\"V\"+3*t+\"H\"+-t+\"V\"+t+\"H\"+-3*t+\"Z\"},diamond:function(n){var t=Math.sqrt(n/(2*Yc)),e=t*Yc;return\"M0,\"+-t+\"L\"+e+\",0\"+\" 0,\"+t+\" \"+-e+\",0\"+\"Z\"},square:function(n){var t=Math.sqrt(n)/2;return\"M\"+-t+\",\"+-t+\"L\"+t+\",\"+-t+\" \"+t+\",\"+t+\" \"+-t+\",\"+t+\"Z\"},\"triangle-down\":function(n){var t=Math.sqrt(n/Rc),e=t*Rc/2;return\"M0,\"+e+\"L\"+t+\",\"+-e+\" \"+-t+\",\"+-e+\"Z\"},\"triangle-up\":function(n){var t=Math.sqrt(n/Rc),e=t*Rc/2;return\"M0,\"+-e+\"L\"+t+\",\"+e+\" \"+-t+\",\"+e+\"Z\"}});mo.svg.symbolTypes=Fc.keys();var Pc,Oc,Rc=Math.sqrt(3),Yc=Math.tan(30*Go),Ic=[],Uc=0;Ic.call=Ro.call,Ic.empty=Ro.empty,Ic.node=Ro.node,Ic.size=Ro.size,mo.transition=function(n){return arguments.length?Pc?n.transition():n:Uo.transition()},mo.transition.prototype=Ic,Ic.select=function(n){var t,e,r,u=this.id,i=[];n=d(n);for(var o=-1,a=this.length;++o<a;){i.push(t=[]);for(var c=this[o],l=-1,s=c.length;++l<s;)(r=c[l])&&(e=n.call(r,r.__data__,l,o))?(\"__data__\"in r&&(e.__data__=r.__data__),Ni(e,l,u,r.__transition__[u]),t.push(e)):t.push(null)}return Ei(i,u)},Ic.selectAll=function(n){var t,e,r,u,i,o=this.id,a=[];n=v(n);for(var c=-1,l=this.length;++c<l;)for(var s=this[c],f=-1,h=s.length;++f<h;)if(r=s[f]){i=r.__transition__[o],e=n.call(r,r.__data__,f,c),a.push(t=[]);for(var g=-1,p=e.length;++g<p;)(u=e[g])&&Ni(u,g,o,i),t.push(u)}return Ei(a,o)},Ic.filter=function(n){var t,e,r,u=[];\"function\"!=typeof n&&(n=k(n));for(var i=0,o=this.length;o>i;i++){u.push(t=[]);for(var e=this[i],a=0,c=e.length;c>a;a++)(r=e[a])&&n.call(r,r.__data__,a)&&t.push(r)}return Ei(u,this.id)},Ic.tween=function(n,t){var e=this.id;return arguments.length<2?this.node().__transition__[e].tween.get(n):N(this,null==t?function(t){t.__transition__[e].tween.remove(n)}:function(r){r.__transition__[e].tween.set(n,t)})},Ic.attr=function(n,t){function e(){this.removeAttribute(a)}function r(){this.removeAttributeNS(a.space,a.local)}function u(n){return null==n?e:(n+=\"\",function(){var t,e=this.getAttribute(a);return e!==n&&(t=o(e,n),function(n){this.setAttribute(a,t(n))})})}function i(n){return null==n?r:(n+=\"\",function(){var t,e=this.getAttributeNS(a.space,a.local);return e!==n&&(t=o(e,n),function(n){this.setAttributeNS(a.space,a.local,t(n))\n",
"})})}if(arguments.length<2){for(t in n)this.attr(t,n[t]);return this}var o=\"transform\"==n?Br:Er,a=mo.ns.qualify(n);return ki(this,\"attr.\"+n,t,a.local?i:u)},Ic.attrTween=function(n,t){function e(n,e){var r=t.call(this,n,e,this.getAttribute(u));return r&&function(n){this.setAttribute(u,r(n))}}function r(n,e){var r=t.call(this,n,e,this.getAttributeNS(u.space,u.local));return r&&function(n){this.setAttributeNS(u.space,u.local,r(n))}}var u=mo.ns.qualify(n);return this.tween(\"attr.\"+n,u.local?r:e)},Ic.style=function(n,t,e){function r(){this.style.removeProperty(n)}function u(t){return null==t?r:(t+=\"\",function(){var r,u=_o.getComputedStyle(this,null).getPropertyValue(n);return u!==t&&(r=Er(u,t),function(t){this.style.setProperty(n,r(t),e)})})}var i=arguments.length;if(3>i){if(\"string\"!=typeof n){2>i&&(t=\"\");for(e in n)this.style(e,n[e],t);return this}e=\"\"}return ki(this,\"style.\"+n,t,u)},Ic.styleTween=function(n,t,e){function r(r,u){var i=t.call(this,r,u,_o.getComputedStyle(this,null).getPropertyValue(n));return i&&function(t){this.style.setProperty(n,i(t),e)}}return arguments.length<3&&(e=\"\"),this.tween(\"style.\"+n,r)},Ic.text=function(n){return ki(this,\"text\",n,Ai)},Ic.remove=function(){return this.each(\"end.transition\",function(){var n;this.__transition__.count<2&&(n=this.parentNode)&&n.removeChild(this)})},Ic.ease=function(n){var t=this.id;return arguments.length<1?this.node().__transition__[t].ease:(\"function\"!=typeof n&&(n=mo.ease.apply(mo,arguments)),N(this,function(e){e.__transition__[t].ease=n}))},Ic.delay=function(n){var t=this.id;return N(this,\"function\"==typeof n?function(e,r,u){e.__transition__[t].delay=+n.call(e,e.__data__,r,u)}:(n=+n,function(e){e.__transition__[t].delay=n}))},Ic.duration=function(n){var t=this.id;return N(this,\"function\"==typeof n?function(e,r,u){e.__transition__[t].duration=Math.max(1,n.call(e,e.__data__,r,u))}:(n=Math.max(1,n),function(e){e.__transition__[t].duration=n}))},Ic.each=function(n,t){var e=this.id;if(arguments.length<2){var r=Oc,u=Pc;Pc=e,N(this,function(t,r,u){Oc=t.__transition__[e],n.call(t,t.__data__,r,u)}),Oc=r,Pc=u}else N(this,function(r){var u=r.__transition__[e];(u.event||(u.event=mo.dispatch(\"start\",\"end\"))).on(n,t)});return this},Ic.transition=function(){for(var n,t,e,r,u=this.id,i=++Uc,o=[],a=0,c=this.length;c>a;a++){o.push(n=[]);for(var t=this[a],l=0,s=t.length;s>l;l++)(e=t[l])&&(r=Object.create(e.__transition__[u]),r.delay+=r.duration,Ni(e,l,i,r)),n.push(e)}return Ei(o,i)},mo.svg.axis=function(){function n(n){n.each(function(){var n,l=mo.select(this),s=null==c?e.ticks?e.ticks.apply(e,a):e.domain():c,f=null==t?e.tickFormat?e.tickFormat.apply(e,a):dt:t,h=l.selectAll(\".tick\").data(s,e),g=h.enter().insert(\"g\",\".domain\").attr(\"class\",\"tick\").style(\"opacity\",1e-6),p=mo.transition(h.exit()).style(\"opacity\",1e-6).remove(),d=mo.transition(h).style(\"opacity\",1),v=Bu(e),m=l.selectAll(\".domain\").data([0]),y=(m.enter().append(\"path\").attr(\"class\",\"domain\"),mo.transition(m)),M=e.copy(),x=this.__chart__||M;this.__chart__=M,g.append(\"line\"),g.append(\"text\");var b=g.select(\"line\"),_=d.select(\"line\"),w=h.select(\"text\").text(f),S=g.select(\"text\"),E=d.select(\"text\");switch(r){case\"bottom\":n=Ti,b.attr(\"y2\",u),S.attr(\"y\",Math.max(u,0)+o),_.attr(\"x2\",0).attr(\"y2\",u),E.attr(\"x\",0).attr(\"y\",Math.max(u,0)+o),w.attr(\"dy\",\".71em\").style(\"text-anchor\",\"middle\"),y.attr(\"d\",\"M\"+v[0]+\",\"+i+\"V0H\"+v[1]+\"V\"+i);break;case\"top\":n=Ti,b.attr(\"y2\",-u),S.attr(\"y\",-(Math.max(u,0)+o)),_.attr(\"x2\",0).attr(\"y2\",-u),E.attr(\"x\",0).attr(\"y\",-(Math.max(u,0)+o)),w.attr(\"dy\",\"0em\").style(\"text-anchor\",\"middle\"),y.attr(\"d\",\"M\"+v[0]+\",\"+-i+\"V0H\"+v[1]+\"V\"+-i);break;case\"left\":n=qi,b.attr(\"x2\",-u),S.attr(\"x\",-(Math.max(u,0)+o)),_.attr(\"x2\",-u).attr(\"y2\",0),E.attr(\"x\",-(Math.max(u,0)+o)).attr(\"y\",0),w.attr(\"dy\",\".32em\").style(\"text-anchor\",\"end\"),y.attr(\"d\",\"M\"+-i+\",\"+v[0]+\"H0V\"+v[1]+\"H\"+-i);break;case\"right\":n=qi,b.attr(\"x2\",u),S.attr(\"x\",Math.max(u,0)+o),_.attr(\"x2\",u).attr(\"y2\",0),E.attr(\"x\",Math.max(u,0)+o).attr(\"y\",0),w.attr(\"dy\",\".32em\").style(\"text-anchor\",\"start\"),y.attr(\"d\",\"M\"+i+\",\"+v[0]+\"H0V\"+v[1]+\"H\"+i)}if(e.rangeBand){var k=M.rangeBand()/2,A=function(n){return M(n)+k};g.call(n,A),d.call(n,A)}else g.call(n,x),d.call(n,M),p.call(n,M)})}var t,e=mo.scale.linear(),r=Zc,u=6,i=6,o=3,a=[10],c=null;return n.scale=function(t){return arguments.length?(e=t,n):e},n.orient=function(t){return arguments.length?(r=t in Vc?t+\"\":Zc,n):r},n.ticks=function(){return arguments.length?(a=arguments,n):a},n.tickValues=function(t){return arguments.length?(c=t,n):c},n.tickFormat=function(e){return arguments.length?(t=e,n):t},n.tickSize=function(t){var e=arguments.length;return e?(u=+t,i=+arguments[e-1],n):u},n.innerTickSize=function(t){return arguments.length?(u=+t,n):u},n.outerTickSize=function(t){return arguments.length?(i=+t,n):i},n.tickPadding=function(t){return arguments.length?(o=+t,n):o},n.tickSubdivide=function(){return arguments.length&&n},n};var Zc=\"bottom\",Vc={top:1,right:1,bottom:1,left:1};mo.svg.brush=function(){function n(i){i.each(function(){var i=mo.select(this).style(\"pointer-events\",\"all\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\").on(\"mousedown.brush\",u).on(\"touchstart.brush\",u),o=i.selectAll(\".background\").data([0]);o.enter().append(\"rect\").attr(\"class\",\"background\").style(\"visibility\",\"hidden\").style(\"cursor\",\"crosshair\"),i.selectAll(\".extent\").data([0]).enter().append(\"rect\").attr(\"class\",\"extent\").style(\"cursor\",\"move\");var a=i.selectAll(\".resize\").data(v,dt);a.exit().remove(),a.enter().append(\"g\").attr(\"class\",function(n){return\"resize \"+n}).style(\"cursor\",function(n){return Xc[n]}).append(\"rect\").attr(\"x\",function(n){return/[ew]$/.test(n)?-3:null}).attr(\"y\",function(n){return/^[ns]/.test(n)?-3:null}).attr(\"width\",6).attr(\"height\",6).style(\"visibility\",\"hidden\"),a.style(\"display\",n.empty()?\"none\":null);var s,f=mo.transition(i),h=mo.transition(o);c&&(s=Bu(c),h.attr(\"x\",s[0]).attr(\"width\",s[1]-s[0]),e(f)),l&&(s=Bu(l),h.attr(\"y\",s[0]).attr(\"height\",s[1]-s[0]),r(f)),t(f)})}function t(n){n.selectAll(\".resize\").attr(\"transform\",function(n){return\"translate(\"+s[+/e$/.test(n)]+\",\"+h[+/^s/.test(n)]+\")\"})}function e(n){n.select(\".extent\").attr(\"x\",s[0]),n.selectAll(\".extent,.n>rect,.s>rect\").attr(\"width\",s[1]-s[0])}function r(n){n.select(\".extent\").attr(\"y\",h[0]),n.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\",h[1]-h[0])}function u(){function u(){32==mo.event.keyCode&&(N||(M=null,q[0]-=s[1],q[1]-=h[1],N=2),f())}function g(){32==mo.event.keyCode&&2==N&&(q[0]+=s[1],q[1]+=h[1],N=0,f())}function v(){var n=mo.mouse(b),u=!1;x&&(n[0]+=x[0],n[1]+=x[1]),N||(mo.event.altKey?(M||(M=[(s[0]+s[1])/2,(h[0]+h[1])/2]),q[0]=s[+(n[0]<M[0])],q[1]=h[+(n[1]<M[1])]):M=null),k&&m(n,c,0)&&(e(S),u=!0),A&&m(n,l,1)&&(r(S),u=!0),u&&(t(S),w({type:\"brush\",mode:N?\"move\":\"resize\"}))}function m(n,t,e){var r,u,a=Bu(t),c=a[0],l=a[1],f=q[e],g=e?h:s,v=g[1]-g[0];return N&&(c-=f,l-=v+f),r=(e?d:p)?Math.max(c,Math.min(l,n[e])):n[e],N?u=(r+=f)+v:(M&&(f=Math.max(c,Math.min(l,2*M[e]-r))),r>f?(u=r,r=f):u=f),g[0]!=r||g[1]!=u?(e?o=null:i=null,g[0]=r,g[1]=u,!0):void 0}function y(){v(),S.style(\"pointer-events\",\"all\").selectAll(\".resize\").style(\"display\",n.empty()?\"none\":null),mo.select(\"body\").style(\"cursor\",null),z.on(\"mousemove.brush\",null).on(\"mouseup.brush\",null).on(\"touchmove.brush\",null).on(\"touchend.brush\",null).on(\"keydown.brush\",null).on(\"keyup.brush\",null),T(),w({type:\"brushend\"})}var M,x,b=this,_=mo.select(mo.event.target),w=a.of(b,arguments),S=mo.select(b),E=_.datum(),k=!/^(n|s)$/.test(E)&&c,A=!/^(e|w)$/.test(E)&&l,N=_.classed(\"extent\"),T=L(),q=mo.mouse(b),z=mo.select(_o).on(\"keydown.brush\",u).on(\"keyup.brush\",g);if(mo.event.changedTouches?z.on(\"touchmove.brush\",v).on(\"touchend.brush\",y):z.on(\"mousemove.brush\",v).on(\"mouseup.brush\",y),S.interrupt().selectAll(\"*\").interrupt(),N)q[0]=s[0]-q[0],q[1]=h[0]-q[1];else if(E){var C=+/w$/.test(E),D=+/^n/.test(E);x=[s[1-C]-q[0],h[1-D]-q[1]],q[0]=s[C],q[1]=h[D]}else mo.event.altKey&&(M=q.slice());S.style(\"pointer-events\",\"none\").selectAll(\".resize\").style(\"display\",null),mo.select(\"body\").style(\"cursor\",_.style(\"cursor\")),w({type:\"brushstart\"}),v()}var i,o,a=g(n,\"brushstart\",\"brush\",\"brushend\"),c=null,l=null,s=[0,0],h=[0,0],p=!0,d=!0,v=$c[0];return n.event=function(n){n.each(function(){var n=a.of(this,arguments),t={x:s,y:h,i:i,j:o},e=this.__chart__||t;this.__chart__=t,Pc?mo.select(this).transition().each(\"start.brush\",function(){i=e.i,o=e.j,s=e.x,h=e.y,n({type:\"brushstart\"})}).tween(\"brush:brush\",function(){var e=kr(s,t.x),r=kr(h,t.y);return i=o=null,function(u){s=t.x=e(u),h=t.y=r(u),n({type:\"brush\",mode:\"resize\"})}}).each(\"end.brush\",function(){i=t.i,o=t.j,n({type:\"brush\",mode:\"resize\"}),n({type:\"brushend\"})}):(n({type:\"brushstart\"}),n({type:\"brush\",mode:\"resize\"}),n({type:\"brushend\"}))})},n.x=function(t){return arguments.length?(c=t,v=$c[!c<<1|!l],n):c},n.y=function(t){return arguments.length?(l=t,v=$c[!c<<1|!l],n):l},n.clamp=function(t){return arguments.length?(c&&l?(p=!!t[0],d=!!t[1]):c?p=!!t:l&&(d=!!t),n):c&&l?[p,d]:c?p:l?d:null},n.extent=function(t){var e,r,u,a,f;return arguments.length?(c&&(e=t[0],r=t[1],l&&(e=e[0],r=r[0]),i=[e,r],c.invert&&(e=c(e),r=c(r)),e>r&&(f=e,e=r,r=f),(e!=s[0]||r!=s[1])&&(s=[e,r])),l&&(u=t[0],a=t[1],c&&(u=u[1],a=a[1]),o=[u,a],l.invert&&(u=l(u),a=l(a)),u>a&&(f=u,u=a,a=f),(u!=h[0]||a!=h[1])&&(h=[u,a])),n):(c&&(i?(e=i[0],r=i[1]):(e=s[0],r=s[1],c.invert&&(e=c.invert(e),r=c.invert(r)),e>r&&(f=e,e=r,r=f))),l&&(o?(u=o[0],a=o[1]):(u=h[0],a=h[1],l.invert&&(u=l.invert(u),a=l.invert(a)),u>a&&(f=u,u=a,a=f))),c&&l?[[e,u],[r,a]]:c?[e,r]:l&&[u,a])},n.clear=function(){return n.empty()||(s=[0,0],h=[0,0],i=o=null),n},n.empty=function(){return!!c&&s[0]==s[1]||!!l&&h[0]==h[1]},mo.rebind(n,a,\"on\")};var Xc={n:\"ns-resize\",e:\"ew-resize\",s:\"ns-resize\",w:\"ew-resize\",nw:\"nwse-resize\",ne:\"nesw-resize\",se:\"nwse-resize\",sw:\"nesw-resize\"},$c=[[\"n\",\"e\",\"s\",\"w\",\"nw\",\"ne\",\"se\",\"sw\"],[\"e\",\"w\"],[\"n\",\"s\"],[]],Bc=mo.time={},Wc=Date,Jc=[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"];zi.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){Gc.setUTCDate.apply(this._,arguments)},setDay:function(){Gc.setUTCDay.apply(this._,arguments)},setFullYear:function(){Gc.setUTCFullYear.apply(this._,arguments)},setHours:function(){Gc.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){Gc.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){Gc.setUTCMinutes.apply(this._,arguments)},setMonth:function(){Gc.setUTCMonth.apply(this._,arguments)},setSeconds:function(){Gc.setUTCSeconds.apply(this._,arguments)},setTime:function(){Gc.setTime.apply(this._,arguments)}};var Gc=Date.prototype,Kc=\"%a %b %e %X %Y\",Qc=\"%m/%d/%Y\",nl=\"%H:%M:%S\",tl=[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],el=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],rl=[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],ul=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];Bc.year=Ci(function(n){return n=Bc.day(n),n.setMonth(0,1),n},function(n,t){n.setFullYear(n.getFullYear()+t)},function(n){return n.getFullYear()}),Bc.years=Bc.year.range,Bc.years.utc=Bc.year.utc.range,Bc.day=Ci(function(n){var t=new Wc(2e3,0);return t.setFullYear(n.getFullYear(),n.getMonth(),n.getDate()),t},function(n,t){n.setDate(n.getDate()+t)},function(n){return n.getDate()-1}),Bc.days=Bc.day.range,Bc.days.utc=Bc.day.utc.range,Bc.dayOfYear=function(n){var t=Bc.year(n);return Math.floor((n-t-6e4*(n.getTimezoneOffset()-t.getTimezoneOffset()))/864e5)},Jc.forEach(function(n,t){n=n.toLowerCase(),t=7-t;var e=Bc[n]=Ci(function(n){return(n=Bc.day(n)).setDate(n.getDate()-(n.getDay()+t)%7),n},function(n,t){n.setDate(n.getDate()+7*Math.floor(t))},function(n){var e=Bc.year(n).getDay();return Math.floor((Bc.dayOfYear(n)+(e+t)%7)/7)-(e!==t)});Bc[n+\"s\"]=e.range,Bc[n+\"s\"].utc=e.utc.range,Bc[n+\"OfYear\"]=function(n){var e=Bc.year(n).getDay();return Math.floor((Bc.dayOfYear(n)+(e+t)%7)/7)}}),Bc.week=Bc.sunday,Bc.weeks=Bc.sunday.range,Bc.weeks.utc=Bc.sunday.utc.range,Bc.weekOfYear=Bc.sundayOfYear,Bc.format=ji;var il=Hi(tl),ol=Fi(tl),al=Hi(el),cl=Fi(el),ll=Hi(rl),sl=Fi(rl),fl=Hi(ul),hl=Fi(ul),gl=/^%/,pl={\"-\":\"\",_:\" \",0:\"0\"},dl={a:function(n){return el[n.getDay()]},A:function(n){return tl[n.getDay()]},b:function(n){return ul[n.getMonth()]},B:function(n){return rl[n.getMonth()]},c:ji(Kc),d:function(n,t){return Pi(n.getDate(),t,2)},e:function(n,t){return Pi(n.getDate(),t,2)},H:function(n,t){return Pi(n.getHours(),t,2)},I:function(n,t){return Pi(n.getHours()%12||12,t,2)},j:function(n,t){return Pi(1+Bc.dayOfYear(n),t,3)},L:function(n,t){return Pi(n.getMilliseconds(),t,3)},m:function(n,t){return Pi(n.getMonth()+1,t,2)},M:function(n,t){return Pi(n.getMinutes(),t,2)},p:function(n){return n.getHours()>=12?\"PM\":\"AM\"},S:function(n,t){return Pi(n.getSeconds(),t,2)},U:function(n,t){return Pi(Bc.sundayOfYear(n),t,2)},w:function(n){return n.getDay()},W:function(n,t){return Pi(Bc.mondayOfYear(n),t,2)},x:ji(Qc),X:ji(nl),y:function(n,t){return Pi(n.getFullYear()%100,t,2)},Y:function(n,t){return Pi(n.getFullYear()%1e4,t,4)},Z:ao,\"%\":function(){return\"%\"}},vl={a:Oi,A:Ri,b:Zi,B:Vi,c:Xi,d:no,e:no,H:eo,I:eo,j:to,L:io,m:Qi,M:ro,p:oo,S:uo,U:Ii,w:Yi,W:Ui,x:$i,X:Bi,y:Ji,Y:Wi,Z:Gi,\"%\":co},ml=/^\\s*\\d+/,yl=mo.map({am:0,pm:1});ji.utc=lo;var Ml=lo(\"%Y-%m-%dT%H:%M:%S.%LZ\");ji.iso=Date.prototype.toISOString&&+new Date(\"2000-01-01T00:00:00.000Z\")?so:Ml,so.parse=function(n){var t=new Date(n);return isNaN(t)?null:t},so.toString=Ml.toString,Bc.second=Ci(function(n){return new Wc(1e3*Math.floor(n/1e3))},function(n,t){n.setTime(n.getTime()+1e3*Math.floor(t))},function(n){return n.getSeconds()}),Bc.seconds=Bc.second.range,Bc.seconds.utc=Bc.second.utc.range,Bc.minute=Ci(function(n){return new Wc(6e4*Math.floor(n/6e4))},function(n,t){n.setTime(n.getTime()+6e4*Math.floor(t))},function(n){return n.getMinutes()}),Bc.minutes=Bc.minute.range,Bc.minutes.utc=Bc.minute.utc.range,Bc.hour=Ci(function(n){var t=n.getTimezoneOffset()/60;return new Wc(36e5*(Math.floor(n/36e5-t)+t))},function(n,t){n.setTime(n.getTime()+36e5*Math.floor(t))},function(n){return n.getHours()}),Bc.hours=Bc.hour.range,Bc.hours.utc=Bc.hour.utc.range,Bc.month=Ci(function(n){return n=Bc.day(n),n.setDate(1),n},function(n,t){n.setMonth(n.getMonth()+t)},function(n){return n.getMonth()}),Bc.months=Bc.month.range,Bc.months.utc=Bc.month.utc.range;var xl=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],bl=[[Bc.second,1],[Bc.second,5],[Bc.second,15],[Bc.second,30],[Bc.minute,1],[Bc.minute,5],[Bc.minute,15],[Bc.minute,30],[Bc.hour,1],[Bc.hour,3],[Bc.hour,6],[Bc.hour,12],[Bc.day,1],[Bc.day,2],[Bc.week,1],[Bc.month,1],[Bc.month,3],[Bc.year,1]],_l=[[ji(\"%Y\"),Vt],[ji(\"%B\"),function(n){return n.getMonth()}],[ji(\"%b %d\"),function(n){return 1!=n.getDate()}],[ji(\"%a %d\"),function(n){return n.getDay()&&1!=n.getDate()}],[ji(\"%I %p\"),function(n){return n.getHours()}],[ji(\"%I:%M\"),function(n){return n.getMinutes()}],[ji(\":%S\"),function(n){return n.getSeconds()}],[ji(\".%L\"),function(n){return n.getMilliseconds()}]],wl=go(_l);bl.year=Bc.year,Bc.scale=function(){return fo(mo.scale.linear(),bl,wl)};var Sl={range:function(n,t,e){return mo.range(+n,+t,e).map(ho)}},El=bl.map(function(n){return[n[0].utc,n[1]]}),kl=[[lo(\"%Y\"),Vt],[lo(\"%B\"),function(n){return n.getUTCMonth()}],[lo(\"%b %d\"),function(n){return 1!=n.getUTCDate()}],[lo(\"%a %d\"),function(n){return n.getUTCDay()&&1!=n.getUTCDate()}],[lo(\"%I %p\"),function(n){return n.getUTCHours()}],[lo(\"%I:%M\"),function(n){return n.getUTCMinutes()}],[lo(\":%S\"),function(n){return n.getUTCSeconds()}],[lo(\".%L\"),function(n){return n.getUTCMilliseconds()}]],Al=go(kl);return El.year=Bc.year.utc,Bc.scale.utc=function(){return fo(mo.scale.linear(),El,Al)},mo.text=vt(function(n){return n.responseText}),mo.json=function(n,t){return mt(n,\"application/json\",po,t)},mo.html=function(n,t){return mt(n,\"text/html\",vo,t)},mo.xml=vt(function(n){return n.responseXML}),mo}();/*\n",
" Copyright (c) 2010, Linden Research, Inc.\n",
" Copyright (c) 2014, Joshua Bell\n",
"\n",
" Permission is hereby granted, free of charge, to any person obtaining a copy\n",
" of this software and associated documentation files (the \"Software\"), to deal\n",
" in the Software without restriction, including without limitation the rights\n",
" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n",
" copies of the Software, and to permit persons to whom the Software is\n",
" furnished to do so, subject to the following conditions:\n",
"\n",
" The above copyright notice and this permission notice shall be included in\n",
" all copies or substantial portions of the Software.\n",
"\n",
" THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n",
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n",
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n",
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n",
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n",
" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n",
" THE SOFTWARE.\n",
" $/LicenseInfo$\n",
" */\n",
"\n",
"// Original can be found at:\n",
"// https://bitbucket.org/lindenlab/llsd\n",
"// Modifications by Joshua Bell inexorabletash@gmail.com\n",
"// https://github.com/inexorabletash/polyfill\n",
"\n",
"// ES3/ES5 implementation of the Krhonos Typed Array Specification\n",
"// Ref: http://www.khronos.org/registry/typedarray/specs/latest/\n",
"// Date: 2011-02-01\n",
"//\n",
"// Variations:\n",
"// * Allows typed_array.get/set() as alias for subscripts (typed_array[])\n",
"// * Gradually migrating structure from Khronos spec to ES6 spec\n",
"(function(global) {\n",
" 'use strict';\n",
" var undefined = (void 0); // Paranoia\n",
"\n",
" // Beyond this value, index getters/setters (i.e. array[0], array[1]) are so slow to\n",
" // create, and consume so much memory, that the browser appears frozen.\n",
" var MAX_ARRAY_LENGTH = 1e5;\n",
"\n",
" // Approximations of internal ECMAScript conversion functions\n",
" function Type(v) {\n",
" switch(typeof v) {\n",
" case 'undefined': return 'undefined';\n",
" case 'boolean': return 'boolean';\n",
" case 'number': return 'number';\n",
" case 'string': return 'string';\n",
" default: return v === null ? 'null' : 'object';\n",
" }\n",
" }\n",
"\n",
" // Class returns internal [[Class]] property, used to avoid cross-frame instanceof issues:\n",
" function Class(v) { return Object.prototype.toString.call(v).replace(/^\\[object *|\\]$/g, ''); }\n",
" function IsCallable(o) { return typeof o === 'function'; }\n",
" function ToObject(v) {\n",
" if (v === null || v === undefined) throw TypeError();\n",
" return Object(v);\n",
" }\n",
" function ToInt32(v) { return v >> 0; }\n",
" function ToUint32(v) { return v >>> 0; }\n",
"\n",
" // Snapshot intrinsics\n",
" var LN2 = Math.LN2,\n",
" abs = Math.abs,\n",
" floor = Math.floor,\n",
" log = Math.log,\n",
" max = Math.max,\n",
" min = Math.min,\n",
" pow = Math.pow,\n",
" round = Math.round;\n",
"\n",
" // emulate ES5 getter/setter API using legacy APIs\n",
" // http://blogs.msdn.com/b/ie/archive/2010/09/07/transitioning-existing-code-to-the-es5-getter-setter-apis.aspx\n",
" // (second clause tests for Object.defineProperty() in IE<9 that only supports extending DOM prototypes, but\n",
" // note that IE<9 does not support __defineGetter__ or __defineSetter__ so it just renders the method harmless)\n",
"\n",
" (function() {\n",
" var orig = Object.defineProperty;\n",
" var dom_only = !(function(){try{return Object.defineProperty({},'x',{});}catch(_){return false;}}());\n",
"\n",
" if (!orig || dom_only) {\n",
" Object.defineProperty = function (o, prop, desc) {\n",
" // In IE8 try built-in implementation for defining properties on DOM prototypes.\n",
" if (orig)\n",
" try { return orig(o, prop, desc); } catch (_) {}\n",
" if (o !== Object(o))\n",
" throw TypeError('Object.defineProperty called on non-object');\n",
" if (Object.prototype.__defineGetter__ && ('get' in desc))\n",
" Object.prototype.__defineGetter__.call(o, prop, desc.get);\n",
" if (Object.prototype.__defineSetter__ && ('set' in desc))\n",
" Object.prototype.__defineSetter__.call(o, prop, desc.set);\n",
" if ('value' in desc)\n",
" o[prop] = desc.value;\n",
" return o;\n",
" };\n",
" }\n",
" }());\n",
"\n",
" // ES5: Make obj[index] an alias for obj._getter(index)/obj._setter(index, value)\n",
" // for index in 0 ... obj.length\n",
" function makeArrayAccessors(obj) {\n",
" if (obj.length > MAX_ARRAY_LENGTH) throw RangeError('Array too large for polyfill');\n",
"\n",
" function makeArrayAccessor(index) {\n",
" Object.defineProperty(obj, index, {\n",
" 'get': function() { return obj._getter(index); },\n",
" 'set': function(v) { obj._setter(index, v); },\n",
" enumerable: true,\n",
" configurable: false\n",
" });\n",
" }\n",
"\n",
" var i;\n",
" for (i = 0; i < obj.length; i += 1) {\n",
" makeArrayAccessor(i);\n",
" }\n",
" }\n",
"\n",
" // Internal conversion functions:\n",
" // pack<Type>() - take a number (interpreted as Type), output a byte array\n",
" // unpack<Type>() - take a byte array, output a Type-like number\n",
"\n",
" function as_signed(value, bits) { var s = 32 - bits; return (value << s) >> s; }\n",
" function as_unsigned(value, bits) { var s = 32 - bits; return (value << s) >>> s; }\n",
"\n",
" function packI8(n) { return [n & 0xff]; }\n",
" function unpackI8(bytes) { return as_signed(bytes[0], 8); }\n",
"\n",
" function packU8(n) { return [n & 0xff]; }\n",
" function unpackU8(bytes) { return as_unsigned(bytes[0], 8); }\n",
"\n",
" function packU8Clamped(n) { n = round(Number(n)); return [n < 0 ? 0 : n > 0xff ? 0xff : n & 0xff]; }\n",
"\n",
" function packI16(n) { return [(n >> 8) & 0xff, n & 0xff]; }\n",
" function unpackI16(bytes) { return as_signed(bytes[0] << 8 | bytes[1], 16); }\n",
"\n",
" function packU16(n) { return [(n >> 8) & 0xff, n & 0xff]; }\n",
" function unpackU16(bytes) { return as_unsigned(bytes[0] << 8 | bytes[1], 16); }\n",
"\n",
" function packI32(n) { return [(n >> 24) & 0xff, (n >> 16) & 0xff, (n >> 8) & 0xff, n & 0xff]; }\n",
" function unpackI32(bytes) { return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); }\n",
"\n",
" function packU32(n) { return [(n >> 24) & 0xff, (n >> 16) & 0xff, (n >> 8) & 0xff, n & 0xff]; }\n",
" function unpackU32(bytes) { return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); }\n",
"\n",
" function packIEEE754(v, ebits, fbits) {\n",
"\n",
" var bias = (1 << (ebits - 1)) - 1,\n",
" s, e, f, ln,\n",
" i, bits, str, bytes;\n",
"\n",
" function roundToEven(n) {\n",
" var w = floor(n), f = n - w;\n",
" if (f < 0.5)\n",
" return w;\n",
" if (f > 0.5)\n",
" return w + 1;\n",
" return w % 2 ? w + 1 : w;\n",
" }\n",
"\n",
" // Compute sign, exponent, fraction\n",
" if (v !== v) {\n",
" // NaN\n",
" // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping\n",
" e = (1 << ebits) - 1; f = pow(2, fbits - 1); s = 0;\n",
" } else if (v === Infinity || v === -Infinity) {\n",
" e = (1 << ebits) - 1; f = 0; s = (v < 0) ? 1 : 0;\n",
" } else if (v === 0) {\n",
" e = 0; f = 0; s = (1 / v === -Infinity) ? 1 : 0;\n",
" } else {\n",
" s = v < 0;\n",
" v = abs(v);\n",
"\n",
" if (v >= pow(2, 1 - bias)) {\n",
" e = min(floor(log(v) / LN2), 1023);\n",
" f = roundToEven(v / pow(2, e) * pow(2, fbits));\n",
" if (f / pow(2, fbits) >= 2) {\n",
" e = e + 1;\n",
" f = 1;\n",
" }\n",
" if (e > bias) {\n",
" // Overflow\n",
" e = (1 << ebits) - 1;\n",
" f = 0;\n",
" } else {\n",
" // Normalized\n",
" e = e + bias;\n",
" f = f - pow(2, fbits);\n",
" }\n",
" } else {\n",
" // Denormalized\n",
" e = 0;\n",
" f = roundToEven(v / pow(2, 1 - bias - fbits));\n",
" }\n",
" }\n",
"\n",
" // Pack sign, exponent, fraction\n",
" bits = [];\n",
" for (i = fbits; i; i -= 1) { bits.push(f % 2 ? 1 : 0); f = floor(f / 2); }\n",
" for (i = ebits; i; i -= 1) { bits.push(e % 2 ? 1 : 0); e = floor(e / 2); }\n",
" bits.push(s ? 1 : 0);\n",
" bits.reverse();\n",
" str = bits.join('');\n",
"\n",
" // Bits to bytes\n",
" bytes = [];\n",
" while (str.length) {\n",
" bytes.push(parseInt(str.substring(0, 8), 2));\n",
" str = str.substring(8);\n",
" }\n",
" return bytes;\n",
" }\n",
"\n",
" function unpackIEEE754(bytes, ebits, fbits) {\n",
" // Bytes to bits\n",
" var bits = [], i, j, b, str,\n",
" bias, s, e, f;\n",
"\n",
" for (i = bytes.length; i; i -= 1) {\n",
" b = bytes[i - 1];\n",
" for (j = 8; j; j -= 1) {\n",
" bits.push(b % 2 ? 1 : 0); b = b >> 1;\n",
" }\n",
" }\n",
" bits.reverse();\n",
" str = bits.join('');\n",
"\n",
" // Unpack sign, exponent, fraction\n",
" bias = (1 << (ebits - 1)) - 1;\n",
" s = parseInt(str.substring(0, 1), 2) ? -1 : 1;\n",
" e = parseInt(str.substring(1, 1 + ebits), 2);\n",
" f = parseInt(str.substring(1 + ebits), 2);\n",
"\n",
" // Produce number\n",
" if (e === (1 << ebits) - 1) {\n",
" return f !== 0 ? NaN : s * Infinity;\n",
" } else if (e > 0) {\n",
" // Normalized\n",
" return s * pow(2, e - bias) * (1 + f / pow(2, fbits));\n",
" } else if (f !== 0) {\n",
" // Denormalized\n",
" return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));\n",
" } else {\n",
" return s < 0 ? -0 : 0;\n",
" }\n",
" }\n",
"\n",
" function unpackF64(b) { return unpackIEEE754(b, 11, 52); }\n",
" function packF64(v) { return packIEEE754(v, 11, 52); }\n",
" function unpackF32(b) { return unpackIEEE754(b, 8, 23); }\n",
" function packF32(v) { return packIEEE754(v, 8, 23); }\n",
"\n",
" //\n",
" // 3 The ArrayBuffer Type\n",
" //\n",
"\n",
" (function() {\n",
"\n",
" function ArrayBuffer(length) {\n",
" length = ToInt32(length);\n",
" if (length < 0) throw RangeError('ArrayBuffer size is not a small enough positive integer.');\n",
" Object.defineProperty(this, 'byteLength', {value: length});\n",
" Object.defineProperty(this, '_bytes', {value: Array(length)});\n",
"\n",
" for (var i = 0; i < length; i += 1)\n",
" this._bytes[i] = 0;\n",
" }\n",
"\n",
" global.ArrayBuffer = global.ArrayBuffer || ArrayBuffer;\n",
"\n",
" //\n",
" // 5 The Typed Array View Types\n",
" //\n",
"\n",
" function $TypedArray$() {\n",
"\n",
" // %TypedArray% ( length )\n",
" if (!arguments.length || typeof arguments[0] !== 'object') {\n",
" return (function(length) {\n",
" length = ToInt32(length);\n",
" if (length < 0) throw RangeError('length is not a small enough positive integer.');\n",
" Object.defineProperty(this, 'length', {value: length});\n",
" Object.defineProperty(this, 'byteLength', {value: length * this.BYTES_PER_ELEMENT});\n",
" Object.defineProperty(this, 'buffer', {value: new ArrayBuffer(this.byteLength)});\n",
" Object.defineProperty(this, 'byteOffset', {value: 0});\n",
"\n",
" }).apply(this, arguments);\n",
" }\n",
"\n",
" // %TypedArray% ( typedArray )\n",
" if (arguments.length >= 1 &&\n",
" Type(arguments[0]) === 'object' &&\n",
" arguments[0] instanceof $TypedArray$) {\n",
" return (function(typedArray){\n",
" if (this.constructor !== typedArray.constructor) throw TypeError();\n",
"\n",
" var byteLength = typedArray.length * this.BYTES_PER_ELEMENT;\n",
" Object.defineProperty(this, 'buffer', {value: new ArrayBuffer(byteLength)});\n",
" Object.defineProperty(this, 'byteLength', {value: byteLength});\n",
" Object.defineProperty(this, 'byteOffset', {value: 0});\n",
" Object.defineProperty(this, 'length', {value: typedArray.length});\n",
"\n",
" for (var i = 0; i < this.length; i += 1)\n",
" this._setter(i, typedArray._getter(i));\n",
"\n",
" }).apply(this, arguments);\n",
" }\n",
"\n",
" // %TypedArray% ( array )\n",
" if (arguments.length >= 1 &&\n",
" Type(arguments[0]) === 'object' &&\n",
" !(arguments[0] instanceof $TypedArray$) &&\n",
" !(arguments[0] instanceof ArrayBuffer || Class(arguments[0]) === 'ArrayBuffer')) {\n",
" return (function(array) {\n",
"\n",
" var byteLength = array.length * this.BYTES_PER_ELEMENT;\n",
" Object.defineProperty(this, 'buffer', {value: new ArrayBuffer(byteLength)});\n",
" Object.defineProperty(this, 'byteLength', {value: byteLength});\n",
" Object.defineProperty(this, 'byteOffset', {value: 0});\n",
" Object.defineProperty(this, 'length', {value: array.length});\n",
"\n",
" for (var i = 0; i < this.length; i += 1) {\n",
" var s = array[i];\n",
" this._setter(i, Number(s));\n",
" }\n",
" }).apply(this, arguments);\n",
" }\n",
"\n",
" // %TypedArray% ( buffer, byteOffset=0, length=undefined )\n",
" if (arguments.length >= 1 &&\n",
" Type(arguments[0]) === 'object' &&\n",
" (arguments[0] instanceof ArrayBuffer || Class(arguments[0]) === 'ArrayBuffer')) {\n",
" return (function(buffer, byteOffset, length) {\n",
"\n",
" byteOffset = ToUint32(byteOffset);\n",
" if (byteOffset > buffer.byteLength)\n",
" throw RangeError('byteOffset out of range');\n",
"\n",
" // The given byteOffset must be a multiple of the element\n",
" // size of the specific type, otherwise an exception is raised.\n",
" if (byteOffset % this.BYTES_PER_ELEMENT)\n",
" throw RangeError('buffer length minus the byteOffset is not a multiple of the element size.');\n",
"\n",
" if (length === undefined) {\n",
" var byteLength = buffer.byteLength - byteOffset;\n",
" if (byteLength % this.BYTES_PER_ELEMENT)\n",
" throw RangeError('length of buffer minus byteOffset not a multiple of the element size');\n",
" length = byteLength / this.BYTES_PER_ELEMENT;\n",
"\n",
" } else {\n",
" length = ToUint32(length);\n",
" byteLength = length * this.BYTES_PER_ELEMENT;\n",
" }\n",
"\n",
" if ((byteOffset + byteLength) > buffer.byteLength)\n",
" throw RangeError('byteOffset and length reference an area beyond the end of the buffer');\n",
"\n",
" Object.defineProperty(this, 'buffer', {value: buffer});\n",
" Object.defineProperty(this, 'byteLength', {value: byteLength});\n",
" Object.defineProperty(this, 'byteOffset', {value: byteOffset});\n",
" Object.defineProperty(this, 'length', {value: length});\n",
"\n",
" }).apply(this, arguments);\n",
" }\n",
"\n",
" // %TypedArray% ( all other argument combinations )\n",
" throw TypeError();\n",
" }\n",
"\n",
" // Properties of the %TypedArray Instrinsic Object\n",
"\n",
" // %TypedArray%.from ( source , mapfn=undefined, thisArg=undefined )\n",
" Object.defineProperty($TypedArray$, 'from', {value: function(iterable) {\n",
" return new this(iterable);\n",
" }});\n",
"\n",
" // %TypedArray%.of ( ...items )\n",
" Object.defineProperty($TypedArray$, 'of', {value: function(/*...items*/) {\n",
" return new this(arguments);\n",
" }});\n",
"\n",
" // %TypedArray%.prototype\n",
" var $TypedArrayPrototype$ = {};\n",
" $TypedArray$.prototype = $TypedArrayPrototype$;\n",
"\n",
" // WebIDL: getter type (unsigned long index);\n",
" Object.defineProperty($TypedArray$.prototype, '_getter', {value: function(index) {\n",
" if (arguments.length < 1) throw SyntaxError('Not enough arguments');\n",
"\n",
" index = ToUint32(index);\n",
" if (index >= this.length)\n",
" return undefined;\n",
"\n",
" var bytes = [], i, o;\n",
" for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT;\n",
" i < this.BYTES_PER_ELEMENT;\n",
" i += 1, o += 1) {\n",
" bytes.push(this.buffer._bytes[o]);\n",
" }\n",
" return this._unpack(bytes);\n",
" }});\n",
"\n",
" // NONSTANDARD: convenience alias for getter: type get(unsigned long index);\n",
" Object.defineProperty($TypedArray$.prototype, 'get', {value: $TypedArray$.prototype._getter});\n",
"\n",
" // WebIDL: setter void (unsigned long index, type value);\n",
" Object.defineProperty($TypedArray$.prototype, '_setter', {value: function(index, value) {\n",
" if (arguments.length < 2) throw SyntaxError('Not enough arguments');\n",
"\n",
" index = ToUint32(index);\n",
" if (index >= this.length)\n",
" return;\n",
"\n",
" var bytes = this._pack(value), i, o;\n",
" for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT;\n",
" i < this.BYTES_PER_ELEMENT;\n",
" i += 1, o += 1) {\n",
" this.buffer._bytes[o] = bytes[i];\n",
" }\n",
" }});\n",
"\n",
" // get %TypedArray%.prototype.buffer\n",
" // get %TypedArray%.prototype.byteLength\n",
" // get %TypedArray%.prototype.byteOffset\n",
" // -- applied directly to the object in the constructor\n",
"\n",
" // %TypedArray%.prototype.constructor\n",
" Object.defineProperty($TypedArray$.prototype, 'constructor', {value: $TypedArray$});\n",
"\n",
" // %TypedArray%.prototype.copyWithin (target, start, end = this.length )\n",
" Object.defineProperty($TypedArray$.prototype, 'copyWithin', {value: function(target, start) {\n",
" var end = arguments[2];\n",
"\n",
" var o = ToObject(this);\n",
" var lenVal = o.length;\n",
" var len = ToUint32(lenVal);\n",
" len = max(len, 0);\n",
" var relativeTarget = ToInt32(target);\n",
" var to;\n",
" if (relativeTarget < 0)\n",
" to = max(len + relativeTarget, 0);\n",
" else\n",
" to = min(relativeTarget, len);\n",
" var relativeStart = ToInt32(start);\n",
" var from;\n",
" if (relativeStart < 0)\n",
" from = max(len + relativeStart, 0);\n",
" else\n",
" from = min(relativeStart, len);\n",
" var relativeEnd;\n",
" if (end === undefined)\n",
" relativeEnd = len;\n",
" else\n",
" relativeEnd = ToInt32(end);\n",
" var final;\n",
" if (relativeEnd < 0)\n",
" final = max(len + relativeEnd, 0);\n",
" else\n",
" final = min(relativeEnd, len);\n",
" var count = min(final - from, len - to);\n",
" var direction;\n",
" if (from < to && to < from + count) {\n",
" direction = -1;\n",
" from = from + count - 1;\n",
" to = to + count - 1;\n",
" } else {\n",
" direction = 1;\n",
" }\n",
" while (count > 0) {\n",
" o._setter(to, o._getter(from));\n",
" from = from + direction;\n",
" to = to + direction;\n",
" count = count - 1;\n",
" }\n",
" return o;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.entries ( )\n",
" // -- defined in es6.js to shim browsers w/ native TypedArrays\n",
"\n",
" // %TypedArray%.prototype.every ( callbackfn, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'every', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" var thisArg = arguments[1];\n",
" for (var i = 0; i < len; i++) {\n",
" if (!callbackfn.call(thisArg, t._getter(i), i, t))\n",
" return false;\n",
" }\n",
" return true;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.fill (value, start = 0, end = this.length )\n",
" Object.defineProperty($TypedArray$.prototype, 'fill', {value: function(value) {\n",
" var start = arguments[1],\n",
" end = arguments[2];\n",
"\n",
" var o = ToObject(this);\n",
" var lenVal = o.length;\n",
" var len = ToUint32(lenVal);\n",
" len = max(len, 0);\n",
" var relativeStart = ToInt32(start);\n",
" var k;\n",
" if (relativeStart < 0)\n",
" k = max((len + relativeStart), 0);\n",
" else\n",
" k = min(relativeStart, len);\n",
" var relativeEnd;\n",
" if (end === undefined)\n",
" relativeEnd = len;\n",
" else\n",
" relativeEnd = ToInt32(end);\n",
" var final;\n",
" if (relativeEnd < 0)\n",
" final = max((len + relativeEnd), 0);\n",
" else\n",
" final = min(relativeEnd, len);\n",
" while (k < final) {\n",
" o._setter(k, value);\n",
" k += 1;\n",
" }\n",
" return o;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.filter ( callbackfn, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'filter', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" var res = [];\n",
" var thisp = arguments[1];\n",
" for (var i = 0; i < len; i++) {\n",
" var val = t._getter(i); // in case fun mutates this\n",
" if (callbackfn.call(thisp, val, i, t))\n",
" res.push(val);\n",
" }\n",
" return new this.constructor(res);\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.find (predicate, thisArg = undefined)\n",
" Object.defineProperty($TypedArray$.prototype, 'find', {value: function(predicate) {\n",
" var o = ToObject(this);\n",
" var lenValue = o.length;\n",
" var len = ToUint32(lenValue);\n",
" if (!IsCallable(predicate)) throw TypeError();\n",
" var t = arguments.length > 1 ? arguments[1] : undefined;\n",
" var k = 0;\n",
" while (k < len) {\n",
" var kValue = o._getter(k);\n",
" var testResult = predicate.call(t, kValue, k, o);\n",
" if (Boolean(testResult))\n",
" return kValue;\n",
" ++k;\n",
" }\n",
" return undefined;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.findIndex ( predicate, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'findIndex', {value: function(predicate) {\n",
" var o = ToObject(this);\n",
" var lenValue = o.length;\n",
" var len = ToUint32(lenValue);\n",
" if (!IsCallable(predicate)) throw TypeError();\n",
" var t = arguments.length > 1 ? arguments[1] : undefined;\n",
" var k = 0;\n",
" while (k < len) {\n",
" var kValue = o._getter(k);\n",
" var testResult = predicate.call(t, kValue, k, o);\n",
" if (Boolean(testResult))\n",
" return k;\n",
" ++k;\n",
" }\n",
" return -1;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.forEach ( callbackfn, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'forEach', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" var thisp = arguments[1];\n",
" for (var i = 0; i < len; i++)\n",
" callbackfn.call(thisp, t._getter(i), i, t);\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.indexOf (searchElement, fromIndex = 0 )\n",
" Object.defineProperty($TypedArray$.prototype, 'indexOf', {value: function(searchElement) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (len === 0) return -1;\n",
" var n = 0;\n",
" if (arguments.length > 0) {\n",
" n = Number(arguments[1]);\n",
" if (n !== n) {\n",
" n = 0;\n",
" } else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0)) {\n",
" n = (n > 0 || -1) * floor(abs(n));\n",
" }\n",
" }\n",
" if (n >= len) return -1;\n",
" var k = n >= 0 ? n : max(len - abs(n), 0);\n",
" for (; k < len; k++) {\n",
" if (t._getter(k) === searchElement) {\n",
" return k;\n",
" }\n",
" }\n",
" return -1;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.join ( separator )\n",
" Object.defineProperty($TypedArray$.prototype, 'join', {value: function(separator) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" var tmp = Array(len);\n",
" for (var i = 0; i < len; ++i)\n",
" tmp[i] = t._getter(i);\n",
" return tmp.join(separator === undefined ? ',' : separator); // Hack for IE7\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.keys ( )\n",
" // -- defined in es6.js to shim browsers w/ native TypedArrays\n",
"\n",
" // %TypedArray%.prototype.lastIndexOf ( searchElement, fromIndex = this.length-1 )\n",
" Object.defineProperty($TypedArray$.prototype, 'lastIndexOf', {value: function(searchElement) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (len === 0) return -1;\n",
" var n = len;\n",
" if (arguments.length > 1) {\n",
" n = Number(arguments[1]);\n",
" if (n !== n) {\n",
" n = 0;\n",
" } else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0)) {\n",
" n = (n > 0 || -1) * floor(abs(n));\n",
" }\n",
" }\n",
" var k = n >= 0 ? min(n, len - 1) : len - abs(n);\n",
" for (; k >= 0; k--) {\n",
" if (t._getter(k) === searchElement)\n",
" return k;\n",
" }\n",
" return -1;\n",
" }});\n",
"\n",
" // get %TypedArray%.prototype.length\n",
" // -- applied directly to the object in the constructor\n",
"\n",
" // %TypedArray%.prototype.map ( callbackfn, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'map', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" var res = []; res.length = len;\n",
" var thisp = arguments[1];\n",
" for (var i = 0; i < len; i++)\n",
" res[i] = callbackfn.call(thisp, t._getter(i), i, t);\n",
" return new this.constructor(res);\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.reduce ( callbackfn [, initialValue] )\n",
" Object.defineProperty($TypedArray$.prototype, 'reduce', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" // no value to return if no initial value and an empty array\n",
" if (len === 0 && arguments.length === 1) throw TypeError();\n",
" var k = 0;\n",
" var accumulator;\n",
" if (arguments.length >= 2) {\n",
" accumulator = arguments[1];\n",
" } else {\n",
" accumulator = t._getter(k++);\n",
" }\n",
" while (k < len) {\n",
" accumulator = callbackfn.call(undefined, accumulator, t._getter(k), k, t);\n",
" k++;\n",
" }\n",
" return accumulator;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.reduceRight ( callbackfn [, initialValue] )\n",
" Object.defineProperty($TypedArray$.prototype, 'reduceRight', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" // no value to return if no initial value, empty array\n",
" if (len === 0 && arguments.length === 1) throw TypeError();\n",
" var k = len - 1;\n",
" var accumulator;\n",
" if (arguments.length >= 2) {\n",
" accumulator = arguments[1];\n",
" } else {\n",
" accumulator = t._getter(k--);\n",
" }\n",
" while (k >= 0) {\n",
" accumulator = callbackfn.call(undefined, accumulator, t._getter(k), k, t);\n",
" k--;\n",
" }\n",
" return accumulator;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.reverse ( )\n",
" Object.defineProperty($TypedArray$.prototype, 'reverse', {value: function() {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" var half = floor(len / 2);\n",
" for (var i = 0, j = len - 1; i < half; ++i, --j) {\n",
" var tmp = t._getter(i);\n",
" t._setter(i, t._getter(j));\n",
" t._setter(j, tmp);\n",
" }\n",
" return t;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.set(array, offset = 0 )\n",
" // %TypedArray%.prototype.set(typedArray, offset = 0 )\n",
" // WebIDL: void set(TypedArray array, optional unsigned long offset);\n",
" // WebIDL: void set(sequence<type> array, optional unsigned long offset);\n",
" Object.defineProperty($TypedArray$.prototype, 'set', {value: function(index, value) {\n",
" if (arguments.length < 1) throw SyntaxError('Not enough arguments');\n",
" var array, sequence, offset, len,\n",
" i, s, d,\n",
" byteOffset, byteLength, tmp;\n",
"\n",
" if (typeof arguments[0] === 'object' && arguments[0].constructor === this.constructor) {\n",
" // void set(TypedArray array, optional unsigned long offset);\n",
" array = arguments[0];\n",
" offset = ToUint32(arguments[1]);\n",
"\n",
" if (offset + array.length > this.length) {\n",
" throw RangeError('Offset plus length of array is out of range');\n",
" }\n",
"\n",
" byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT;\n",
" byteLength = array.length * this.BYTES_PER_ELEMENT;\n",
"\n",
" if (array.buffer === this.buffer) {\n",
" tmp = [];\n",
" for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) {\n",
" tmp[i] = array.buffer._bytes[s];\n",
" }\n",
" for (i = 0, d = byteOffset; i < byteLength; i += 1, d += 1) {\n",
" this.buffer._bytes[d] = tmp[i];\n",
" }\n",
" } else {\n",
" for (i = 0, s = array.byteOffset, d = byteOffset;\n",
" i < byteLength; i += 1, s += 1, d += 1) {\n",
" this.buffer._bytes[d] = array.buffer._bytes[s];\n",
" }\n",
" }\n",
" } else if (typeof arguments[0] === 'object' && typeof arguments[0].length !== 'undefined') {\n",
" // void set(sequence<type> array, optional unsigned long offset);\n",
" sequence = arguments[0];\n",
" len = ToUint32(sequence.length);\n",
" offset = ToUint32(arguments[1]);\n",
"\n",
" if (offset + len > this.length) {\n",
" throw RangeError('Offset plus length of array is out of range');\n",
" }\n",
"\n",
" for (i = 0; i < len; i += 1) {\n",
" s = sequence[i];\n",
" this._setter(offset + i, Number(s));\n",
" }\n",
" } else {\n",
" throw TypeError('Unexpected argument type(s)');\n",
" }\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.slice ( start, end )\n",
" Object.defineProperty($TypedArray$.prototype, 'slice', {value: function(start, end) {\n",
" var o = ToObject(this);\n",
" var lenVal = o.length;\n",
" var len = ToUint32(lenVal);\n",
" var relativeStart = ToInt32(start);\n",
" var k = (relativeStart < 0) ? max(len + relativeStart, 0) : min(relativeStart, len);\n",
" var relativeEnd = (end === undefined) ? len : ToInt32(end);\n",
" var final = (relativeEnd < 0) ? max(len + relativeEnd, 0) : min(relativeEnd, len);\n",
" var count = final - k;\n",
" var c = o.constructor;\n",
" var a = new c(count);\n",
" var n = 0;\n",
" while (k < final) {\n",
" var kValue = o._getter(k);\n",
" a._setter(n, kValue);\n",
" ++k;\n",
" ++n;\n",
" }\n",
" return a;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.some ( callbackfn, thisArg = undefined )\n",
" Object.defineProperty($TypedArray$.prototype, 'some', {value: function(callbackfn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" if (!IsCallable(callbackfn)) throw TypeError();\n",
" var thisp = arguments[1];\n",
" for (var i = 0; i < len; i++) {\n",
" if (callbackfn.call(thisp, t._getter(i), i, t)) {\n",
" return true;\n",
" }\n",
" }\n",
" return false;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.sort ( comparefn )\n",
" Object.defineProperty($TypedArray$.prototype, 'sort', {value: function(comparefn) {\n",
" if (this === undefined || this === null) throw TypeError();\n",
" var t = Object(this);\n",
" var len = ToUint32(t.length);\n",
" var tmp = Array(len);\n",
" for (var i = 0; i < len; ++i)\n",
" tmp[i] = t._getter(i);\n",
" if (comparefn) tmp.sort(comparefn); else tmp.sort(); // Hack for IE8/9\n",
" for (i = 0; i < len; ++i)\n",
" t._setter(i, tmp[i]);\n",
" return t;\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.subarray(begin = 0, end = this.length )\n",
" // WebIDL: TypedArray subarray(long begin, optional long end);\n",
" Object.defineProperty($TypedArray$.prototype, 'subarray', {value: function(start, end) {\n",
" function clamp(v, min, max) { return v < min ? min : v > max ? max : v; }\n",
"\n",
" start = ToInt32(start);\n",
" end = ToInt32(end);\n",
"\n",
" if (arguments.length < 1) { start = 0; }\n",
" if (arguments.length < 2) { end = this.length; }\n",
"\n",
" if (start < 0) { start = this.length + start; }\n",
" if (end < 0) { end = this.length + end; }\n",
"\n",
" start = clamp(start, 0, this.length);\n",
" end = clamp(end, 0, this.length);\n",
"\n",
" var len = end - start;\n",
" if (len < 0) {\n",
" len = 0;\n",
" }\n",
"\n",
" return new this.constructor(\n",
" this.buffer, this.byteOffset + start * this.BYTES_PER_ELEMENT, len);\n",
" }});\n",
"\n",
" // %TypedArray%.prototype.toLocaleString ( )\n",
" // %TypedArray%.prototype.toString ( )\n",
" // %TypedArray%.prototype.values ( )\n",
" // %TypedArray%.prototype [ @@iterator ] ( )\n",
" // get %TypedArray%.prototype [ @@toStringTag ]\n",
" // -- defined in es6.js to shim browsers w/ native TypedArrays\n",
"\n",
" function makeTypedArray(elementSize, pack, unpack) {\n",
" // Each TypedArray type requires a distinct constructor instance with\n",
" // identical logic, which this produces.\n",
" var TypedArray = function() {\n",
" Object.defineProperty(this, 'constructor', {value: TypedArray});\n",
" $TypedArray$.apply(this, arguments);\n",
" makeArrayAccessors(this);\n",
" };\n",
" if ('__proto__' in TypedArray) {\n",
" TypedArray.__proto__ = $TypedArray$;\n",
" } else {\n",
" TypedArray.from = $TypedArray$.from;\n",
" TypedArray.of = $TypedArray$.of;\n",
" }\n",
"\n",
" TypedArray.BYTES_PER_ELEMENT = elementSize;\n",
"\n",
" var TypedArrayPrototype = function() {};\n",
" TypedArrayPrototype.prototype = $TypedArrayPrototype$;\n",
"\n",
" TypedArray.prototype = new TypedArrayPrototype();\n",
"\n",
" Object.defineProperty(TypedArray.prototype, 'BYTES_PER_ELEMENT', {value: elementSize});\n",
" Object.defineProperty(TypedArray.prototype, '_pack', {value: pack});\n",
" Object.defineProperty(TypedArray.prototype, '_unpack', {value: unpack});\n",
"\n",
" return TypedArray;\n",
" }\n",
"\n",
" var Int8Array = makeTypedArray(1, packI8, unpackI8);\n",
" var Uint8Array = makeTypedArray(1, packU8, unpackU8);\n",
" var Uint8ClampedArray = makeTypedArray(1, packU8Clamped, unpackU8);\n",
" var Int16Array = makeTypedArray(2, packI16, unpackI16);\n",
" var Uint16Array = makeTypedArray(2, packU16, unpackU16);\n",
" var Int32Array = makeTypedArray(4, packI32, unpackI32);\n",
" var Uint32Array = makeTypedArray(4, packU32, unpackU32);\n",
" var Float32Array = makeTypedArray(4, packF32, unpackF32);\n",
" var Float64Array = makeTypedArray(8, packF64, unpackF64);\n",
"\n",
" global.Int8Array = global.Int8Array || Int8Array;\n",
" global.Uint8Array = global.Uint8Array || Uint8Array;\n",
" global.Uint8ClampedArray = global.Uint8ClampedArray || Uint8ClampedArray;\n",
" global.Int16Array = global.Int16Array || Int16Array;\n",
" global.Uint16Array = global.Uint16Array || Uint16Array;\n",
" global.Int32Array = global.Int32Array || Int32Array;\n",
" global.Uint32Array = global.Uint32Array || Uint32Array;\n",
" global.Float32Array = global.Float32Array || Float32Array;\n",
" global.Float64Array = global.Float64Array || Float64Array;\n",
" }());\n",
"\n",
" //\n",
" // 6 The DataView View Type\n",
" //\n",
"\n",
" (function() {\n",
" function r(array, index) {\n",
" return IsCallable(array.get) ? array.get(index) : array[index];\n",
" }\n",
"\n",
" var IS_BIG_ENDIAN = (function() {\n",
" var u16array = new Uint16Array([0x1234]),\n",
" u8array = new Uint8Array(u16array.buffer);\n",
" return r(u8array, 0) === 0x12;\n",
" }());\n",
"\n",
" // DataView(buffer, byteOffset=0, byteLength=undefined)\n",
" // WebIDL: Constructor(ArrayBuffer buffer,\n",
" // optional unsigned long byteOffset,\n",
" // optional unsigned long byteLength)\n",
" function DataView(buffer, byteOffset, byteLength) {\n",
" if (!(buffer instanceof ArrayBuffer || Class(buffer) === 'ArrayBuffer')) throw TypeError();\n",
"\n",
" byteOffset = ToUint32(byteOffset);\n",
" if (byteOffset > buffer.byteLength)\n",
" throw RangeError('byteOffset out of range');\n",
"\n",
" if (byteLength === undefined)\n",
" byteLength = buffer.byteLength - byteOffset;\n",
" else\n",
" byteLength = ToUint32(byteLength);\n",
"\n",
" if ((byteOffset + byteLength) > buffer.byteLength)\n",
" throw RangeError('byteOffset and length reference an area beyond the end of the buffer');\n",
"\n",
" Object.defineProperty(this, 'buffer', {value: buffer});\n",
" Object.defineProperty(this, 'byteLength', {value: byteLength});\n",
" Object.defineProperty(this, 'byteOffset', {value: byteOffset});\n",
" };\n",
"\n",
" // get DataView.prototype.buffer\n",
" // get DataView.prototype.byteLength\n",
" // get DataView.prototype.byteOffset\n",
" // -- applied directly to instances by the constructor\n",
"\n",
" function makeGetter(arrayType) {\n",
" return function GetViewValue(byteOffset, littleEndian) {\n",
" byteOffset = ToUint32(byteOffset);\n",
"\n",
" if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength)\n",
" throw RangeError('Array index out of range');\n",
"\n",
" byteOffset += this.byteOffset;\n",
"\n",
" var uint8Array = new Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT),\n",
" bytes = [];\n",
" for (var i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1)\n",
" bytes.push(r(uint8Array, i));\n",
"\n",
" if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN))\n",
" bytes.reverse();\n",
"\n",
" return r(new arrayType(new Uint8Array(bytes).buffer), 0);\n",
" };\n",
" }\n",
"\n",
" Object.defineProperty(DataView.prototype, 'getUint8', {value: makeGetter(Uint8Array)});\n",
" Object.defineProperty(DataView.prototype, 'getInt8', {value: makeGetter(Int8Array)});\n",
" Object.defineProperty(DataView.prototype, 'getUint16', {value: makeGetter(Uint16Array)});\n",
" Object.defineProperty(DataView.prototype, 'getInt16', {value: makeGetter(Int16Array)});\n",
" Object.defineProperty(DataView.prototype, 'getUint32', {value: makeGetter(Uint32Array)});\n",
" Object.defineProperty(DataView.prototype, 'getInt32', {value: makeGetter(Int32Array)});\n",
" Object.defineProperty(DataView.prototype, 'getFloat32', {value: makeGetter(Float32Array)});\n",
" Object.defineProperty(DataView.prototype, 'getFloat64', {value: makeGetter(Float64Array)});\n",
"\n",
" function makeSetter(arrayType) {\n",
" return function SetViewValue(byteOffset, value, littleEndian) {\n",
" byteOffset = ToUint32(byteOffset);\n",
" if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength)\n",
" throw RangeError('Array index out of range');\n",
"\n",
" // Get bytes\n",
" var typeArray = new arrayType([value]),\n",
" byteArray = new Uint8Array(typeArray.buffer),\n",
" bytes = [], i, byteView;\n",
"\n",
" for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1)\n",
" bytes.push(r(byteArray, i));\n",
"\n",
" // Flip if necessary\n",
" if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN))\n",
" bytes.reverse();\n",
"\n",
" // Write them\n",
" byteView = new Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT);\n",
" byteView.set(bytes);\n",
" };\n",
" }\n",
"\n",
" Object.defineProperty(DataView.prototype, 'setUint8', {value: makeSetter(Uint8Array)});\n",
" Object.defineProperty(DataView.prototype, 'setInt8', {value: makeSetter(Int8Array)});\n",
" Object.defineProperty(DataView.prototype, 'setUint16', {value: makeSetter(Uint16Array)});\n",
" Object.defineProperty(DataView.prototype, 'setInt16', {value: makeSetter(Int16Array)});\n",
" Object.defineProperty(DataView.prototype, 'setUint32', {value: makeSetter(Uint32Array)});\n",
" Object.defineProperty(DataView.prototype, 'setInt32', {value: makeSetter(Int32Array)});\n",
" Object.defineProperty(DataView.prototype, 'setFloat32', {value: makeSetter(Float32Array)});\n",
" Object.defineProperty(DataView.prototype, 'setFloat64', {value: makeSetter(Float64Array)});\n",
"\n",
" global.DataView = global.DataView || DataView;\n",
"\n",
" }());\n",
"\n",
"}(this));\n",
"\n",
"require=requirejs=define=undefined;\n",
"\n",
"/* Copyright Plotly Inc. \n",
"All material herein is subject to copyright and 1-year license terms as described at \n",
"https://plot.ly/licensing. Using or modifying this file is strictly prohibited without\n",
"purchasing a license or receiving written permission from Plotly Inc */\n",
"\n",
"!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var e;e=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,e.Plotly=t()}}(function(){var t;return function t(e,r,n){function i(o,s){if(!r[o]){if(!e[o]){var l=\"function\"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var u=new Error(\"Cannot find module '\"+o+\"'\");throw u.code=\"MODULE_NOT_FOUND\",u}var c=r[o]={exports:{}};e[o][0].call(c.exports,function(t){var r=e[o][1][t];return i(r?r:t)},c,c.exports,t,e,r,n)}return r[o].exports}for(var a=\"function\"==typeof require&&require,o=0;o<n.length;o++)i(n[o]);return i}({1:[function(t,e,r){function n(){return i.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function i(t){return this instanceof i?(this.length=0,this.parent=void 0,\"number\"==typeof t?a(this,t):\"string\"==typeof t?o(this,t,arguments.length>1?arguments[1]:\"utf8\"):s(this,t)):arguments.length>1?new i(t,arguments[1]):new i(t)}function a(t,e){if(t=d(t,0>e?0:0|p(e)),!i.TYPED_ARRAY_SUPPORT)for(var r=0;e>r;r++)t[r]=0;return t}function o(t,e,r){(\"string\"!=typeof r||\"\"===r)&&(r=\"utf8\");var n=0|v(e,r);return t=d(t,n),t.write(e,r),t}function s(t,e){if(i.isBuffer(e))return l(t,e);if(X(e))return u(t,e);if(null==e)throw new TypeError(\"must start with number, buffer, array or string\");return\"undefined\"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer?c(t,e):e.length?f(t,e):h(t,e)}function l(t,e){var r=0|p(e.length);return t=d(t,r),e.copy(t,0,0,r),t}function u(t,e){var r=0|p(e.length);t=d(t,r);for(var n=0;r>n;n+=1)t[n]=255&e[n];return t}function c(t,e){var r=0|p(e.length);t=d(t,r);for(var n=0;r>n;n+=1)t[n]=255&e[n];return t}function f(t,e){var r=0|p(e.length);t=d(t,r);for(var n=0;r>n;n+=1)t[n]=255&e[n];return t}function h(t,e){var r,n=0;\"Buffer\"===e.type&&X(e.data)&&(r=e.data,n=0|p(r.length)),t=d(t,n);for(var i=0;n>i;i+=1)t[i]=255&r[i];return t}function d(t,e){i.TYPED_ARRAY_SUPPORT?t=i._augment(new Uint8Array(e)):(t.length=e,t._isBuffer=!0);var r=0!==e&&e<=i.poolSize>>>1;return r&&(t.parent=Z),t}function p(t){if(t>=n())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+n().toString(16)+\" bytes\");return 0|t}function g(t,e){if(!(this instanceof g))return new g(t,e);var r=new i(t,e);return delete r.parent,r}function v(t,e){\"string\"!=typeof t&&(t=\"\"+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case\"ascii\":case\"binary\":case\"raw\":case\"raws\":return r;case\"utf8\":case\"utf-8\":return F(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*r;case\"hex\":return r>>>1;case\"base64\":return H(t).length;default:if(n)return F(t).length;e=(\"\"+e).toLowerCase(),n=!0}}function m(t,e,r){var n=!1;if(e=0|e,r=void 0===r||1/0===r?this.length:0|r,t||(t=\"utf8\"),0>e&&(e=0),r>this.length&&(r=this.length),e>=r)return\"\";for(;;)switch(t){case\"hex\":return C(this,e,r);case\"utf8\":case\"utf-8\":return M(this,e,r);case\"ascii\":return L(this,e,r);case\"binary\":return E(this,e,r);case\"base64\":return A(this,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return j(this,e,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),n=!0}}function y(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n),n>i&&(n=i)):n=i;var a=e.length;if(a%2!==0)throw new Error(\"Invalid hex string\");n>a/2&&(n=a/2);for(var o=0;n>o;o++){var s=parseInt(e.substr(2*o,2),16);if(isNaN(s))throw new Error(\"Invalid hex string\");t[r+o]=s}return o}function b(t,e,r,n){return q(F(e,t.length-r),t,r,n)}function x(t,e,r,n){return q(U(e),t,r,n)}function _(t,e,r,n){return x(t,e,r,n)}function w(t,e,r,n){return q(H(e),t,r,n)}function k(t,e,r,n){return q(V(e,t.length-r),t,r,n)}function A(t,e,r){return Y.fromByteArray(0===e&&r===t.length?t:t.slice(e,r))}function M(t,e,r){var n=\"\",i=\"\";r=Math.min(t.length,r);for(var a=e;r>a;a++)t[a]<=127?(n+=G(i)+String.fromCharCode(t[a]),i=\"\"):i+=\"%\"+t[a].toString(16);return n+G(i)}function L(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;r>i;i++)n+=String.fromCharCode(127&t[i]);return n}function E(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;r>i;i++)n+=String.fromCharCode(t[i]);return n}function C(t,e,r){var n=t.length;(!e||0>e)&&(e=0),(!r||0>r||r>n)&&(r=n);for(var i=\"\",a=e;r>a;a++)i+=B(t[a]);return i}function j(t,e,r){for(var n=t.slice(e,r),i=\"\",a=0;a<n.length;a+=2)i+=String.fromCharCode(n[a]+256*n[a+1]);return i}function S(t,e,r){if(t%1!==0||0>t)throw new RangeError(\"offset is not uint\");if(t+e>r)throw new RangeError(\"Trying to access beyond buffer length\")}function T(t,e,r,n,a,o){if(!i.isBuffer(t))throw new TypeError(\"buffer must be a Buffer instance\");if(e>a||o>e)throw new RangeError(\"value is out of bounds\");if(r+n>t.length)throw new RangeError(\"index out of range\")}function z(t,e,r,n){0>e&&(e=65535+e+1);for(var i=0,a=Math.min(t.length-r,2);a>i;i++)t[r+i]=(e&255<<8*(n?i:1-i))>>>8*(n?i:1-i)}function P(t,e,r,n){0>e&&(e=4294967295+e+1);for(var i=0,a=Math.min(t.length-r,4);a>i;i++)t[r+i]=e>>>8*(n?i:3-i)&255}function I(t,e,r,n,i,a){if(e>i||a>e)throw new RangeError(\"value is out of bounds\");if(r+n>t.length)throw new RangeError(\"index out of range\");if(0>r)throw new RangeError(\"index out of range\")}function O(t,e,r,n,i){return i||I(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),W.write(t,e,r,n,23,4),r+4}function D(t,e,r,n,i){return i||I(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),W.write(t,e,r,n,52,8),r+8}function R(t){if(t=N(t).replace(K,\"\"),t.length<2)return\"\";for(;t.length%4!==0;)t+=\"=\";return t}function N(t){return t.trim?t.trim():t.replace(/^\\s+|\\s+$/g,\"\")}function B(t){return 16>t?\"0\"+t.toString(16):t.toString(16)}function F(t,e){e=e||1/0;for(var r,n=t.length,i=null,a=[],o=0;n>o;o++){if(r=t.charCodeAt(o),r>55295&&57344>r){if(!i){if(r>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(56320>r){(e-=3)>-1&&a.push(239,191,189),i=r;continue}r=i-55296<<10|r-56320|65536,i=null}else i&&((e-=3)>-1&&a.push(239,191,189),i=null);if(128>r){if((e-=1)<0)break;a.push(r)}else if(2048>r){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(65536>r){if((e-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(2097152>r))throw new Error(\"Invalid code point\");if((e-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function U(t){for(var e=[],r=0;r<t.length;r++)e.push(255&t.charCodeAt(r));return e}function V(t,e){for(var r,n,i,a=[],o=0;o<t.length&&!((e-=2)<0);o++)r=t.charCodeAt(o),n=r>>8,i=r%256,a.push(i),a.push(n);return a}function H(t){return Y.toByteArray(R(t))}function q(t,e,r,n){for(var i=0;n>i&&!(i+r>=e.length||i>=t.length);i++)e[i+r]=t[i];return i}function G(t){try{return decodeURIComponent(t)}catch(t){return String.fromCharCode(65533)}}var Y=t(\"base64-js\"),W=t(\"ieee754\"),X=t(\"is-array\");r.Buffer=i,r.SlowBuffer=g,r.INSPECT_MAX_BYTES=50,i.poolSize=8192;var Z={};i.TYPED_ARRAY_SUPPORT=function(){function t(){}try{var e=new ArrayBuffer(0),r=new Uint8Array(e);return r.foo=function(){return 42},r.constructor=t,42===r.foo()&&r.constructor===t&&\"function\"==typeof r.subarray&&0===new Uint8Array(1).subarray(1,1).byteLength}catch(t){return!1}}(),i.isBuffer=function(t){return!(null==t||!t._isBuffer)},i.compare=function(t,e){if(!i.isBuffer(t)||!i.isBuffer(e))throw new TypeError(\"Arguments must be Buffers\");if(t===e)return 0;for(var r=t.length,n=e.length,a=0,o=Math.min(r,n);o>a&&t[a]===e[a];)++a;return a!==o&&(r=t[a],n=e[a]),n>r?-1:r>n?1:0},i.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"raw\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},i.concat=function(t,e){if(!X(t))throw new TypeError(\"list argument must be an Array of Buffers.\");if(0===t.length)return new i(0);if(1===t.length)return t[0];var r;if(void 0===e)for(e=0,r=0;r<t.length;r++)e+=t[r].length;var n=new i(e),a=0;for(r=0;r<t.length;r++){var o=t[r];o.copy(n,a),a+=o.length}return n},i.byteLength=v,i.prototype.length=void 0,i.prototype.parent=void 0,i.prototype.toString=function(){var t=0|this.length;return 0===t?\"\":0===arguments.length?M(this,0,t):m.apply(this,arguments)},i.prototype.equals=function(t){if(!i.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t?!0:0===i.compare(this,t)},i.prototype.inspect=function(){var t=\"\",e=r.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString(\"hex\",0,e).match(/.{2}/g).join(\" \"),this.length>e&&(t+=\" ... \")),\"<Buffer \"+t+\">\"},i.prototype.compare=function(t){if(!i.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t?0:i.compare(this,t)},i.prototype.indexOf=function(t,e){function r(t,e,r){for(var n=-1,i=0;r+i<t.length;i++)if(t[r+i]===e[-1===n?0:i-n]){if(-1===n&&(n=i),i-n+1===e.length)return r+n}else n=-1;return-1}if(e>2147483647?e=2147483647:-2147483648>e&&(e=-2147483648),e>>=0,0===this.length)return-1;if(e>=this.length)return-1;if(0>e&&(e=Math.max(this.length+e,0)),\"string\"==typeof t)return 0===t.length?-1:String.prototype.indexOf.call(this,t,e);if(i.isBuffer(t))return r(this,t,e);if(\"number\"==typeof t)return i.TYPED_ARRAY_SUPPORT&&\"function\"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,t,e):r(this,[t],e);throw new TypeError(\"val must be string, number or Buffer\")},i.prototype.get=function(t){return console.log(\".get() is deprecated. Access using array indexes instead.\"),this.readUInt8(t)},i.prototype.set=function(t,e){return console.log(\".set() is deprecated. Access using array indexes instead.\"),this.writeUInt8(t,e)},i.prototype.write=function(t,e,r,n){if(void 0===e)n=\"utf8\",r=this.length,e=0;else if(void 0===r&&\"string\"==typeof e)n=e,r=this.length,e=0;else if(isFinite(e))e=0|e,isFinite(r)?(r=0|r,void 0===n&&(n=\"utf8\")):(n=r,r=void 0);else{var i=n;n=e,e=0|r,r=i}var a=this.length-e;if((void 0===r||r>a)&&(r=a),t.length>0&&(0>r||0>e)||e>this.length)throw new RangeError(\"attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var o=!1;;)switch(n){case\"hex\":return y(this,t,e,r);case\"utf8\":case\"utf-8\":return b(this,t,e,r);case\"ascii\":return x(this,t,e,r);case\"binary\":return _(this,t,e,r);case\"base64\":return w(this,t,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return k(this,t,e,r);default:if(o)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),o=!0}},i.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}},i.prototype.slice=function(t,e){var r=this.length;t=~~t,e=void 0===e?r:~~e,0>t?(t+=r,0>t&&(t=0)):t>r&&(t=r),0>e?(e+=r,0>e&&(e=0)):e>r&&(e=r),t>e&&(e=t);var n;if(i.TYPED_ARRAY_SUPPORT)n=i._augment(this.subarray(t,e));else{var a=e-t;n=new i(a,void 0);for(var o=0;a>o;o++)n[o]=this[o+t]}return n.length&&(n.parent=this.parent||this),n},i.prototype.readUIntLE=function(t,e,r){t=0|t,e=0|e,r||S(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return n},i.prototype.readUIntBE=function(t,e,r){t=0|t,e=0|e,r||S(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},i.prototype.readUInt8=function(t,e){return e||S(t,1,this.length),this[t]},i.prototype.readUInt16LE=function(t,e){return e||S(t,2,this.length),this[t]|this[t+1]<<8},i.prototype.readUInt16BE=function(t,e){return e||S(t,2,this.length),this[t]<<8|this[t+1]},i.prototype.readUInt32LE=function(t,e){return e||S(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},i.prototype.readUInt32BE=function(t,e){return e||S(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},i.prototype.readIntLE=function(t,e,r){t=0|t,e=0|e,r||S(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return i*=128,n>=i&&(n-=Math.pow(2,8*e)),n},i.prototype.readIntBE=function(t,e,r){t=0|t,e=0|e,r||S(t,e,this.length);for(var n=e,i=1,a=this[t+--n];n>0&&(i*=256);)a+=this[t+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*e)),a},i.prototype.readInt8=function(t,e){return e||S(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},i.prototype.readInt16LE=function(t,e){e||S(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},i.prototype.readInt16BE=function(t,e){e||S(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},i.prototype.readInt32LE=function(t,e){return e||S(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},i.prototype.readInt32BE=function(t,e){return e||S(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},i.prototype.readFloatLE=function(t,e){return e||S(t,4,this.length),W.read(this,t,!0,23,4)},i.prototype.readFloatBE=function(t,e){return e||S(t,4,this.length),W.read(this,t,!1,23,4)},i.prototype.readDoubleLE=function(t,e){return e||S(t,8,this.length),W.read(this,t,!0,52,8)},i.prototype.readDoubleBE=function(t,e){return e||S(t,8,this.length),W.read(this,t,!1,52,8)},i.prototype.writeUIntLE=function(t,e,r,n){t=+t,e=0|e,r=0|r,n||T(this,t,e,r,Math.pow(2,8*r),0);var i=1,a=0;for(this[e]=255&t;++a<r&&(i*=256);)this[e+a]=t/i&255;return e+r},i.prototype.writeUIntBE=function(t,e,r,n){t=+t,e=0|e,r=0|r,n||T(this,t,e,r,Math.pow(2,8*r),0);var i=r-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+r},i.prototype.writeUInt8=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,1,255,0),i.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=t,e+1},i.prototype.writeUInt16LE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,2,65535,0),i.TYPED_ARRAY_SUPPORT?(this[e]=t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},i.prototype.writeUInt16BE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,2,65535,0),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t):z(this,t,e,!1),e+2},i.prototype.writeUInt32LE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,4,4294967295,0),i.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=t):P(this,t,e,!0),e+4},i.prototype.writeUInt32BE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,4,4294967295,0),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t):P(this,t,e,!1),e+4},i.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e=0|e,!n){var i=Math.pow(2,8*r-1);T(this,t,e,r,i-1,-i)}var a=0,o=1,s=0>t?1:0;for(this[e]=255&t;++a<r&&(o*=256);)this[e+a]=(t/o>>0)-s&255;return e+r},i.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e=0|e,!n){var i=Math.pow(2,8*r-1);T(this,t,e,r,i-1,-i)}var a=r-1,o=1,s=0>t?1:0;for(this[e+a]=255&t;--a>=0&&(o*=256);)this[e+a]=(t/o>>0)-s&255;return e+r},i.prototype.writeInt8=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,1,127,-128),i.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),0>t&&(t=255+t+1),this[e]=t,e+1},i.prototype.writeInt16LE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,2,32767,-32768),i.TYPED_ARRAY_SUPPORT?(this[e]=t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},i.prototype.writeInt16BE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,2,32767,-32768),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=t):z(this,t,e,!1),e+2},i.prototype.writeInt32LE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,4,2147483647,-2147483648),i.TYPED_ARRAY_SUPPORT?(this[e]=t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):P(this,t,e,!0),e+4},i.prototype.writeInt32BE=function(t,e,r){return t=+t,e=0|e,r||T(this,t,e,4,2147483647,-2147483648),0>t&&(t=4294967295+t+1),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=t):P(this,t,e,!1),e+4},i.prototype.writeFloatLE=function(t,e,r){return O(this,t,e,!0,r)},i.prototype.writeFloatBE=function(t,e,r){return O(this,t,e,!1,r)},i.prototype.writeDoubleLE=function(t,e,r){return D(this,t,e,!0,r)},i.prototype.writeDoubleBE=function(t,e,r){return D(this,t,e,!1,r)},i.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&r>n&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(0>e)throw new RangeError(\"targetStart out of bounds\");if(0>r||r>=this.length)throw new RangeError(\"sourceStart out of bounds\");if(0>n)throw new RangeError(\"sourceEnd out of bounds\");n>this.length&&(n=this.length),t.length-e<n-r&&(n=t.length-e+r);var a=n-r;if(1e3>a||!i.TYPED_ARRAY_SUPPORT)for(var o=0;a>o;o++)t[o+e]=this[o+r];else t._set(this.subarray(r,r+a),e);return a},i.prototype.fill=function(t,e,r){if(t||(t=0),e||(e=0),r||(r=this.length),e>r)throw new RangeError(\"end < start\");if(r!==e&&0!==this.length){if(0>e||e>=this.length)throw new RangeError(\"start out of bounds\");if(0>r||r>this.length)throw new RangeError(\"end out of bounds\");var n;if(\"number\"==typeof t)for(n=e;r>n;n++)this[n]=t;else{var i=F(t.toString()),a=i.length;for(n=e;r>n;n++)this[n]=i[n%a]}return this}},i.prototype.toArrayBuffer=function(){if(\"undefined\"!=typeof Uint8Array){if(i.TYPED_ARRAY_SUPPORT)return new i(this).buffer;for(var t=new Uint8Array(this.length),e=0,r=t.length;r>e;e+=1)t[e]=this[e];return t.buffer}throw new TypeError(\"Buffer.toArrayBuffer not supported in this browser\")};var $=i.prototype;i._augment=function(t){return t.constructor=i,t._isBuffer=!0,t._set=t.set,t.get=$.get,t.set=$.set,t.write=$.write,t.toString=$.toString,t.toLocaleString=$.toString,t.toJSON=$.toJSON,t.equals=$.equals,t.compare=$.compare,t.indexOf=$.indexOf,t.copy=$.copy,t.slice=$.slice,t.readUIntLE=$.readUIntLE,t.readUIntBE=$.readUIntBE,t.readUInt8=$.readUInt8,t.readUInt16LE=$.readUInt16LE,t.readUInt16BE=$.readUInt16BE,t.readUInt32LE=$.readUInt32LE,t.readUInt32BE=$.readUInt32BE,t.readIntLE=$.readIntLE,t.readIntBE=$.readIntBE,t.readInt8=$.readInt8,t.readInt16LE=$.readInt16LE,t.readInt16BE=$.readInt16BE,t.readInt32LE=$.readInt32LE,t.readInt32BE=$.readInt32BE,t.readFloatLE=$.readFloatLE,t.readFloatBE=$.readFloatBE,t.readDoubleLE=$.readDoubleLE,t.readDoubleBE=$.readDoubleBE,t.writeUInt8=$.writeUInt8,t.writeUIntLE=$.writeUIntLE,t.writeUIntBE=$.writeUIntBE,t.writeUInt16LE=$.writeUInt16LE,t.writeUInt16BE=$.writeUInt16BE,t.writeUInt32LE=$.writeUInt32LE,t.writeUInt32BE=$.writeUInt32BE,t.writeIntLE=$.writeIntLE,t.writeIntBE=$.writeIntBE,t.writeInt8=$.writeInt8,t.writeInt16LE=$.writeInt16LE,t.writeInt16BE=$.writeInt16BE,t.writeInt32LE=$.writeInt32LE,t.writeInt32BE=$.writeInt32BE,t.writeFloatLE=$.writeFloatLE,t.writeFloatBE=$.writeFloatBE,t.writeDoubleLE=$.writeDoubleLE,t.writeDoubleBE=$.writeDoubleBE,t.fill=$.fill,t.inspect=$.inspect,t.toArrayBuffer=$.toArrayBuffer,t};var K=/[^+\\/0-9A-z\\-]/g},{\"base64-js\":2,ieee754:3,\"is-array\":4}],2:[function(t,e,r){var n=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";!function(t){\"use strict\";function e(t){var e=t.charCodeAt(0);return e===o||e===f?62:e===s||e===h?63:l>e?-1:l+10>e?e-l+26+26:c+26>e?e-c:u+26>e?e-u+26:void 0}function r(t){function r(t){u[f++]=t}var n,i,o,s,l,u;if(t.length%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var c=t.length;l=\"=\"===t.charAt(c-2)?2:\"=\"===t.charAt(c-1)?1:0,u=new a(3*t.length/4-l),o=l>0?t.length-4:t.length;var f=0;for(n=0,i=0;o>n;n+=4,i+=3)s=e(t.charAt(n))<<18|e(t.charAt(n+1))<<12|e(t.charAt(n+2))<<6|e(t.charAt(n+3)),r((16711680&s)>>16),r((65280&s)>>8),r(255&s);return 2===l?(s=e(t.charAt(n))<<2|e(t.charAt(n+1))>>4,r(255&s)):1===l&&(s=e(t.charAt(n))<<10|e(t.charAt(n+1))<<4|e(t.charAt(n+2))>>2,r(s>>8&255),r(255&s)),u}function i(t){function e(t){return n.charAt(t)}function r(t){return e(t>>18&63)+e(t>>12&63)+e(t>>6&63)+e(63&t)}var i,a,o,s=t.length%3,l=\"\";for(i=0,o=t.length-s;o>i;i+=3)a=(t[i]<<16)+(t[i+1]<<8)+t[i+2],l+=r(a);switch(s){case 1:a=t[t.length-1],l+=e(a>>2),l+=e(a<<4&63),l+=\"==\";break;case 2:a=(t[t.length-2]<<8)+t[t.length-1],l+=e(a>>10),l+=e(a>>4&63),l+=e(a<<2&63),l+=\"=\"}return l}var a=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,o=\"+\".charCodeAt(0),s=\"/\".charCodeAt(0),l=\"0\".charCodeAt(0),u=\"a\".charCodeAt(0),c=\"A\".charCodeAt(0),f=\"-\".charCodeAt(0),h=\"_\".charCodeAt(0);t.toByteArray=r,t.fromByteArray=i}(\"undefined\"==typeof r?this.base64js={}:r)},{}],3:[function(t,e,r){r.read=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<<s)-1,u=l>>1,c=-7,f=r?i-1:0,h=r?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-c)-1,d>>=-c,c+=s;c>0;a=256*a+t[e+f],f+=h,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=256*o+t[e+f],f+=h,c-=8);if(0===a)a=1-u;else{if(a===l)return o?0/0:1/0*(d?-1:1);o+=Math.pow(2,n),a-=u}return(d?-1:1)*o*Math.pow(2,a-n)},r.write=function(t,e,r,n,i,a){var o,s,l,u=8*a-i-1,c=(1<<u)-1,f=c>>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,p=n?1:-1,g=0>e||0===e&&0>1/e?1:0;for(e=Math.abs(e),isNaN(e)||1/0===e?(s=isNaN(e)?1:0,o=c):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),e+=o+f>=1?h/l:h*Math.pow(2,1-f),e*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[r+d]=255&s,d+=p,s/=256,i-=8);for(o=o<<i|s,u+=i;u>0;t[r+d]=255&o,d+=p,o/=256,u-=8);t[r+d-p]|=128*g}},{}],4:[function(t,e){var r=Array.isArray,n=Object.prototype.toString;e.exports=r||function(t){return!!t&&\"[object Array]\"==n.call(t)}},{}],5:[function(t,e){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function n(t){return\"function\"==typeof t}function i(t){return\"number\"==typeof t}function a(t){return\"object\"==typeof t&&null!==t}function o(t){return void 0===t}e.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(t){if(!i(t)||0>t||isNaN(t))throw TypeError(\"n must be a positive number\");return this._maxListeners=t,this},r.prototype.emit=function(t){var e,r,i,s,l,u;if(this._events||(this._events={}),\"error\"===t&&(!this._events.error||a(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;throw TypeError('Uncaught, unspecified \"error\" event.')}if(r=this._events[t],o(r))return!1;if(n(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:for(i=arguments.length,s=new Array(i-1),l=1;i>l;l++)s[l-1]=arguments[l];r.apply(this,s)}else if(a(r)){for(i=arguments.length,s=new Array(i-1),l=1;i>l;l++)s[l-1]=arguments[l];for(u=r.slice(),i=u.length,l=0;i>l;l++)u[l].apply(this,s)}return!0},r.prototype.addListener=function(t,e){var i;if(!n(e))throw TypeError(\"listener must be a function\");if(this._events||(this._events={}),this._events.newListener&&this.emit(\"newListener\",t,n(e.listener)?e.listener:e),this._events[t]?a(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,a(this._events[t])&&!this._events[t].warned){var i;i=o(this._maxListeners)?r.defaultMaxListeners:this._maxListeners,i&&i>0&&this._events[t].length>i&&(this._events[t].warned=!0,console.error(\"(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.\",this._events[t].length),\"function\"==typeof console.trace&&console.trace())}return this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(t,e){function r(){this.removeListener(t,r),i||(i=!0,e.apply(this,arguments))}if(!n(e))throw TypeError(\"listener must be a function\");var i=!1;return r.listener=e,this.on(t,r),this},r.prototype.removeListener=function(t,e){var r,i,o,s;if(!n(e))throw TypeError(\"listener must be a function\");if(!this._events||!this._events[t])return this;if(r=this._events[t],o=r.length,i=-1,r===e||n(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit(\"removeListener\",t,e);else if(a(r)){for(s=o;s-->0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(0>i)return this;1===r.length?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit(\"removeListener\",t,e)}return this},r.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[t]&&delete this._events[t],this;if(0===arguments.length){for(e in this._events)\"removeListener\"!==e&&this.removeAllListeners(e);return this.removeAllListeners(\"removeListener\"),this._events={},this}if(r=this._events[t],n(r))this.removeListener(t,r);else for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},r.prototype.listeners=function(t){var e;return e=this._events&&this._events[t]?n(this._events[t])?[this._events[t]]:this._events[t].slice():[]},r.listenerCount=function(t,e){var r;return r=t._events&&t._events[e]?n(t._events[e])?1:t._events[e].length:0}},{}],6:[function(t,e){function r(){if(!o){o=!0;for(var t,e=a.length;e;){t=a,a=[];for(var r=-1;++r<e;)t[r]();e=a.length}o=!1}}function n(){}var i=e.exports={},a=[],o=!1;i.nextTick=function(t){a.push(t),o||setTimeout(r,0)},i.title=\"browser\",i.browser=!0,i.env={},i.argv=[],i.version=\"\",i.versions={},i.on=n,i.addListener=n,i.once=n,i.off=n,i.removeListener=n,i.removeAllListeners=n,i.emit=n,i.binding=function(){throw new Error(\"process.binding is not supported\")},i.cwd=function(){return\"/\"},i.chdir=function(){throw new Error(\"process.chdir is not supported\")},i.umask=function(){return 0}},{}],7:[function(t){\"use strict\";var e=t(\"../src/plotly\"),r={\"X,X div\":\"font-family:'Open Sans', verdana, arial, sans-serif;margin:0;padding:0;\",\"X input,X button\":\"font-family:'Open Sans', verdana, arial, sans-serif;\",\"X input:focus,X button:focus\":\"outline:none;\",\"X a\":\"text-decoration:none;\",\"X a:hover\":\"text-decoration:none;\",\"X .crisp\":\"shape-rendering:crispEdges;\",\"X svg a\":\"fill:#447adb;\",\"X svg a:hover\":\"fill:#3c6dc5;\",\"X .main-svg\":\"position:absolute;top:0;left:0;pointer-events:none;\",\"X .main-svg .draglayer\":\"pointer-events:all;\",\"X .cursor-pointer\":\"cursor:pointer;\",\"X .cursor-crosshair\":\"cursor:crosshair;\",\"X .cursor-move\":\"cursor:move;\",\"X .cursor-col-resize\":\"cursor:col-resize;\",\"X .cursor-row-resize\":\"cursor:row-resize;\",\"X .cursor-ns-resize\":\"cursor:ns-resize;\",\"X .cursor-ew-resize\":\"cursor:ew-resize;\",\"X .cursor-sw-resize\":\"cursor:sw-resize;\",\"X .cursor-s-resize\":\"cursor:s-resize;\",\"X .cursor-se-resize\":\"cursor:se-resize;\",\"X .cursor-w-resize\":\"cursor:w-resize;\",\"X .cursor-e-resize\":\"cursor:e-resize;\",\"X .cursor-nw-resize\":\"cursor:nw-resize;\",\"X .cursor-n-resize\":\"cursor:n-resize;\",\"X .cursor-ne-resize\":\"cursor:ne-resize;\",\"X .modebar\":\"position:absolute;top:2px;right:2px;z-index:1001;background:rgba(255,255,255,0.7);\",\"X .modebar--hover\":\"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;\",\"X:hover .modebar--hover\":\"opacity:1;\",\"X .modebar-group\":\"float:left;display:inline-block;box-sizing:border-box;margin-left:8px;position:relative;vertical-align:middle;white-space:nowrap;\",\"X .modebar-group:first-child\":\"margin-left:0px;\",\"X .modebar-btn\":\"position:relative;font-size:16px;padding:3px 4px;cursor:pointer;line-height:normal;box-sizing:border-box;\",\"X .modebar-btn svg\":\"position:relative;top:2px;\",\"X .modebar-btn path\":\"fill:rgba(0,31,95,0.3);\",\"X .modebar-btn.active path,X .modebar-btn:hover path\":\"fill:rgba(0,22,72,0.5);\",\"X .modebar-btn.modebar-btn--logo\":\"padding:3px 1px;\",\"X .modebar-btn.modebar-btn--logo path\":\"fill:#447adb !important;\",\"X [data-title]:before,X [data-title]:after\":\"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;\",\"X [data-title]:hover:before,X [data-title]:hover:after\":\"display:block;opacity:1;\",\"X [data-title]:before\":\"content:'';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;\",\"X [data-title]:after\":\"content:attr(data-title);background:#69738a;color:white;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;\",Y:\"position:fixed;top:50px;right:20px;z-index:10000;\",\"Y .notifier-note\":\"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,0.9);color:#fff;padding:10px;\",\"Y .notifier-close\":\"color:#fff;opacity:0.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;\",\"Y .notifier-close:hover\":\"color:#444;text-decoration:none;cursor:pointer;\"};for(var n in r){var i=n.replace(/^,/,\" ,\").replace(/X/g,\".js-plotly-plot .plotly\").replace(/Y/g,\".plotly-notifier\");e.Lib.addStyleRule(i,r[n])}},{\"../src/plotly\":626}],8:[function(t,e){\"use strict\";e.exports={ascent:850,descent:-150,undo:{width:857.1,path:\"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z\"},home:{width:928.6,path:\"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z\"},\"camera-retro\":{width:1e3,path:\"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z\"},zoombox:{width:1e3,path:\"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z\"},pan:{width:1e3,path:\"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z\"},zoom_plus:{width:1e3,path:\"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z\"},zoom_minus:{width:1e3,path:\"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z\"},autoscale:{width:1e3,path:\"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z\"},tooltip_basic:{width:1500,path:\"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z\"},tooltip_compare:{width:1125,path:\"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z\"},plotlylogo:{width:1542,path:\"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z\"},\"z-axis\":{width:1e3,path:\"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z\"},\"3d_rotate\":{width:1e3,path:\"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z\"},camera:{width:1e3,path:\"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z\"},movie:{width:1e3,path:\"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z\"}}\n",
"},{}],9:[function(t,e){\"use strict\";function r(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}function n(t){t=t||{};var e=t.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new r(e)}var i=t(\"binary-search-bounds\"),a=t(\"mat4-interpolate\"),o=t(\"gl-mat4/invert\"),s=t(\"gl-mat4/rotateX\"),l=t(\"gl-mat4/rotateY\"),u=t(\"gl-mat4/rotateZ\"),c=t(\"gl-mat4/lookAt\"),f=t(\"gl-mat4/translate\"),h=(t(\"gl-mat4/scale\"),t(\"gl-vec3/normalize\")),d=[0,0,0];e.exports=n;var p=r.prototype;p.recalcMatrix=function(t){var e=this._time,r=i.le(e,t),n=this.computedMatrix;if(!(0>r)){var s=this._components;if(r===e.length-1)for(var l=16*r,u=0;16>u;++u)n[u]=s[l++];else{for(var c=e[r+1]-e[r],l=16*r,f=this.prevMatrix,d=!0,u=0;16>u;++u)f[u]=s[l++];for(var p=this.nextMatrix,u=0;16>u;++u)p[u]=s[l++],d=d&&f[u]===p[u];if(1e-6>c||d)for(var u=0;16>u;++u)n[u]=f[u];else a(n,f,p,(t-e[r])/c)}var g=this.computedUp;g[0]=n[1],g[1]=n[5],g[2]=n[6],h(g,g);var v=this.computedInverse;o(v,n);var m=this.computedEye,y=v[15];m[0]=v[12]/y,m[1]=v[13]/y,m[2]=v[14]/y;for(var b=this.computedCenter,x=Math.exp(this.computedRadius[0]),u=0;3>u;++u)b[u]=m[u]-n[2+4*u]*x}},p.idle=function(t){if(!(t<this.lastT())){for(var e=this._components,r=e.length-16,n=0;16>n;++n)e.push(e[r++]);this._time.push(t)}},p.flush=function(t){var e=i.gt(this._time,t)-2;0>e||(this._time.slice(0,e),this._components.slice(0,16*e))},p.lastT=function(){return this._time[this._time.length-1]},p.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||d,n=n||this.computedUp,this.setMatrix(t,c(this.computedMatrix,e,r,n));for(var i=0,a=0;3>a;++a)i+=Math.pow(r[a]-e[a],2);i=Math.log(Math.sqrt(i)),this.computedRadius[0]=i},p.rotate=function(t,e,r,n){this.recalcMatrix(t);var i=this.computedInverse;e&&l(i,i,e),r&&s(i,i,r),n&&u(i,i,n),this.setMatrix(t,o(this.computedMatrix,i))};var g=[0,0,0];p.pan=function(t,e,r,n){g[0]=-(e||0),g[1]=-(r||0),g[2]=-(n||0),this.recalcMatrix(t);var i=this.computedInverse;f(i,i,g),this.setMatrix(t,o(i,i))},p.translate=function(t,e,r,n){g[0]=e||0,g[1]=r||0,g[2]=n||0,this.recalcMatrix(t);var i=this.computedMatrix;f(i,i,g),this.setMatrix(t,i)},p.setMatrix=function(t,e){if(!(t<this.lastT())){this._time.push(t);for(var r=0;16>r;++r)this._components.push(e[r])}},p.setDistance=function(t,e){this.computedRadius[0]=e},p.setDistanceLimits=function(t,e){var r=this._limits;r[0]=t,r[1]=e},p.getDistanceLimits=function(t){var e=this._limits;return t?(t[0]=e[0],t[1]=e[1],t):e}},{\"binary-search-bounds\":10,\"gl-mat4/invert\":145,\"gl-mat4/lookAt\":146,\"gl-mat4/rotateX\":150,\"gl-mat4/rotateY\":151,\"gl-mat4/rotateZ\":152,\"gl-mat4/scale\":153,\"gl-mat4/translate\":154,\"gl-vec3/normalize\":15,\"mat4-interpolate\":16}],10:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){var o=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",a?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a\",i?\".get(m)\":\"[m]\"];return a?o.push(e.indexOf(\"c\")<0?\";if(x===y){return m}else if(x<=y){\":\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):o.push(\";if(\",e,\"){i=m;\"),o.push(r?\"l=m+1}else{h=m-1}\":\"h=m-1}else{l=m+1}\"),o.push(\"}\"),o.push(a?\"return -1};\":\"return i};\"),o.join(\"\")}function n(t,e,n,i){var a=new Function([r(\"A\",\"x\"+t+\"y\",e,[\"y\"],!1,i),r(\"B\",\"x\"+t+\"y\",e,[\"y\"],!0,i),r(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!1,i),r(\"Q\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!0,i),\"function dispatchBsearch\",n,\"(a,y,c,l,h){if(a.shape){if(typeof(c)==='function'){return Q(a,(l===undefined)?0:l|0,(h===undefined)?a.shape[0]-1:h|0,y,c)}else{return B(a,(c===undefined)?0:c|0,(l===undefined)?a.shape[0]-1:l|0,y)}}else{if(typeof(c)==='function'){return P(a,(l===undefined)?0:l|0,(h===undefined)?a.length-1:h|0,y,c)}else{return A(a,(c===undefined)?0:c|0,(l===undefined)?a.length-1:l|0,y)}}}return dispatchBsearch\",n].join(\"\"));return a()}e.exports={ge:n(\">=\",!1,\"GE\"),gt:n(\">\",!1,\"GT\"),lt:n(\"<\",!0,\"LT\"),le:n(\"<=\",!0,\"LE\"),eq:n(\"-\",!0,\"EQ\",!0)}},{}],11:[function(t,e){function r(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t}e.exports=r},{}],12:[function(t,e){function r(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}e.exports=r},{}],13:[function(t,e){function r(t){var e=t[0],r=t[1],n=t[2];return Math.sqrt(e*e+r*r+n*n)}e.exports=r},{}],14:[function(t,e){function r(t,e,r,n){var i=e[0],a=e[1],o=e[2];return t[0]=i+n*(r[0]-i),t[1]=a+n*(r[1]-a),t[2]=o+n*(r[2]-o),t}e.exports=r},{}],15:[function(t,e){function r(t,e){var r=e[0],n=e[1],i=e[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a),t}e.exports=r},{}],16:[function(t,e){function r(t,e,r,n){if(0===u(e)||0===u(r))return!1;var i=l(e,f.translate,f.scale,f.skew,f.perspective,f.quaternion),a=l(r,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return i&&a?(o(d.translate,f.translate,h.translate,n),o(d.skew,f.skew,h.skew,n),o(d.scale,f.scale,h.scale,n),o(d.perspective,f.perspective,h.perspective,n),c(d.quaternion,f.quaternion,h.quaternion,n),s(t,d.translate,d.scale,d.skew,d.perspective,d.quaternion),!0):!1}function n(){return{translate:i(),scale:i(1),skew:i(),perspective:a(),quaternion:a()}}function i(t){return[t||0,t||0,t||0]}function a(){return[0,0,0,1]}var o=t(\"gl-vec3/lerp\"),s=t(\"mat4-recompose\"),l=t(\"mat4-decompose\"),u=t(\"gl-mat4/determinant\"),c=t(\"quat-slerp\"),f=n(),h=n(),d=n();e.exports=r},{\"gl-mat4/determinant\":141,\"gl-vec3/lerp\":14,\"mat4-decompose\":17,\"mat4-recompose\":19,\"quat-slerp\":20}],17:[function(t,e){function r(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}function n(t,e){t[0][0]=e[0],t[0][1]=e[1],t[0][2]=e[2],t[1][0]=e[4],t[1][1]=e[5],t[1][2]=e[6],t[2][0]=e[8],t[2][1]=e[9],t[2][2]=e[10]}function i(t,e,r,n,i){t[0]=e[0]*n+r[0]*i,t[1]=e[1]*n+r[1]*i,t[2]=e[2]*n+r[2]*i}var a=t(\"./normalize\"),o=t(\"gl-mat4/create\"),s=t(\"gl-mat4/clone\"),l=t(\"gl-mat4/determinant\"),u=t(\"gl-mat4/invert\"),c=t(\"gl-mat4/transpose\"),f={length:t(\"gl-vec3/length\"),normalize:t(\"gl-vec3/normalize\"),dot:t(\"gl-vec3/dot\"),cross:t(\"gl-vec3/cross\")},h=o(),d=o(),p=[0,0,0,0],g=[[0,0,0],[0,0,0],[0,0,0]],v=[0,0,0];e.exports=function(t,e,o,m,y,b){if(e||(e=[0,0,0]),o||(o=[0,0,0]),m||(m=[0,0,0]),y||(y=[0,0,0,1]),b||(b=[0,0,0,1]),!a(h,t))return!1;if(s(d,h),d[3]=0,d[7]=0,d[11]=0,d[15]=1,Math.abs(l(d)<1e-8))return!1;var x=h[3],_=h[7],w=h[11],k=h[12],A=h[13],M=h[14],L=h[15];if(0!==x||0!==_||0!==w){p[0]=x,p[1]=_,p[2]=w,p[3]=L;var E=u(d,d);if(!E)return!1;c(d,d),r(y,p,d)}else y[0]=y[1]=y[2]=0,y[3]=1;if(e[0]=k,e[1]=A,e[2]=M,n(g,h),o[0]=f.length(g[0]),f.normalize(g[0],g[0]),m[0]=f.dot(g[0],g[1]),i(g[1],g[1],g[0],1,-m[0]),o[1]=f.length(g[1]),f.normalize(g[1],g[1]),m[0]/=o[1],m[1]=f.dot(g[0],g[2]),i(g[2],g[2],g[0],1,-m[1]),m[2]=f.dot(g[1],g[2]),i(g[2],g[2],g[1],1,-m[2]),o[2]=f.length(g[2]),f.normalize(g[2],g[2]),m[1]/=o[2],m[2]/=o[2],f.cross(v,g[1],g[2]),f.dot(g[0],v)<0)for(var C=0;3>C;C++)o[C]*=-1,g[C][0]*=-1,g[C][1]*=-1,g[C][2]*=-1;return b[0]=.5*Math.sqrt(Math.max(1+g[0][0]-g[1][1]-g[2][2],0)),b[1]=.5*Math.sqrt(Math.max(1-g[0][0]+g[1][1]-g[2][2],0)),b[2]=.5*Math.sqrt(Math.max(1-g[0][0]-g[1][1]+g[2][2],0)),b[3]=.5*Math.sqrt(Math.max(1+g[0][0]+g[1][1]+g[2][2],0)),g[2][1]>g[1][2]&&(b[0]=-b[0]),g[0][2]>g[2][0]&&(b[1]=-b[1]),g[1][0]>g[0][1]&&(b[2]=-b[2]),!0}},{\"./normalize\":18,\"gl-mat4/clone\":139,\"gl-mat4/create\":140,\"gl-mat4/determinant\":141,\"gl-mat4/invert\":145,\"gl-mat4/transpose\":155,\"gl-vec3/cross\":11,\"gl-vec3/dot\":12,\"gl-vec3/length\":13,\"gl-vec3/normalize\":15}],18:[function(t,e){e.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,i=0;16>i;i++)t[i]=e[i]*n;return!0}},{}],19:[function(t,e){var r={identity:t(\"gl-mat4/identity\"),translate:t(\"gl-mat4/translate\"),multiply:t(\"gl-mat4/multiply\"),create:t(\"gl-mat4/create\"),scale:t(\"gl-mat4/scale\"),fromRotationTranslation:t(\"gl-mat4/fromRotationTranslation\")},n=(r.create(),r.create());e.exports=function(t,e,i,a,o,s){return r.identity(t),r.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],r.identity(n),0!==a[2]&&(n[9]=a[2],r.multiply(t,t,n)),0!==a[1]&&(n[9]=0,n[8]=a[1],r.multiply(t,t,n)),0!==a[0]&&(n[8]=0,n[4]=a[0],r.multiply(t,t,n)),r.scale(t,t,i),t}},{\"gl-mat4/create\":140,\"gl-mat4/fromRotationTranslation\":143,\"gl-mat4/identity\":144,\"gl-mat4/multiply\":147,\"gl-mat4/scale\":153,\"gl-mat4/translate\":154}],20:[function(t,e){e.exports=t(\"gl-quat/slerp\")},{\"gl-quat/slerp\":21}],21:[function(t,e){function r(t,e,r,n){var i,a,o,s,l,u=e[0],c=e[1],f=e[2],h=e[3],d=r[0],p=r[1],g=r[2],v=r[3];return a=u*d+c*p+f*g+h*v,0>a&&(a=-a,d=-d,p=-p,g=-g,v=-v),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-n)*i)/o,l=Math.sin(n*i)/o):(s=1-n,l=n),t[0]=s*u+l*d,t[1]=s*c+l*p,t[2]=s*f+l*g,t[3]=s*h+l*v,t}e.exports=r},{}],22:[function(t,e){\"use strict\";function r(t,e,r,n,i,a,o,s,l,u){var c=e+a+u;if(f>0){var f=Math.sqrt(c+1);t[0]=.5*(o-l)/f,t[1]=.5*(s-n)/f,t[2]=.5*(r-a)/f,t[3]=.5*f}else{var h=Math.max(e,a,u),f=Math.sqrt(2*h-c+1);e>=h?(t[0]=.5*f,t[1]=.5*(i+r)/f,t[2]=.5*(s+n)/f,t[3]=.5*(o-l)/f):a>=h?(t[0]=.5*(r+i)/f,t[1]=.5*f,t[2]=.5*(l+o)/f,t[3]=.5*(s-n)/f):(t[0]=.5*(n+s)/f,t[1]=.5*(o+l)/f,t[2]=.5*f,t[3]=.5*(r-i)/f)}return t}e.exports=r},{}],23:[function(t,e){\"use strict\";function r(t,e,r){return Math.min(e,Math.max(t,r))}function n(t,e,r){this.dimension=t.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var n=0;n<this.dimension;++n)this.bounds[0][n]=-1/0,this.bounds[1][n]=1/0;this._state=t.slice().reverse(),this._velocity=e.slice().reverse(),this._time=[r],this._scratch=[t.slice(),t.slice(),t.slice(),t.slice(),t.slice()]}function i(t){for(var e=new Array(t),r=0;t>r;++r)e[r]=0;return e}function a(t,e,r){switch(arguments.length){case 0:return new n([0],[0],0);case 1:if(\"number\"==typeof t){var a=i(t);return new n(a,a,0)}return new n(t,i(t.length),0);case 2:if(\"number\"==typeof e){var a=i(t.length);return new n(t,a,+e)}r=0;case 3:if(t.length!==e.length)throw new Error(\"state and velocity lengths must match\");return new n(t,e,r)}}e.exports=a;var o=t(\"cubic-hermite\"),s=t(\"binary-search-bounds\"),l=n.prototype;l.flush=function(t){var e=s.gt(this._time,t)-1;0>=e||(this._time.splice(0,e),this._state.splice(0,e*this.dimension),this._velocity.splice(0,e*this.dimension))},l.curve=function(t){var e=this._time,n=e.length,i=s.le(e,t),a=this._scratch[0],l=this._state,u=this._velocity,c=this.dimension,f=this.bounds;if(0>i)for(var h=c-1,d=0;c>d;++d,--h)a[d]=l[h];else if(i>=n-1)for(var h=l.length-1,p=t-e[n-1],d=0;c>d;++d,--h)a[d]=l[h]+p*u[h];else{for(var h=c*(i+1)-1,g=e[i],v=e[i+1],m=v-g||1,y=this._scratch[1],b=this._scratch[2],x=this._scratch[3],_=this._scratch[4],w=!0,d=0;c>d;++d,--h)y[d]=l[h],x[d]=u[h]*m,b[d]=l[h+c],_[d]=u[h+c]*m,w=w&&y[d]===b[d]&&x[d]===_[d]&&0===x[d];if(w)for(var d=0;c>d;++d)a[d]=y[d];else o(y,x,b,_,(t-g)/m,a)}for(var k=f[0],A=f[1],d=0;c>d;++d)a[d]=r(k[d],A[d],a[d]);return a},l.dcurve=function(t){var e=this._time,r=e.length,n=s.le(e,t),i=this._scratch[0],a=this._state,l=this._velocity,u=this.dimension;if(n>=r-1)for(var c=a.length-1,f=(t-e[r-1],0);u>f;++f,--c)i[f]=l[c];else{for(var c=u*(n+1)-1,h=e[n],d=e[n+1],p=d-h||1,g=this._scratch[1],v=this._scratch[2],m=this._scratch[3],y=this._scratch[4],b=!0,f=0;u>f;++f,--c)g[f]=a[c],m[f]=l[c]*p,v[f]=a[c+u],y[f]=l[c+u]*p,b=b&&g[f]===v[f]&&m[f]===y[f]&&0===m[f];if(b)for(var f=0;u>f;++f)i[f]=0;else{o.derivative(g,m,v,y,(t-h)/p,i);for(var f=0;u>f;++f)i[f]/=p}}return i},l.lastT=function(){var t=this._time;return t[t.length-1]},l.stable=function(){for(var t=this._velocity,e=t.length,r=this.dimension-1;r>=0;--r)if(t[--e])return!1;return!0},l.jump=function(t){var e=this.lastT(),n=this.dimension;if(!(e>t||arguments.length!==n+1)){var i=this._state,a=this._velocity,o=i.length-this.dimension,s=this.bounds,l=s[0],u=s[1];this._time.push(e,t);for(var c=0;2>c;++c)for(var f=0;n>f;++f)i.push(i[o++]),a.push(0);this._time.push(t);for(var f=n;f>0;--f)i.push(r(l[f-1],u[f-1],arguments[f])),a.push(0)}},l.push=function(t){var e=this.lastT(),n=this.dimension;if(!(e>t||arguments.length!==n+1)){var i=this._state,a=this._velocity,o=i.length-this.dimension,s=t-e,l=this.bounds,u=l[0],c=l[1],f=s>1e-6?1/s:0;this._time.push(t);for(var h=n;h>0;--h){var d=r(u[h-1],c[h-1],arguments[h]);i.push(d),a.push((d-i[o++])*f)}}},l.set=function(t){var e=this.dimension;if(!(t<this.lastT()||arguments.length!==e+1)){var n=this._state,i=this._velocity,a=this.bounds,o=a[0],s=a[1];this._time.push(t);for(var l=e;l>0;--l)n.push(r(o[l-1],s[l-1],arguments[l])),i.push(0)}},l.move=function(t){var e=this.lastT(),n=this.dimension;if(!(e>=t||arguments.length!==n+1)){var i=this._state,a=this._velocity,o=i.length-this.dimension,s=this.bounds,l=s[0],u=s[1],c=t-e,f=c>1e-6?1/c:0;this._time.push(t);for(var h=n;h>0;--h){var d=arguments[h];i.push(r(l[h-1],u[h-1],i[o++]+d)),a.push(d*f)}}},l.idle=function(t){var e=this.lastT();if(!(e>t)){var n=this.dimension,i=this._state,a=this._velocity,o=i.length-n,s=this.bounds,l=s[0],u=s[1],c=t-e;this._time.push(t);for(var f=n-1;f>=0;--f)i.push(r(l[f],u[f],i[o]+c*a[o])),a.push(0),o+=1}}},{\"binary-search-bounds\":24,\"cubic-hermite\":25}],24:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],25:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,u=3*i*i-2*i;if(t.length){a||(a=new Array(t.length));for(var c=t.length-1;c>=0;--c)a[c]=o*t[c]+s*e[c]+l*r[c]+u*n[c];return a}return o*t+s*e+l*r[c]+u*n}function n(t,e,r,n,i,a){var o=i-1,s=i*i,l=o*o,u=(1+2*i)*l,c=i*l,f=s*(3-2*i),h=s*o;if(t.length){a||(a=new Array(t.length));for(var d=t.length-1;d>=0;--d)a[d]=u*t[d]+c*e[d]+f*r[d]+h*n[d];return a}return u*t+c*e+f*r+h*n}e.exports=n,e.exports.derivative=r},{}],26:[function(t,e){\"use strict\";function r(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function n(t,e,r,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2)+Math.pow(n,2))}function i(t,e){var r=e[0],i=e[1],a=e[2],o=e[3],s=n(r,i,a,o);s>1e-6?(t[0]=r/s,t[1]=i/s,t[2]=a/s,t[3]=o/s):(t[0]=t[1]=t[2]=0,t[3]=1)}function a(t,e,r){this.radius=s([r]),this.center=s(e),this.rotation=s(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}function o(t){t=t||{};var e=t.center||[0,0,0],r=t.rotation||[0,0,0,1],n=t.radius||1;e=[].slice.call(e,0,3),r=[].slice.call(r,0,4),i(r,r);var o=new a(r,e,Math.log(n));return o.setDistanceLimits(t.zoomMin,t.zoomMax),(\"eye\"in t||\"up\"in t)&&o.lookAt(0,t.eye,t.center,t.up),o}e.exports=o;var s=t(\"filtered-vector\"),l=t(\"gl-mat4/lookAt\"),u=t(\"gl-mat4/fromQuat\"),c=t(\"gl-mat4/invert\"),f=t(\"./lib/quatFromFrame\"),h=a.prototype;h.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},h.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;i(e,e);var r=this.computedMatrix;u(r,e);var n=this.computedCenter,a=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);a[0]=n[0]+s*r[2],a[1]=n[1]+s*r[6],a[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;3>l;++l){for(var c=0,f=0;3>f;++f)c+=r[l+4*f]*a[f];r[12+l]=-c}},h.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;16>n;++n)e[n]=r[n];return e}return r},h.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},h.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},h.pan=function(t,e,n,i){e=e||0,n=n||0,i=i||0,this.recalcMatrix(t);var a=this.computedMatrix,o=a[1],s=a[5],l=a[9],u=r(o,s,l);o/=u,s/=u,l/=u;var c=a[0],f=a[4],h=a[8],d=c*o+f*s+h*l;c-=o*d,f-=s*d,h-=l*d;var p=r(c,f,h);c/=p,f/=p,h/=p;var g=a[2],v=a[6],m=a[10],y=g*o+v*s+m*l,b=g*c+v*f+m*h;g-=y*o+b*c,v-=y*s+b*f,m-=y*l+b*h;var x=r(g,v,m);g/=x,v/=x,m/=x;var _=c*e+o*n,w=f*e+s*n,k=h*e+l*n;this.center.move(t,_,w,k);var A=Math.exp(this.computedRadius[0]);A=Math.max(1e-4,A+i),this.radius.set(t,Math.log(A))},h.rotate=function(t,e,i,a){this.recalcMatrix(t),e=e||0,i=i||0;var o=this.computedMatrix,s=o[0],l=o[4],u=o[8],c=o[1],f=o[5],h=o[9],d=o[2],p=o[6],g=o[10],v=e*s+i*c,m=e*l+i*f,y=e*u+i*h,b=-(p*y-g*m),x=-(g*v-d*y),_=-(d*m-p*v),w=Math.sqrt(Math.max(0,1-Math.pow(b,2)-Math.pow(x,2)-Math.pow(_,2))),k=n(b,x,_,w);k>1e-6?(b/=k,x/=k,_/=k,w/=k):(b=x=_=0,w=1);var A=this.computedRotation,M=A[0],L=A[1],E=A[2],C=A[3],j=M*w+C*b+L*_-E*x,S=L*w+C*x+E*b-M*_,T=E*w+C*_+M*x-L*b,z=C*w-M*b-L*x-E*_;if(a){b=d,x=p,_=g;var P=Math.sin(a)/r(b,x,_);b*=P,x*=P,_*=P,w=Math.cos(e),j=j*w+z*b+S*_-T*x,S=S*w+z*x+T*b-j*_,T=T*w+z*_+j*x-S*b,z=z*w-j*b-S*x-T*_}var I=n(j,S,T,z);I>1e-6?(j/=I,S/=I,T/=I,z/=I):(j=S=T=0,z=1),this.rotation.set(t,j,S,T,z)},h.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var a=this.computedMatrix;l(a,e,r,n);var o=this.computedRotation;f(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),i(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var s=0,u=0;3>u;++u)s+=Math.pow(r[u]-e[u],2);this.radius.set(t,.5*Math.log(Math.max(s,1e-6))),this.center.set(t,r[0],r[1],r[2])},h.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},h.setMatrix=function(t,e){var r=this.computedRotation;f(r,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),i(r,r),this.rotation.set(t,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;c(n,e);var a=n[15];if(Math.abs(a)>1e-6){var o=n[12]/a,s=n[13]/a,l=n[14]/a;this.recalcMatrix(t);var u=Math.exp(this.computedRadius[0]);this.center.set(t,o-n[2]*u,s-n[6]*u,l-n[10]*u),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},h.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},h.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},h.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},h.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},h.fromJSON=function(t){var e=this.lastT(),r=t.center;r&&this.center.set(e,r[0],r[1],r[2]);var n=t.rotation;n&&this.rotation.set(e,n[0],n[1],n[2],n[3]);var i=t.distance;i&&i>0&&this.radius.set(e,Math.log(i)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},{\"./lib/quatFromFrame\":22,\"filtered-vector\":23,\"gl-mat4/fromQuat\":142,\"gl-mat4/invert\":145,\"gl-mat4/lookAt\":146}],27:[function(t,e,r){arguments[4][23][0].apply(r,arguments)},{\"binary-search-bounds\":28,\"cubic-hermite\":29,dup:23}],28:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],29:[function(t,e,r){arguments[4][25][0].apply(r,arguments)},{dup:25}],30:[function(t,e,r){arguments[4][11][0].apply(r,arguments)},{dup:11}],31:[function(t,e,r){arguments[4][12][0].apply(r,arguments)},{dup:12}],32:[function(t,e,r){arguments[4][15][0].apply(r,arguments)},{dup:15}],33:[function(t,e){\"use strict\";function r(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function n(t){return Math.min(1,Math.max(-1,t))}function i(t){var e=Math.abs(t[0]),r=Math.abs(t[1]),n=Math.abs(t[2]),i=[0,0,0];e>Math.max(r,n)?i[2]=1:r>Math.max(e,n)?i[0]=1:i[1]=1;for(var a=0,o=0,s=0;3>s;++s)a+=t[s]*t[s],o+=i[s]*t[s];for(var s=0;3>s;++s)i[s]-=o/a*t[s];return f(i,i),i}function a(t,e,r,n,i,a,o,l){this.center=s(r),this.up=s(n),this.right=s(i),this.radius=s([a]),this.angle=s([o,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var u=0;16>u;++u)this.computedMatrix[u]=.5;this.recalcMatrix(0)}function o(t){t=t||{};var e=t.center||[0,0,0],n=t.up||[0,1,0],o=t.right||i(n),s=t.radius||1,l=t.theta||0,u=t.phi||0;if(e=[].slice.call(e,0,3),n=[].slice.call(n,0,3),f(n,n),o=[].slice.call(o,0,3),f(o,o),\"eye\"in t){var d=t.eye,p=[d[0]-e[0],d[1]-e[1],d[2]-e[2]];c(o,p,n),r(o[0],o[1],o[2])<1e-6?o=i(n):f(o,o),s=r(p[0],p[1],p[2]);var g=h(n,p)/s,v=h(o,p)/s;u=Math.acos(g),l=Math.acos(v)}return s=Math.log(s),new a(t.zoomMin,t.zoomMax,e,n,o,s,l,u)}e.exports=o;var s=t(\"filtered-vector\"),l=t(\"gl-mat4/invert\"),u=t(\"gl-mat4/rotate\"),c=t(\"gl-vec3/cross\"),f=t(\"gl-vec3/normalize\"),h=t(\"gl-vec3/dot\"),d=a.prototype;d.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},d.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},d.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,n=this.computedRight,i=0,a=0,o=0;3>o;++o)a+=e[o]*n[o],i+=e[o]*e[o];for(var s=Math.sqrt(i),l=0,o=0;3>o;++o)n[o]-=e[o]*a/i,l+=n[o]*n[o],e[o]/=s;for(var u=Math.sqrt(l),o=0;3>o;++o)n[o]/=u;var h=this.computedToward;c(h,e,n),f(h,h);for(var d=Math.exp(this.computedRadius[0]),p=this.computedAngle[0],g=this.computedAngle[1],v=Math.cos(p),m=Math.sin(p),y=Math.cos(g),b=Math.sin(g),x=this.computedCenter,_=v*y,w=m*y,k=b,A=-v*b,M=-m*b,L=y,E=this.computedEye,C=this.computedMatrix,o=0;3>o;++o){var j=_*n[o]+w*h[o]+k*e[o];C[4*o+1]=A*n[o]+M*h[o]+L*e[o],C[4*o+2]=j,C[4*o+3]=0}var S=C[1],T=C[5],z=C[9],P=C[2],I=C[6],O=C[10],D=T*O-z*I,R=z*P-S*O,N=S*I-T*P,B=r(D,R,N);D/=B,R/=B,N/=B,C[0]=D,C[4]=R,C[8]=N;for(var o=0;3>o;++o)E[o]=x[o]+C[2+4*o]*d;for(var o=0;3>o;++o){for(var l=0,F=0;3>F;++F)l+=C[o+4*F]*E[F];C[12+o]=-l}C[15]=1},d.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;16>n;++n)e[n]=r[n];return e}return r};var p=[0,0,0];d.rotate=function(t,e,r,n){if(this.angle.move(t,e,r),n){this.recalcMatrix(t);var i=this.computedMatrix;p[0]=i[2],p[1]=i[6],p[2]=i[10];for(var a=this.computedUp,o=this.computedRight,s=this.computedToward,l=0;3>l;++l)i[4*l]=a[l],i[4*l+1]=o[l],i[4*l+2]=s[l];u(i,i,n,p);for(var l=0;3>l;++l)a[l]=i[4*l],o[l]=i[4*l+1];this.up.set(t,a[0],a[1],a[2]),this.right.set(t,o[0],o[1],o[2])}},d.pan=function(t,e,n,i){e=e||0,n=n||0,i=i||0,this.recalcMatrix(t);var a=this.computedMatrix,o=(Math.exp(this.computedRadius[0]),a[1]),s=a[5],l=a[9],u=r(o,s,l);o/=u,s/=u,l/=u;var c=a[0],f=a[4],h=a[8],d=c*o+f*s+h*l;c-=o*d,f-=s*d,h-=l*d;var p=r(c,f,h);c/=p,f/=p,h/=p;var g=c*e+o*n,v=f*e+s*n,m=h*e+l*n;this.center.move(t,g,v,m);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+i),this.radius.set(t,Math.log(y))},d.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},d.setMatrix=function(t,e,i,a){var o=1;\"number\"==typeof i&&(o=0|i),(0>o||o>3)&&(o=1);var s=(o+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var u=e[o],c=e[o+4],f=e[o+8];if(a){var h=Math.abs(u),d=Math.abs(c),p=Math.abs(f),g=Math.max(h,d,p);h===g?(u=0>u?-1:1,c=f=0):p===g?(f=0>f?-1:1,u=c=0):(c=0>c?-1:1,u=f=0)}else{var v=r(u,c,f);u/=v,c/=v,f/=v}var m=e[s],y=e[s+4],b=e[s+8],x=m*u+y*c+b*f;m-=u*x,y-=c*x,b-=f*x;var _=r(m,y,b);m/=_,y/=_,b/=_;var w=c*b-f*y,k=f*m-u*b,A=u*y-c*m,M=r(w,k,A);w/=M,k/=M,A/=M,this.center.jump(t,q,G,Y),this.radius.idle(t),this.up.jump(t,u,c,f),this.right.jump(t,m,y,b);var L,E;if(2===o){var C=e[1],j=e[5],S=e[9],T=C*m+j*y+S*b,z=C*w+j*k+S*A;L=0>D?-Math.PI/2:Math.PI/2,E=Math.atan2(z,T)}else{var P=e[2],I=e[6],O=e[10],D=P*u+I*c+O*f,R=P*m+I*y+O*b,N=P*w+I*k+O*A;L=Math.asin(n(D)),E=Math.atan2(N,R)}this.angle.jump(t,E,L),this.recalcMatrix(t);var B=e[2],F=e[6],U=e[10],V=this.computedMatrix;l(V,e);var H=V[15],q=V[12]/H,G=V[13]/H,Y=V[14]/H,W=Math.exp(this.computedRadius[0]);this.center.jump(t,q-B*W,G-F*W,Y-U*W)},d.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},d.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},d.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},d.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},d.lookAt=function(t,e,i,a){this.recalcMatrix(t),e=e||this.computedEye,i=i||this.computedCenter,a=a||this.computedUp;var o=a[0],s=a[1],l=a[2],u=r(o,s,l);if(!(1e-6>u)){o/=u,s/=u,l/=u;var c=e[0]-i[0],f=e[1]-i[1],h=e[2]-i[2],d=r(c,f,h);if(!(1e-6>d)){c/=d,f/=d,h/=d;var p=this.computedRight,g=p[0],v=p[1],m=p[2],y=o*g+s*v+l*m;g-=y*o,v-=y*s,m-=y*l;var b=r(g,v,m);if(!(.01>b&&(g=s*h-l*f,v=l*c-o*h,m=o*f-s*c,b=r(g,v,m),1e-6>b))){g/=b,v/=b,m/=b,this.up.set(t,o,s,l),this.right.set(t,g,v,m),this.center.set(t,i[0],i[1],i[2]),this.radius.set(t,Math.log(d));var x=s*m-l*v,_=l*g-o*m,w=o*v-s*g,k=r(x,_,w);x/=k,_/=k,w/=k;var A=o*c+s*f+l*h,M=g*c+v*f+m*h,L=x*c+_*f+w*h,E=Math.asin(n(A)),C=Math.atan2(L,M),j=this.angle._state,S=j[j.length-1],T=j[j.length-2];S%=2*Math.PI;var z=Math.abs(S+2*Math.PI-C),P=Math.abs(S-C),I=Math.abs(S-2*Math.PI-C);P>z&&(S+=2*Math.PI),P>I&&(S-=2*Math.PI),this.angle.jump(this.angle.lastT(),S,T),this.angle.set(t,C,E)}}}}},{\"filtered-vector\":27,\"gl-mat4/invert\":145,\"gl-mat4/rotate\":149,\"gl-vec3/cross\":30,\"gl-vec3/dot\":31,\"gl-vec3/normalize\":32}],34:[function(t,e){\"use strict\";function r(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map(function(e){return t[e]}),this._mode=e,this._active=t[e],this._active||(this._mode=\"turntable\",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}function n(t){t=t||{};var e=t.eye||[0,0,1],n=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],u=t.mode||\"turntable\",c=i(),f=a(),h=o();return c.setDistanceLimits(l[0],l[1]),c.lookAt(0,e,n,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,n,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,n,s),new r({turntable:c,orbit:f,matrix:h},u)}e.exports=n;var i=t(\"turntable-camera-controller\"),a=t(\"orbit-camera-controller\"),o=t(\"matrix-camera-controller\"),s=r.prototype,l=[[\"flush\",1],[\"idle\",1],[\"lookAt\",4],[\"rotate\",4],[\"pan\",4],[\"translate\",4],[\"setMatrix\",2],[\"setDistanceLimits\",2],[\"setDistance\",2]];l.forEach(function(t){for(var e=t[0],r=[],n=0;n<t[1];++n)r.push(\"a\"+n);var i=\"var cc=this._controllerList;for(var i=0;i<cc.length;++i){cc[i].\"+t[0]+\"(\"+r.join()+\")}\";s[e]=Function.apply(null,r.concat(i))}),s.recalcMatrix=function(t){this._active.recalcMatrix(t)},s.getDistance=function(t){return this._active.getDistance(t)},s.getDistanceLimits=function(t){return this._active.getDistanceLimits(t)},s.lastT=function(){return this._active.lastT()},s.setMode=function(t){if(t!==this._mode){var e=this._controllerNames.indexOf(t);if(!(0>e)){var r=this._active,n=this._controllerList[e],i=Math.max(r.lastT(),n.lastT());r.recalcMatrix(i),n.setMatrix(i,r.computedMatrix),this._active=n,this._mode=t,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode}},{\"matrix-camera-controller\":9,\"orbit-camera-controller\":26,\"turntable-camera-controller\":33}],35:[function(t,e){function r(t,e){return i(n(t,e))}e.exports=r;var n=t(\"alpha-complex\"),i=t(\"simplicial-complex-boundary\")},{\"alpha-complex\":36,\"simplicial-complex-boundary\":47}],36:[function(t,e){\"use strict\";function r(t,e){return n(e).filter(function(r){for(var n=new Array(r.length),a=0;a<r.length;++a)n[a]=e[r[a]];return i(n)*t<1})}e.exports=r;var n=t(\"delaunay-triangulate\"),i=t(\"circumradius\")},{circumradius:37,\"delaunay-triangulate\":93}],37:[function(t,e){function r(t){for(var e=n(t),r=0,i=0;i<t.length;++i)for(var a=t[i],o=0;o<e.length;++o)r+=Math.pow(a[o]-e[o],2);return Math.sqrt(r/t.length)}e.exports=r;var n=t(\"circumcenter\")},{circumcenter:38}],38:[function(t,e){\"use strict\";function r(t,e){for(var r=0,n=t.length,i=0;n>i;++i)r+=t[i]*e[i];return r}function n(t){var e=t.length;if(0===e)return[];var n=(t[0].length,a([t.length+1,t.length+1],1)),i=a([t.length+1],1);n[e][e]=0;for(var s=0;e>s;++s){for(var l=0;s>=l;++l)n[l][s]=n[s][l]=2*r(t[s],t[l]);i[s]=r(t[s],t[s])}for(var u=o(n,i),c=0,f=u[e+1],s=0;s<f.length;++s)c+=f[s];for(var h=new Array(e),s=0;e>s;++s){for(var f=u[s],d=0,l=0;l<f.length;++l)d+=f[l];h[s]=d/c}return h}function i(t){if(0===t.length)return[];for(var e=t[0].length,r=a([e]),i=n(t),o=0;o<t.length;++o)for(var s=0;e>s;++s)r[s]+=t[o][s]*i[o];return r}var a=t(\"dup\"),o=t(\"robust-linear-solve\");i.barycenetric=n,e.exports=i},{dup:39,\"robust-linear-solve\":40}],39:[function(t,e){\"use strict\";function r(t,e,n){var i=0|t[n];if(0>=i)return[];var a,o=new Array(i);if(n===t.length-1)for(a=0;i>a;++a)o[a]=e;else for(a=0;i>a;++a)o[a]=r(t,e,n+1);return o}function n(t,e){var r,n;for(r=new Array(t),n=0;t>n;++n)r[n]=e;return r}function i(t,e){switch(\"undefined\"==typeof e&&(e=0),typeof t){case\"number\":if(t>0)return n(0|t,e);break;case\"object\":if(\"number\"==typeof t.length)return r(t,e,0)}return[]}e.exports=i},{}],40:[function(t,e){\"use strict\";function r(t){for(var e=\"robustLinearSolve\"+t+\"d\",r=[\"function \",e,\"(A,b){return [\"],n=0;t>n;++n){r.push(\"det([\");for(var i=0;t>i;++i){i>0&&r.push(\",\"),r.push(\"[\");for(var a=0;t>a;++a)a>0&&r.push(\",\"),a===n?r.push(\"+b[\",i,\"]\"):r.push(\"+A[\",i,\"][\",a,\"]\");r.push(\"]\")}r.push(\"]),\")}r.push(\"det(A)]}return \",e);var s=new Function(\"det\",r.join(\"\"));return s(6>t?o[t]:o)}function n(){return[0]}function i(t,e){return[[e[0]],[t[0][0]]]}function a(){for(;l.length<s;)l.push(r(l.length));for(var t=[],n=[\"function dispatchLinearSolve(A,b){switch(A.length){\"],i=0;s>i;++i)t.push(\"s\"+i),n.push(\"case \",i,\":return s\",i,\"(A,b);\");n.push(\"}var s=CACHE[A.length];if(!s)s=CACHE[A.length]=g(A.length);return s(A,b)}return dispatchLinearSolve\"),t.push(\"CACHE\",\"g\",n.join(\"\"));var a=Function.apply(void 0,t);e.exports=a.apply(void 0,l.concat([l,r]));for(var i=0;s>i;++i)e.exports[i]=l[i]}var o=t(\"robust-determinant\"),s=6,l=[n,i];a()},{\"robust-determinant\":46}],41:[function(t,e){\"use strict\";function r(t){for(var e=t.length,r=t[t.length-1],n=e,i=e-2;i>=0;--i){var a=r,o=t[i];r=a+o;var s=r-a,l=o-s;l&&(t[--n]=r,r=l)}for(var u=0,i=n;e>i;++i){var a=t[i],o=r;r=a+o;var s=r-a,l=o-s;l&&(t[u++]=l)}return t[u++]=r,t.length=u,t}e.exports=r},{}],42:[function(t,e){\"use strict\";function r(t,e,r){var n=t+e,i=n-t,a=n-i,o=e-i,s=t-a;return r?(r[0]=s+o,r[1]=n,r):[s+o,n]}e.exports=r},{}],43:[function(t,e){\"use strict\";function r(t,e){var r=t.length;if(1===r){var a=n(t[0],e);return a[0]?a:[a[1]]}var o=new Array(2*r),s=[.1,.1],l=[.1,.1],u=0;n(t[0],e,s),s[0]&&(o[u++]=s[0]);for(var c=1;r>c;++c){n(t[c],e,l);var f=s[1];i(f,l[0],s),s[0]&&(o[u++]=s[0]);var h=l[1],d=s[1],p=h+d,g=p-h,v=d-g;s[1]=p,v&&(o[u++]=v)}return s[1]&&(o[u++]=s[1]),0===u&&(o[u++]=0),o.length=u,o}var n=t(\"two-product\"),i=t(\"two-sum\");e.exports=r},{\"two-product\":45,\"two-sum\":42}],44:[function(t,e){\"use strict\";function r(t,e){var r=t+e,n=r-t,i=r-n,a=e-n,o=t-i,s=o+a;return s?[s,r]:[r]}function n(t,e){var n=0|t.length,i=0|e.length;if(1===n&&1===i)return r(t[0],e[0]);var a,o,s=n+i,l=new Array(s),u=0,c=0,f=0,h=Math.abs,d=t[c],p=h(d),g=e[f],v=h(g);v>p?(o=d,c+=1,n>c&&(d=t[c],p=h(d))):(o=g,f+=1,i>f&&(g=e[f],v=h(g))),n>c&&v>p||f>=i?(a=d,c+=1,n>c&&(d=t[c],p=h(d))):(a=g,f+=1,i>f&&(g=e[f],v=h(g)));for(var m,y,b,x,_,w=a+o,k=w-a,A=o-k,M=A,L=w;n>c&&i>f;)v>p?(a=d,c+=1,n>c&&(d=t[c],p=h(d))):(a=g,f+=1,i>f&&(g=e[f],v=h(g))),o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m;\n",
"for(;n>c;)a=d,o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m,c+=1,n>c&&(d=t[c]);for(;i>f;)a=g,o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m,f+=1,i>f&&(g=e[f]);return M&&(l[u++]=M),L&&(l[u++]=L),u||(l[u++]=0),l.length=u,l}e.exports=n},{}],45:[function(t,e){\"use strict\";function r(t,e,r){var i=t*e,a=n*t,o=a-t,s=a-o,l=t-s,u=n*e,c=u-e,f=u-c,h=e-f,d=i-s*f,p=d-l*f,g=p-s*h,v=l*h-g;return r?(r[0]=v,r[1]=i,r):[v,i]}e.exports=r;var n=+(Math.pow(2,27)+1)},{}],46:[function(t,e){\"use strict\";function r(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var i=r[n-1]=new Array(t.length-1),a=0,o=0;a<t.length;++a)a!==e&&(i[o++]=t[n][a]);return r}function n(t){for(var e=new Array(t),r=0;t>r;++r){e[r]=new Array(t);for(var n=0;t>n;++n)e[r][n]=[\"m[\",r,\"][\",n,\"]\"].join(\"\")}return e}function i(t){return 1&t?\"-\":\"\"}function a(t){if(1===t.length)return t[0];if(2===t.length)return[\"sum(\",t[0],\",\",t[1],\")\"].join(\"\");var e=t.length>>1;return[\"sum(\",a(t.slice(0,e)),\",\",a(t.slice(e)),\")\"].join(\"\")}function o(t){if(2===t.length)return[\"sum(prod(\",t[0][0],\",\",t[1][1],\"),prod(-\",t[0][1],\",\",t[1][0],\"))\"].join(\"\");for(var e=[],n=0;n<t.length;++n)e.push([\"scale(\",o(r(t,n)),\",\",i(n),t[0][n],\")\"].join(\"\"));return a(e)}function s(t){var e=new Function(\"sum\",\"scale\",\"prod\",\"compress\",[\"function robustDeterminant\",t,\"(m){return compress(\",o(n(t)),\")};return robustDeterminant\",t].join(\"\"));return e(c,f,u,h)}function l(){for(;p.length<d;)p.push(s(p.length));for(var t=[],r=[\"function robustDeterminant(m){switch(m.length){\"],n=0;d>n;++n)t.push(\"det\"+n),r.push(\"case \",n,\":return det\",n,\"(m);\");r.push(\"}var det=CACHE[m.length];if(!det)det=CACHE[m.length]=gen(m.length);return det(m);}return robustDeterminant\"),t.push(\"CACHE\",\"gen\",r.join(\"\"));var i=Function.apply(void 0,t);e.exports=i.apply(void 0,p.concat([p,s]));for(var n=0;n<p.length;++n)e.exports[n]=p[n]}var u=t(\"two-product\"),c=t(\"robust-sum\"),f=t(\"robust-scale\"),h=t(\"robust-compress\"),d=6,p=[function(){return[0]},function(t){return[t[0][0]]}];l()},{\"robust-compress\":41,\"robust-scale\":43,\"robust-sum\":44,\"two-product\":45}],47:[function(t,e){\"use strict\";function r(t){return i(n(t))}e.exports=r;var n=t(\"boundary-cells\"),i=t(\"reduce-simplicial-complex\")},{\"boundary-cells\":48,\"reduce-simplicial-complex\":52}],48:[function(t,e){\"use strict\";function r(t){for(var e=t.length,r=0,n=0;e>n;++n)r+=t[n].length;for(var i=new Array(r),a=0,n=0;e>n;++n)for(var o=t[n],s=o.length,l=0;s>l;++l)for(var u=i[a++]=new Array(s-1),c=1;s>c;++c)u[c-1]=o[(l+c)%s];return i}e.exports=r},{}],49:[function(t,e){\"use strict\";function r(t){for(var e=1,r=1;r<t.length;++r)for(var n=0;r>n;++n)if(t[r]<t[n])e=-e;else if(t[n]===t[r])return 0;return e}e.exports=r},{}],50:[function(t,e){function r(t,e){return t-e}function n(t,e){var n=t.length,a=t.length-e.length;if(a)return a;switch(n){case 0:return 0;case 1:return t[0]-e[0];case 2:return t[0]+t[1]-e[0]-e[1]||i(t[0],t[1])-i(e[0],e[1]);case 3:var o=t[0]+t[1],s=e[0]+e[1];if(a=o+t[2]-(s+e[2]))return a;var l=i(t[0],t[1]),u=i(e[0],e[1]);return i(l,t[2])-i(u,e[2])||i(l+t[2],o)-i(u+e[2],s);case 4:var c=t[0],f=t[1],h=t[2],d=t[3],p=e[0],g=e[1],v=e[2],m=e[3];return c+f+h+d-(p+g+v+m)||i(c,f,h,d)-i(p,g,v,m,p)||i(c+f,c+h,c+d,f+h,f+d,h+d)-i(p+g,p+v,p+m,g+v,g+m,v+m)||i(c+f+h,c+f+d,c+h+d,f+h+d)-i(p+g+v,p+g+m,p+v+m,g+v+m);default:for(var y=t.slice().sort(r),b=e.slice().sort(r),x=0;n>x;++x)if(a=y[x]-b[x])return a;return 0}}e.exports=n;var i=Math.min},{}],51:[function(t,e){\"use strict\";function r(t,e){return n(t,e)||i(t)-i(e)}var n=t(\"compare-cell\"),i=t(\"cell-orientation\");e.exports=r},{\"cell-orientation\":49,\"compare-cell\":50}],52:[function(t,e){\"use strict\";function r(t){t.sort(i);for(var e=t.length,r=0,o=0;e>o;++o){var s=t[o],l=a(s);if(0!==l){if(r>0){var u=t[r-1];if(0===n(s,u)&&a(u)!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}var n=t(\"compare-cell\"),i=t(\"compare-oriented-cell\"),a=t(\"cell-orientation\");e.exports=r},{\"cell-orientation\":49,\"compare-cell\":50,\"compare-oriented-cell\":51}],53:[function(t,e){\"use strict\";var r=function(){function t(t){return!Array.isArray(t)&&null!==t&&\"object\"==typeof t}function e(t,e,r){for(var n=(e-t)/(r-1),i=[],a=0;r>a;a++)i.push(t+a*n);return i}function r(){for(var t=[].slice.call(arguments),e=t.map(function(t){return t.length}),r=Math.min.apply(null,e),n=[],i=0;r>i;i++){n[i]=[];for(var a=0;a<t.length;++a)n[i][a]=t[a][i]}return n}function n(t,e,r){for(var n=Math.min.apply(null,[t.length,e.length,r.length]),i=[],a=0;n>a;a++)i.push([t[a],e[a],r[a]]);return i}function i(t){function e(t){for(var n=0;n<t.length;n++)Array.isArray(t[n])?e(t[n],r):r+=t[n]}var r=0;return e(t,r),r}function a(t){for(var e=[],r=0;r<t.length;++r){e[r]=[];for(var n=0;n<t[r].length;++n)e[r][n]=t[r][n]}return e}function o(t){for(var e=[],r=0;r<t.length;++r)e[r]=t[r];return e}function s(t,e){if(t.length!==e.length)return!1;for(var r=t.length;r--;)if(t[r]!==e[r])return!1;return!0}function l(t,e){var r,n;if(\"string\"!=typeof t)return t;if(r=[],\"#\"===t[0]?(t=t.substr(1),3===t.length&&(t+=t),n=parseInt(t,16),r[0]=n>>16&255,r[1]=n>>8&255,r[2]=255&n):f.test(t)&&(n=t.match(h),r[0]=parseInt(n[1]),r[1]=parseInt(n[2]),r[2]=parseInt(n[3])),!e)for(var i=0;3>i;++i)r[i]=r[i]/255;return r}function u(t,e){var r,n;if(\"string\"!=typeof t)return t;if(r=[],\"#\"===t[0]?(t=t.substr(1),3===t.length&&(t+=t),n=parseInt(t,16),r[0]=n>>16&255,r[1]=n>>8&255,r[2]=255&n):f.test(t)&&(n=t.match(h),r[0]=parseInt(n[1]),r[1]=parseInt(n[2]),r[2]=parseInt(n[3]),r[3]=n[4]?parseFloat(n[4]):1),!e)for(var i=0;3>i;++i)r[i]=r[i]/255;return r}var c={},f=/^rgba?\\(\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*,\\s*\\d{1,3}\\s*(,.*)?\\)$/,h=/^rgba?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,?\\s*(.*)?\\)$/;return c.isPlainObject=t,c.linspace=e,c.zip3=n,c.sum=i,c.zip=r,c.isEqual=s,c.copy2D=a,c.copy1D=o,c.str2RgbArray=l,c.str2RgbaArray=u,c};e.exports=r()},{}],54:[function(t,e){\"use strict\";function r(t){var e=t.length;if(0===e)return[];if(1===e)return[[0]];var r=t[0].length;return 0===r?[]:1===r?n(t):2===r?i(t):a(t,r)}var n=t(\"./lib/ch1d\"),i=t(\"./lib/ch2d\"),a=t(\"./lib/chnd\");e.exports=r},{\"./lib/ch1d\":55,\"./lib/ch2d\":56,\"./lib/chnd\":57}],55:[function(t,e){\"use strict\";function r(t){for(var e=0,r=0,n=1;n<t.length;++n)t[n][0]<t[e][0]&&(e=n),t[n][0]>t[r][0]&&(r=n);return r>e?[[e],[r]]:e>r?[[r],[e]]:[[e]]}e.exports=r},{}],56:[function(t,e){\"use strict\";function r(t){var e=n(t),r=e.length;if(2>=r)return[];for(var i=new Array(r),a=e[r-1],o=0;r>o;++o){var s=e[o];i[o]=[a,s],a=s}return i}e.exports=r;var n=t(\"monotone-convex-hull-2d\")},{\"monotone-convex-hull-2d\":75}],57:[function(t,e){\"use strict\";function r(t,e){for(var r=t.length,n=new Array(r),i=0;i<e.length;++i)n[i]=t[e[i]];for(var a=e.length,i=0;r>i;++i)e.indexOf(i)<0&&(n[a++]=t[i]);return n}function n(t,e){for(var r=t.length,n=e.length,i=0;r>i;++i)for(var a=t[i],o=0;o<a.length;++o){var s=a[o];if(n>s)a[o]=e[s];else{s-=n;for(var l=0;n>l;++l)s>=e[l]&&(s+=1);a[o]=s}}return t}function i(t,e){try{return a(t,!0)}catch(u){var i=o(t);if(i.length<=e)return[];var s=r(t,i),l=a(s,!0);return n(l,i)}}e.exports=i;var a=t(\"incremental-convex-hull\"),o=t(\"affine-hull\")},{\"affine-hull\":58,\"incremental-convex-hull\":65}],58:[function(t,e){\"use strict\";function r(t,e){for(var r=new Array(e+1),n=0;n<t.length;++n)r[n]=t[n];for(var n=0;n<=t.length;++n){for(var a=t.length;e>=a;++a){for(var o=new Array(e),s=0;e>s;++s)o[s]=Math.pow(a+1-n,s);r[a]=o}var l=i.apply(void 0,r);if(l)return!0}return!1}function n(t){var e=t.length;if(0===e)return[];if(1===e)return[0];for(var n=t[0].length,i=[t[0]],a=[0],o=1;e>o;++o)if(i.push(t[o]),r(i,n)){if(a.push(o),a.length===n+1)return a}else i.pop();return a}e.exports=n;var i=t(\"robust-orientation\")},{\"robust-orientation\":64}],59:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],60:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":63,\"two-sum\":59}],61:[function(t,e){\"use strict\";function r(t,e){var r=t+e,n=r-t,i=r-n,a=e-n,o=t-i,s=o+a;return s?[s,r]:[r]}function n(t,e){var n=0|t.length,i=0|e.length;if(1===n&&1===i)return r(t[0],-e[0]);var a,o,s=n+i,l=new Array(s),u=0,c=0,f=0,h=Math.abs,d=t[c],p=h(d),g=-e[f],v=h(g);v>p?(o=d,c+=1,n>c&&(d=t[c],p=h(d))):(o=g,f+=1,i>f&&(g=-e[f],v=h(g))),n>c&&v>p||f>=i?(a=d,c+=1,n>c&&(d=t[c],p=h(d))):(a=g,f+=1,i>f&&(g=-e[f],v=h(g)));for(var m,y,b,x,_,w=a+o,k=w-a,A=o-k,M=A,L=w;n>c&&i>f;)v>p?(a=d,c+=1,n>c&&(d=t[c],p=h(d))):(a=g,f+=1,i>f&&(g=-e[f],v=h(g))),o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m;for(;n>c;)a=d,o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m,c+=1,n>c&&(d=t[c]);for(;i>f;)a=g,o=M,w=a+o,k=w-a,A=o-k,A&&(l[u++]=A),m=L+w,y=m-L,b=m-y,x=w-y,_=L-b,M=_+x,L=m,f+=1,i>f&&(g=-e[f]);return M&&(l[u++]=M),L&&(l[u++]=L),u||(l[u++]=0),l.length=u,l}e.exports=n},{}],62:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],63:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],64:[function(t,e){\"use strict\";function r(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var i=r[n-1]=new Array(t.length-1),a=0,o=0;a<t.length;++a)a!==e&&(i[o++]=t[n][a]);return r}function n(t){for(var e=new Array(t),r=0;t>r;++r){e[r]=new Array(t);for(var n=0;t>n;++n)e[r][n]=[\"m\",n,\"[\",t-r-1,\"]\"].join(\"\")}return e}function i(t){return 1&t?\"-\":\"\"}function a(t){if(1===t.length)return t[0];if(2===t.length)return[\"sum(\",t[0],\",\",t[1],\")\"].join(\"\");var e=t.length>>1;return[\"sum(\",a(t.slice(0,e)),\",\",a(t.slice(e)),\")\"].join(\"\")}function o(t){if(2===t.length)return[[\"sum(prod(\",t[0][0],\",\",t[1][1],\"),prod(-\",t[0][1],\",\",t[1][0],\"))\"].join(\"\")];for(var e=[],n=0;n<t.length;++n)e.push([\"scale(\",a(o(r(t,n))),\",\",i(n),t[0][n],\")\"].join(\"\"));return e}function s(t){for(var e=[],i=[],s=n(t),l=[],u=0;t>u;++u)0===(1&u)?e.push.apply(e,o(r(s,u))):i.push.apply(i,o(r(s,u))),l.push(\"m\"+u);var p=a(e),g=a(i),v=\"orientation\"+t+\"Exact\",m=[\"function \",v,\"(\",l.join(),\"){var p=\",p,\",n=\",g,\",d=sub(p,n);return d[d.length-1];};return \",v].join(\"\"),y=new Function(\"sum\",\"prod\",\"scale\",\"sub\",m);return y(f,c,h,d)}function l(t){var e=x[t.length];return e||(e=x[t.length]=s(t.length)),e.apply(void 0,t)}function u(){for(;x.length<=p;)x.push(s(x.length));for(var t=[],r=[\"slow\"],n=0;p>=n;++n)t.push(\"a\"+n),r.push(\"o\"+n);for(var i=[\"function getOrientation(\",t.join(),\"){switch(arguments.length){case 0:case 1:return 0;\"],n=2;p>=n;++n)i.push(\"case \",n,\":return o\",n,\"(\",t.slice(0,n).join(),\");\");i.push(\"}var s=new Array(arguments.length);for(var i=0;i<arguments.length;++i){s[i]=arguments[i]};return slow(s);}return getOrientation\"),r.push(i.join(\"\"));var a=Function.apply(void 0,r);e.exports=a.apply(void 0,[l].concat(x));for(var n=0;p>=n;++n)e.exports[n]=x[n]}var c=t(\"two-product\"),f=t(\"robust-sum\"),h=t(\"robust-scale\"),d=t(\"robust-subtract\"),p=5,g=1.1102230246251565e-16,v=(3+16*g)*g,m=(7+56*g)*g,y=s(3),b=s(4),x=[function(){return 0},function(){return 0},function(t,e){return e[0]-t[0]},function(t,e,r){var n,i=(t[1]-r[1])*(e[0]-r[0]),a=(t[0]-r[0])*(e[1]-r[1]),o=i-a;if(i>0){if(0>=a)return o;n=i+a}else{if(!(0>i))return o;if(a>=0)return o;n=-(i+a)}var s=v*n;return o>=s||-s>=o?o:y(t,e,r)},function(t,e,r,n){var i=t[0]-n[0],a=e[0]-n[0],o=r[0]-n[0],s=t[1]-n[1],l=e[1]-n[1],u=r[1]-n[1],c=t[2]-n[2],f=e[2]-n[2],h=r[2]-n[2],d=a*u,p=o*l,g=o*s,v=i*u,y=i*l,x=a*s,_=c*(d-p)+f*(g-v)+h*(y-x),w=(Math.abs(d)+Math.abs(p))*Math.abs(c)+(Math.abs(g)+Math.abs(v))*Math.abs(f)+(Math.abs(y)+Math.abs(x))*Math.abs(h),k=m*w;return _>k||-_>k?_:b(t,e,r,n)}];u()},{\"robust-scale\":60,\"robust-subtract\":61,\"robust-sum\":62,\"two-product\":63}],65:[function(t,e){\"use strict\";function r(t,e,r){this.vertices=t,this.adjacent=e,this.boundary=r,this.lastVisited=-1}function n(t,e,r){this.vertices=t,this.cell=e,this.index=r}function i(t,e){return u(t.vertices,e.vertices)}function a(t){for(var e=[\"function orient(){var tuple=this.tuple;return test(\"],r=0;t>=r;++r)r>0&&e.push(\",\"),e.push(\"tuple[\",r,\"]\");e.push(\")}return orient\");var n=new Function(\"test\",e.join(\"\")),i=l[t+1];return i||(i=l),n(i)}function o(t,e,r){this.dimension=t,this.vertices=e,this.simplices=r,this.interior=r.filter(function(t){return!t.boundary}),this.tuple=new Array(t+1);for(var n=0;t>=n;++n)this.tuple[n]=this.vertices[n];var i=c[t];i||(i=c[t]=a(t)),this.orient=i}function s(t,e){var n=t.length;if(0===n)throw new Error(\"Must have at least d+1 points\");var i=t[0].length;if(i>=n)throw new Error(\"Must input at least d+1 points\");var a=t.slice(0,i+1),s=l.apply(void 0,a);if(0===s)throw new Error(\"Input not in general position\");for(var u=new Array(i+1),c=0;i>=c;++c)u[c]=c;0>s&&(u[0]=1,u[1]=0);for(var f=new r(u,new Array(i+1),!1),h=f.adjacent,d=new Array(i+2),c=0;i>=c;++c){for(var p=u.slice(),g=0;i>=g;++g)g===c&&(p[g]=-1);var v=p[0];p[0]=p[1],p[1]=v;var m=new r(p,new Array(i+1),!0);h[c]=m,d[c]=m}d[i+1]=f;for(var c=0;i>=c;++c)for(var p=h[c].vertices,y=h[c].adjacent,g=0;i>=g;++g){var b=p[g];if(0>b)y[g]=f;else for(var x=0;i>=x;++x)h[x].vertices.indexOf(b)<0&&(y[g]=h[x])}for(var _=new o(i,a,d),w=!!e,c=i+1;n>c;++c)_.insert(t[c],w);return _.boundary()}e.exports=s;var l=t(\"robust-orientation\"),u=t(\"simplicial-complex\").compareCells;r.prototype.flip=function(){var t=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=t;var e=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=e};var c=[],f=o.prototype;f.handleBoundaryDegeneracy=function(t,e){var r=this.dimension,n=this.vertices.length-1,i=this.tuple,a=this.vertices,o=[t];for(t.lastVisited=-n;o.length>0;){t=o.pop();for(var s=(t.vertices,t.adjacent),l=0;r>=l;++l){var u=s[l];if(u.boundary&&!(u.lastVisited<=-n)){for(var c=u.vertices,f=0;r>=f;++f){var h=c[f];i[f]=0>h?e:a[h]}var d=this.orient();if(d>0)return u;u.lastVisited=-n,0===d&&o.push(u)}}}return null},f.walk=function(t,e){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,a=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,u=s.adjacent,c=0;n>=c;++c)a[c]=i[l[c]];s.lastVisited=r;for(var c=0;n>=c;++c){var f=u[c];if(!(f.lastVisited>=r)){var h=a[c];a[c]=t;var d=this.orient();if(a[c]=h,0>d){s=f;continue t}f.lastVisited=f.boundary?-r:r}}return}return s},f.addPeaks=function(t,e){var a=this.vertices.length-1,o=this.dimension,s=this.vertices,l=this.tuple,u=this.interior,c=this.simplices,f=[e];e.lastVisited=a,e.vertices[e.vertices.indexOf(-1)]=a,e.boundary=!1,u.push(e);for(var h=[];f.length>0;){var e=f.pop(),d=e.vertices,p=e.adjacent,g=d.indexOf(a);if(!(0>g))for(var v=0;o>=v;++v)if(v!==g){var m=p[v];if(m.boundary&&!(m.lastVisited>=a)){var y=m.vertices;if(m.lastVisited!==-a){for(var b=0,x=0;o>=x;++x)y[x]<0?(b=x,l[x]=t):l[x]=s[y[x]];var _=this.orient();if(_>0){y[b]=a,m.boundary=!1,u.push(m),f.push(m),m.lastVisited=a;continue}m.lastVisited=-a}var w=m.adjacent,k=d.slice(),A=p.slice(),M=new r(k,A,!0);c.push(M);var L=w.indexOf(e);if(!(0>L)){w[L]=M,A[g]=m,k[v]=-1,A[v]=e,p[v]=M,M.flip();for(var x=0;o>=x;++x){var E=k[x];if(!(0>E||E===a)){for(var C=new Array(o-1),j=0,S=0;o>=S;++S){var T=k[S];0>T||S===x||(C[j++]=T)}h.push(new n(C,M,x))}}}}}}h.sort(i);for(var v=0;v+1<h.length;v+=2){var z=h[v],P=h[v+1],I=z.index,O=P.index;0>I||0>O||(z.cell.adjacent[z.index]=P.cell,P.cell.adjacent[P.index]=z.cell)}},f.insert=function(t,e){var r=this.vertices;r.push(t);var n=this.walk(t,e);if(n){for(var i=this.dimension,a=this.tuple,o=0;i>=o;++o){var s=n.vertices[o];a[o]=0>s?t:r[s]}var l=this.orient(a);0>l||(0!==l||(n=this.handleBoundaryDegeneracy(n,t)))&&this.addPeaks(t,n)}},f.boundary=function(){for(var t=this.dimension,e=[],r=this.simplices,n=r.length,i=0;n>i;++i){var a=r[i];if(a.boundary){for(var o=new Array(t),s=a.vertices,l=0,u=0,c=0;t>=c;++c)s[c]>=0?o[l++]=s[c]:u=1&c;if(u===(1&t)){var f=o[0];o[0]=o[1],o[1]=f}e.push(o)}}return e}},{\"robust-orientation\":71,\"simplicial-complex\":74}],66:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],67:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":70,\"two-sum\":66}],68:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],69:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],70:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],71:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":67,\"robust-subtract\":68,\"robust-sum\":69,\"two-product\":70}],72:[function(t,e,r){\"use strict\";\"use restrict\";function n(t){var e=32;return t&=-t,t&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}var i=32;r.INT_BITS=i,r.INT_MAX=2147483647,r.INT_MIN=-1<<i-1,r.sign=function(t){return(t>0)-(0>t)},r.abs=function(t){var e=t>>i-1;return(t^e)-e},r.min=function(t,e){return e^(t^e)&-(e>t)},r.max=function(t,e){return t^(t^e)&-(e>t)},r.isPow2=function(t){return!(t&t-1||!t)},r.log2=function(t){var e,r;return e=(t>65535)<<4,t>>>=e,r=(t>255)<<3,t>>>=r,e|=r,r=(t>15)<<2,t>>>=r,e|=r,r=(t>3)<<1,t>>>=r,e|=r,e|t>>1},r.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},r.popCount=function(t){return t-=t>>>1&1431655765,t=(858993459&t)+(t>>>2&858993459),16843009*(t+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,t&=15,27030>>>t&1};var a=new Array(256);!function(t){for(var e=0;256>e;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<<i&255}}(a),r.reverse=function(t){return a[255&t]<<24|a[t>>>8&255]<<16|a[t>>>16&255]<<8|a[t>>>24&255]},r.interleave2=function(t,e){return t&=65535,t=16711935&(t|t<<8),t=252645135&(t|t<<4),t=858993459&(t|t<<2),t=1431655765&(t|t<<1),e&=65535,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),t|e<<1},r.deinterleave2=function(t,e){return t=t>>>e&1431655765,t=858993459&(t|t>>>1),t=252645135&(t|t>>>2),t=16711935&(t|t>>>4),t=65535&(t|t>>>16),t<<16>>16},r.interleave3=function(t,e,r){return t&=1023,t=4278190335&(t|t<<16),t=251719695&(t|t<<8),t=3272356035&(t|t<<4),t=1227133513&(t|t<<2),e&=1023,e=4278190335&(e|e<<16),e=251719695&(e|e<<8),e=3272356035&(e|e<<4),e=1227133513&(e|e<<2),t|=e<<1,r&=1023,r=4278190335&(r|r<<16),r=251719695&(r|r<<8),r=3272356035&(r|r<<4),r=1227133513&(r|r<<2),t|r<<2},r.deinterleave3=function(t,e){return t=t>>>e&1227133513,t=3272356035&(t|t>>>2),t=251719695&(t|t>>>4),t=4278190335&(t|t>>>8),t=1023&(t|t>>>16),t<<22>>22},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],73:[function(t,e){\"use strict\";\"use restrict\";function r(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;t>e;++e)this.roots[e]=e,this.ranks[e]=0}e.exports=r;var n=r.prototype;Object.defineProperty(n,\"length\",{get:function(){return this.roots.length}}),n.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},n.find=function(t){for(var e=t,r=this.roots;r[t]!==t;)t=r[t];for(;r[e]!==t;){var n=r[e];r[e]=t,e=n}return t},n.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var i=this.ranks,a=this.roots,o=i[r],s=i[n];s>o?a[r]=n:o>s?a[n]=r:(a[n]=r,++i[r])}}},{}],74:[function(t,e,r){\"use strict\";\"use restrict\";function n(t){for(var e=0,r=Math.max,n=0,i=t.length;i>n;++n)e=r(e,t[n].length);return e-1}function i(t){for(var e=-1,r=Math.max,n=0,i=t.length;i>n;++n)for(var a=t[n],o=0,s=a.length;s>o;++o)e=r(e,a[o]);return e+1}function a(t){for(var e=new Array(t.length),r=0,n=t.length;n>r;++r)e[r]=t[r].slice(0);return e}function o(t,e){var r=t.length,n=t.length-e.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:var a=t[0]+t[1]-e[0]-e[1];return a?a:i(t[0],t[1])-i(e[0],e[1]);case 3:var o=t[0]+t[1],s=e[0]+e[1];if(a=o+t[2]-(s+e[2]))return a;var l=i(t[0],t[1]),u=i(e[0],e[1]),a=i(l,t[2])-i(u,e[2]);return a?a:i(l+t[2],o)-i(u+e[2],s);default:var c=t.slice(0);c.sort();var f=e.slice(0);f.sort();for(var h=0;r>h;++h)if(n=c[h]-f[h])return n;return 0}}function s(t,e){return o(t[0],e[0])}function l(t,e){if(e){for(var r=t.length,n=new Array(r),i=0;r>i;++i)n[i]=[t[i],e[i]];n.sort(s);for(var i=0;r>i;++i)t[i]=n[i][0],e[i]=n[i][1];return t}return t.sort(o),t}function u(t){if(0===t.length)return[];for(var e=1,r=t.length,n=1;r>n;++n){var i=t[n];if(o(i,t[n-1])){if(n===e){e++;continue}t[e++]=i}}return t.length=e,t}function c(t,e){for(var r=0,n=t.length-1,i=-1;n>=r;){var a=r+n>>1,s=o(t[a],e);0>=s?(0===s&&(i=a),r=a+1):s>0&&(n=a-1)}return i}function f(t,e){for(var r=new Array(t.length),n=0,i=r.length;i>n;++n)r[n]=[];for(var a=[],n=0,s=e.length;s>n;++n)for(var l=e[n],u=l.length,f=1,h=1<<u;h>f;++f){a.length=b.popCount(f);for(var d=0,p=0;u>p;++p)f&1<<p&&(a[d++]=l[p]);var g=c(t,a);if(!(0>g))for(;;)if(r[g++].push(n),g>=t.length||0!==o(t[g],a))break}return r}function h(t,e){if(!e)return f(u(p(t,0)),t,0);for(var r=new Array(e),n=0;e>n;++n)r[n]=[];for(var n=0,i=t.length;i>n;++n)for(var a=t[n],o=0,s=a.length;s>o;++o)r[a[o]].push(n);return r}function d(t){for(var e=[],r=0,n=t.length;n>r;++r)for(var i=t[r],a=0|i.length,o=1,s=1<<a;s>o;++o){for(var u=[],c=0;a>c;++c)o>>>c&1&&u.push(i[c]);e.push(u)}return l(e)}function p(t,e){if(0>e)return[];for(var r=[],n=(1<<e+1)-1,i=0;i<t.length;++i)for(var a=t[i],o=n;o<1<<a.length;o=b.nextCombination(o)){for(var s=new Array(e+1),u=0,c=0;c<a.length;++c)o&1<<c&&(s[u++]=a[c]);r.push(s)}return l(r)}function g(t){for(var e=[],r=0,n=t.length;n>r;++r)for(var i=t[r],a=0,o=i.length;o>a;++a){for(var s=new Array(i.length-1),u=0,c=0;o>u;++u)u!==a&&(s[c++]=i[u]);e.push(s)}return l(e)}function v(t,e){for(var r=new x(e),n=0;n<t.length;++n)for(var i=t[n],a=0;a<i.length;++a)for(var o=a+1;o<i.length;++o)r.link(i[a],i[o]);for(var s=[],l=r.ranks,n=0;n<l.length;++n)l[n]=-1;for(var n=0;n<t.length;++n){var u=r.find(t[n][0]);l[u]<0?(l[u]=s.length,s.push([t[n].slice(0)])):s[l[u]].push(t[n].slice(0))}return s}function m(t){for(var e=u(l(p(t,0))),r=new x(e.length),n=0;n<t.length;++n)for(var i=t[n],a=0;a<i.length;++a)for(var o=c(e,[i[a]]),s=a+1;s<i.length;++s)r.link(o,c(e,[i[s]]));for(var f=[],h=r.ranks,n=0;n<h.length;++n)h[n]=-1;for(var n=0;n<t.length;++n){var d=r.find(c(e,[t[n][0]]));h[d]<0?(h[d]=f.length,f.push([t[n].slice(0)])):f[h[d]].push(t[n].slice(0))}return f}function y(t,e){return e?v(t,e):m(t)}var b=t(\"bit-twiddle\"),x=t(\"union-find\");r.dimension=n,r.countVertices=i,r.cloneCells=a,r.compareCells=o,r.normalize=l,r.unique=u,r.findCell=c,r.incidence=f,r.dual=h,r.explode=d,r.skeleton=p,r.boundary=g,r.connectedComponents=y},{\"bit-twiddle\":72,\"union-find\":73}],75:[function(t,e){\"use strict\";function r(t){var e=t.length;if(3>e){for(var r=new Array(e),i=0;e>i;++i)r[i]=i;return 2===e&&t[0][0]===t[1][0]&&t[0][1]===t[1][1]?[0]:r}for(var a=new Array(e),i=0;e>i;++i)a[i]=i;a.sort(function(e,r){var n=t[e][0]-t[r][0];return n?n:t[e][1]-t[r][1]});for(var o=[a[0],a[1]],s=[a[0],a[1]],i=2;e>i;++i){for(var l=a[i],u=t[l],c=o.length;c>1&&n(t[o[c-2]],t[o[c-1]],u)<=0;)c-=1,o.pop();for(o.push(l),c=s.length;c>1&&n(t[s[c-2]],t[s[c-1]],u)>=0;)c-=1,s.pop();s.push(l)}for(var r=new Array(s.length+o.length-2),f=0,i=0,h=o.length;h>i;++i)r[f++]=o[i];for(var d=s.length-2;d>0;--d)r[f++]=s[d];return r}e.exports=r;var n=t(\"robust-orientation\")[3]},{\"robust-orientation\":81}],76:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],77:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":80,\"two-sum\":76}],78:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],79:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],80:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],81:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":77,\"robust-subtract\":78,\"robust-sum\":79,\"two-product\":80}],82:[function(t,e,r){arguments[4][65][0].apply(r,arguments)},{dup:65,\"robust-orientation\":88,\"simplicial-complex\":91}],83:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],84:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":87,\"two-sum\":83}],85:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],86:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],87:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],88:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":84,\"robust-subtract\":85,\"robust-sum\":86,\"two-product\":87}],89:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],90:[function(t,e,r){arguments[4][73][0].apply(r,arguments)},{dup:73}],91:[function(t,e,r){arguments[4][74][0].apply(r,arguments)},{\"bit-twiddle\":89,dup:74,\"union-find\":90}],92:[function(t,e){\"use strict\";function r(t,e){for(var r=1,n=t.length,i=t[0],a=t[0],o=1;n>o;++o)if(a=i,i=t[o],e(i,a)){if(o===r){r++;continue}t[r++]=i}return t.length=r,t}function n(t){for(var e=1,r=t.length,n=t[0],i=t[0],a=1;r>a;++a,i=n)if(i=n,n=t[a],n!==i){if(a===e){e++;continue}t[e++]=n}return t.length=e,t}function i(t,e,i){return 0===t.length?t:e?(i||t.sort(e),r(t,e)):(i||t.sort(),n(t))}e.exports=i},{}],93:[function(t,e){\"use strict\";function r(t,e){this.point=t,this.index=e}function n(t,e){for(var r=t.point,n=e.point,i=r.length,a=0;i>a;++a){var o=n[a]-r[a];if(o)return o}return 0}function i(t,e,r){if(1===t)return r?[[-1,0]]:[];var n=e.map(function(t,e){return[t[0],e]});n.sort(function(t,e){return t[0]-e[0]});for(var i=new Array(t-1),a=1;t>a;++a){var o=n[a-1],s=n[a];i[a-1]=[o[1],s[1]]}return r&&i.push([-1,i[0][1]],[i[t-1][1],-1]),i}function a(t,e){var a=t.length;if(0===a)return[];var l=t[0].length;if(1>l)return[];if(1===l)return i(a,t,e);for(var u=new Array(a),c=1,f=0;a>f;++f){for(var h=t[f],d=new Array(l+1),p=0,g=0;l>g;++g){var v=h[g];d[g]=v,p+=v*v}d[l]=p,u[f]=new r(d,f),c=Math.max(p,c)}s(u,n),a=u.length;for(var m=new Array(a+l+1),y=new Array(a+l+1),b=(l+1)*(l+1)*c,x=new Array(l+1),f=0;l>=f;++f)x[f]=0;x[l]=b,m[0]=x.slice(),y[0]=-1;for(var f=0;l>=f;++f){var d=x.slice();d[f]=1,m[f+1]=d,y[f+1]=-1}for(var f=0;a>f;++f){var _=u[f];m[f+l+1]=_.point,y[f+l+1]=_.index}var w=o(m,!1);if(w=w.filter(e?function(t){for(var e=0,r=0;l>=r;++r){var n=y[t[r]];if(0>n&&++e>=2)return!1;t[r]=n}return!0}:function(t){for(var e=0;l>=e;++e){var r=y[t[e]];if(0>r)return!1;t[e]=r}return!0}),1&l)for(var f=0;f<w.length;++f){var _=w[f],d=_[0];_[0]=_[1],_[1]=d}return w}var o=t(\"incremental-convex-hull\"),s=t(\"uniq\");e.exports=a},{\"incremental-convex-hull\":82,uniq:92}],94:[function(t,e){\"use strict\";var r=Object.prototype.hasOwnProperty,n=Object.prototype.toString,i=function(t){return\"function\"==typeof Array.isArray?Array.isArray(t):\"[object Array]\"===n.call(t)},a=function(t){if(!t||\"[object Object]\"!==n.call(t))return!1;var e=r.call(t,\"constructor\"),i=t.constructor&&t.constructor.prototype&&r.call(t.constructor.prototype,\"isPrototypeOf\");if(t.constructor&&!e&&!i)return!1;var a;for(a in t);return\"undefined\"==typeof a||r.call(t,a)};e.exports=function t(){var e,r,n,o,s,l,u=arguments[0],c=1,f=arguments.length,h=!1;for(\"boolean\"==typeof u?(h=u,u=arguments[1]||{},c=2):(\"object\"!=typeof u&&\"function\"!=typeof u||null==u)&&(u={});f>c;++c)if(e=arguments[c],null!=e)for(r in e)n=u[r],o=e[r],u!==o&&(h&&o&&(a(o)||(s=i(o)))?(s?(s=!1,l=n&&i(n)?n:[]):l=n&&a(n)?n:{},u[r]=t(h,l,o)):\"undefined\"!=typeof o&&(u[r]=o));return u}},{}],95:[function(t,e){\"use strict\";function r(t,e,r,n){this.gl=t,this.shader=n,this.buffer=e,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1}function n(t,e){for(var r=0;3>r;++r)t[0][r]=Math.min(t[0][r],e[r]),t[1][r]=Math.max(t[1][r],e[r])}function i(t,e,r,n){for(var i=f[n],a=0;a<i.length;++a){var o=i[a];t.push(e[0],e[1],e[2],r[0],r[1],r[2],r[3],o[0],o[1],o[2])}return i.length}function a(t){var e=t.gl,n=o(e),i=s(e,[{buffer:n,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:n,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:n,type:e.FLOAT,size:3,offset:28,stride:40}]),a=l(e);a.attributes.position.location=0,a.attributes.color.location=1,a.attributes.offset.location=2;var u=new r(e,n,i,a);return u.update(t),u}e.exports=a;var o=t(\"gl-buffer\"),s=t(\"gl-vao\"),l=t(\"./shaders/index\"),u=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],c=r.prototype;c.isOpaque=function(){return this.opacity>=1},c.isTransparent=function(){return this.opacity<1},c.drawTransparent=c.draw=function(t){var e=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=t.view||u,i=r.projection=t.projection||u;r.model=t.model||u,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var a=n[12],o=n[13],s=n[14],l=n[15],c=this.pixelRatio*(i[3]*a+i[7]*o+i[11]*s+i[15]*l)/e.drawingBufferHeight;this.vao.bind();for(var f=0;3>f;++f)e.lineWidth(this.lineWidth[f]),r.capSize=this.capSize[f]*c,e.drawArrays(e.LINES,this.lineOffset[f],this.lineCount[f]);this.vao.unbind()};var f=function(){for(var t=new Array(3),e=0;3>e;++e){for(var r=[],n=1;2>=n;++n)for(var i=-1;1>=i;i+=2){var a=(n+e)%3,o=[0,0,0];o[a]=i,r.push(o)}t[e]=r}return t}();c.update=function(t){t=t||{},\"lineWidth\"in t&&(this.lineWidth=t.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),\"capSize\"in t&&(this.capSize=t.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),\"opacity\"in t&&(this.opacity=t.opacity);var e=t.color||[[0,0,0],[0,0,0],[0,0,0]],r=t.position,a=t.error;if(Array.isArray(e[0])||(e=[e,e,e]),r&&a){var o=[],s=r.length,l=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var u=0;3>u;++u){this.lineOffset[u]=l;t:for(var c=0;s>c;++c){for(var f=r[c],h=0;3>h;++h)if(isNaN(f[h])||!isFinite(f[h]))continue t;var d=a[c],p=e[u];if(Array.isArray(p[0])&&(p=e[c]),3===p.length&&(p=[p[0],p[1],p[2],1]),!isNaN(d[0][u])&&!isNaN(d[1][u])){if(d[0][u]<0){var g=f.slice();g[u]+=d[0][u],o.push(f[0],f[1],f[2],p[0],p[1],p[2],p[3],0,0,0,g[0],g[1],g[2],p[0],p[1],p[2],p[3],0,0,0),n(this.bounds,g),l+=2+i(o,g,p,u)}if(d[1][u]>0){var g=f.slice();g[u]+=d[1][u],o.push(f[0],f[1],f[2],p[0],p[1],p[2],p[3],0,0,0,g[0],g[1],g[2],p[0],p[1],p[2],p[3],0,0,0),n(this.bounds,g),l+=2+i(o,g,p,u)}}}this.lineCount[u]=l-this.lineOffset[u]}this.buffer.update(o)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},{\"./shaders/index\":113,\"gl-buffer\":96,\"gl-vao\":112}],96:[function(t,e){\"use strict\";function r(t,e,r,n,i){this.gl=t,this.type=e,this.handle=r,this.length=n,this.usage=i}function n(t,e,r,n,i,a){var o=i.length*i.BYTES_PER_ELEMENT;if(0>a)return t.bufferData(e,i,n),o;if(o+a>r)throw new Error(\"gl-buffer: If resizing buffer, must not specify offset\");return t.bufferSubData(e,a,i),r}function i(t,e){for(var r=s.malloc(t.length,e),n=t.length,i=0;n>i;++i)r[i]=t[i];return r}function a(t,e){for(var r=1,n=e.length-1;n>=0;--n){if(e[n]!==r)return!1;r*=t[n]}return!0}function o(t,e,n,i){if(n=n||t.ARRAY_BUFFER,i=i||t.DYNAMIC_DRAW,n!==t.ARRAY_BUFFER&&n!==t.ELEMENT_ARRAY_BUFFER)throw new Error(\"gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER\");if(i!==t.DYNAMIC_DRAW&&i!==t.STATIC_DRAW&&i!==t.STREAM_DRAW)throw new Error(\"gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW\");var a=t.createBuffer(),o=new r(t,n,a,0,i);return o.update(e),o}var s=t(\"typedarray-pool\"),l=t(\"ndarray-ops\"),u=t(\"ndarray\"),c=[\"uint8\",\"uint8_clamped\",\"uint16\",\"uint32\",\"int8\",\"int16\",\"int32\",\"float32\"],f=r.prototype;f.bind=function(){this.gl.bindBuffer(this.type,this.handle)},f.unbind=function(){this.gl.bindBuffer(this.type,null)},f.dispose=function(){this.gl.deleteBuffer(this.handle)},f.update=function(t,e){if(\"number\"!=typeof e&&(e=-1),this.bind(),\"object\"==typeof t&&\"undefined\"!=typeof t.shape){var r=t.dtype;if(c.indexOf(r)<0&&(r=\"float32\"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var o=gl.getExtension(\"OES_element_index_uint\");r=o&&\"uint16\"!==r?\"uint32\":\"uint16\"\n",
"}if(r===t.dtype&&a(t.shape,t.stride))this.length=0===t.offset&&t.data.length===t.shape[0]?n(this.gl,this.type,this.length,this.usage,t.data,e):n(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var f=s.malloc(t.size,r),h=u(f,t.shape);l.assign(h,t),this.length=0>e?n(this.gl,this.type,this.length,this.usage,f,e):n(this.gl,this.type,this.length,this.usage,f.subarray(0,t.size),e),s.free(f)}}else if(Array.isArray(t)){var d;d=this.type===this.gl.ELEMENT_ARRAY_BUFFER?i(t,\"uint16\"):i(t,\"float32\"),this.length=0>e?n(this.gl,this.type,this.length,this.usage,d,e):n(this.gl,this.type,this.length,this.usage,d.subarray(0,t.length),e),s.free(d)}else if(\"object\"==typeof t&&\"number\"==typeof t.length)this.length=n(this.gl,this.type,this.length,this.usage,t,e);else{if(\"number\"!=typeof t&&void 0!==t)throw new Error(\"gl-buffer: Invalid data type\");if(e>=0)throw new Error(\"gl-buffer: Cannot specify offset when resizing buffer\");t=0|t,0>=t&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},e.exports=o},{ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":99}],97:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],98:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],99:[function(t,e,r){(function(e,n){\"use strict\";function i(t){if(t){var e=t.length||t.byteLength,r=y.log2(e);w[r].push(t)}}function a(t){i(t.buffer)}function o(t){var t=y.nextPow2(t),e=y.log2(t),r=w[e];return r.length>0?r.pop():new ArrayBuffer(t)}function s(t){return new Uint8Array(o(t),0,t)}function l(t){return new Uint16Array(o(2*t),0,t)}function u(t){return new Uint32Array(o(4*t),0,t)}function c(t){return new Int8Array(o(t),0,t)}function f(t){return new Int16Array(o(2*t),0,t)}function h(t){return new Int32Array(o(4*t),0,t)}function d(t){return new Float32Array(o(4*t),0,t)}function p(t){return new Float64Array(o(8*t),0,t)}function g(t){return x?new Uint8ClampedArray(o(t),0,t):s(t)}function v(t){return new DataView(o(t),0,t)}function m(t){t=y.nextPow2(t);var e=y.log2(t),r=k[e];return r.length>0?r.pop():new n(t)}var y=t(\"bit-twiddle\"),b=t(\"dup\");e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:b([32,0]),UINT16:b([32,0]),UINT32:b([32,0]),INT8:b([32,0]),INT16:b([32,0]),INT32:b([32,0]),FLOAT:b([32,0]),DOUBLE:b([32,0]),DATA:b([32,0]),UINT8C:b([32,0]),BUFFER:b([32,0])});var x=\"undefined\"!=typeof Uint8ClampedArray,_=e.__TYPEDARRAY_POOL;_.UINT8C||(_.UINT8C=b([32,0])),_.BUFFER||(_.BUFFER=b([32,0]));var w=_.DATA,k=_.BUFFER;r.free=function(t){if(n.isBuffer(t))k[y.log2(t.length)].push(t);else{if(\"[object ArrayBuffer]\"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|y.log2(e);w[r].push(t)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeInt8=r.freeInt16=r.freeInt32=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=a,r.freeArrayBuffer=i,r.freeBuffer=function(t){k[y.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||\"arraybuffer\"===e)return o(t);switch(e){case\"uint8\":return s(t);case\"uint16\":return l(t);case\"uint32\":return u(t);case\"int8\":return c(t);case\"int16\":return f(t);case\"int32\":return h(t);case\"float\":case\"float32\":return d(t);case\"double\":case\"float64\":return p(t);case\"uint8_clamped\":return g(t);case\"buffer\":return m(t);case\"data\":case\"dataview\":return v(t);default:return null}return null},r.mallocArrayBuffer=o,r.mallocUint8=s,r.mallocUint16=l,r.mallocUint32=u,r.mallocInt8=c,r.mallocInt16=f,r.mallocInt32=h,r.mallocFloat32=r.mallocFloat=d,r.mallocFloat64=r.mallocDouble=p,r.mallocUint8Clamped=g,r.mallocDataView=v,r.mallocBuffer=m,r.clearCache=function(){for(var t=0;32>t;++t)_.UINT8[t].length=0,_.UINT16[t].length=0,_.UINT32[t].length=0,_.INT8[t].length=0,_.INT16[t].length=0,_.INT32[t].length=0,_.FLOAT[t].length=0,_.DOUBLE[t].length=0,_.UINT8C[t].length=0,w[t].length=0,k[t].length=0}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{},t(\"buffer\").Buffer)},{\"bit-twiddle\":97,buffer:1,dup:98}],100:[function(t,e){\"use strict\";function r(t){this.gl=t,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}function n(t,e){return t.name<e.name?-1:1}function i(t,e,n,i,a){var o=new r(t);return o.update(e,n,i,a),o}var a=t(\"./lib/create-uniforms\"),o=t(\"./lib/create-attributes\"),s=t(\"./lib/reflect\"),l=t(\"./lib/shader-cache\"),u=t(\"./lib/runtime-reflect\"),c=r.prototype;c.bind=function(){this.program||this._relink(),this.gl.useProgram(this.program)},c.dispose=function(){this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null},c.update=function(t,e,r,i){function c(){h.program=l.program(d,h._vref,h._fref,b,x);for(var t=0;t<r.length;++t)E[t]=d.getUniformLocation(h.program,r[t].name)}if(!e||1===arguments.length){var f=t;t=f.vertex,e=f.fragment,r=f.uniforms,i=f.attributes}var h=this,d=h.gl,p=h._vref;h._vref=l.shader(d,d.VERTEX_SHADER,t),p&&p.dispose(),h.vertShader=h._vref.shader;var g=this._fref;if(h._fref=l.shader(d,d.FRAGMENT_SHADER,e),g&&g.dispose(),h.fragShader=h._fref.shader,!r||!i){var v=d.createProgram();if(d.attachShader(v,h.fragShader),d.attachShader(v,h.vertShader),d.linkProgram(v),!d.getProgramParameter(v,d.LINK_STATUS)){var m=d.getProgramInfoLog(v);throw console.error(\"gl-shader: Error linking program:\",m),new Error(\"gl-shader: Error linking program:\"+m)}r=r||u.uniforms(d,v),i=i||u.attributes(d,v),d.deleteProgram(v)}i=i.slice(),i.sort(n);for(var y=[],b=[],x=[],_=0;_<i.length;++_){var w=i[_];if(w.type.indexOf(\"mat\")>=0){for(var k=0|w.type.charAt(w.type.length-1),A=new Array(k),M=0;k>M;++M)A[M]=x.length,b.push(w.name+\"[\"+M+\"]\"),x.push(\"number\"==typeof w.location?w.location+M:Array.isArray(w.location)&&w.location.length===k&&\"number\"==typeof w.location[M]?0|w.location[M]:-1);y.push({name:w.name,type:w.type,locations:A})}else y.push({name:w.name,type:w.type,locations:[x.length]}),b.push(w.name),x.push(\"number\"==typeof w.location?0|w.location:-1)}for(var L=0,_=0;_<x.length;++_)if(x[_]<0){for(;x.indexOf(L)>=0;)L+=1;x[_]=L}var E=new Array(r.length);c(),h._relink=c,h.types={uniforms:s(r),attributes:s(i)},h.attributes=o(d,h,y,x),Object.defineProperty(h,\"uniforms\",a(d,h,r,E))},e.exports=i},{\"./lib/create-attributes\":101,\"./lib/create-uniforms\":102,\"./lib/reflect\":103,\"./lib/runtime-reflect\":104,\"./lib/shader-cache\":105}],101:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=i,this._constFunc=a}function n(t,e,n,i,a,o,s){for(var l=[\"gl\",\"v\"],u=[],c=0;a>c;++c)l.push(\"x\"+c),u.push(\"x\"+c);l.push(\"if(x0.length===void 0){return gl.vertexAttrib\"+a+\"f(v,\"+u.join()+\")}else{return gl.vertexAttrib\"+a+\"fv(v,x0)}\");var f=Function.apply(null,l),h=new r(t,e,n,i,a,f);Object.defineProperty(o,s,{set:function(e){return t.disableVertexAttribArray(i[n]),f(t,i[n],e),e},get:function(){return h},enumerable:!0})}function i(t,e,r,i,a,o,s){for(var l=new Array(a),u=new Array(a),c=0;a>c;++c)n(t,e,r[c],i,a,l,c),u[c]=l[c];Object.defineProperty(l,\"location\",{set:function(t){if(Array.isArray)for(var e=0;a>e;++e)u[e].location=t[e];else for(var e=0;a>e;++e)result[e]=u[e].location=t+e;return t},get:function(){for(var t=new Array(a),e=0;a>e;++e)t[e]=i[r[e]];return t},enumerable:!0}),l.pointer=function(e,n,o,s){e=e||t.FLOAT,n=!!n,o=o||a*a,s=s||0;for(var l=0;a>l;++l){var u=i[r[l]];t.vertexAttribPointer(u,a,e,n,o,s+l*a),t.enableVertexAttribArray(u)}};var f=new Array(a),h=t[\"vertexAttrib\"+a+\"fv\"];Object.defineProperty(o,s,{set:function(e){for(var n=0;a>n;++n){var o=i[r[n]];if(t.disableVertexAttribArray(o),Array.isArray(e[0]))h.call(t,o,e[n]);else{for(var s=0;a>s;++s)f[s]=e[a*n+s];h.call(t,o,f)}}return e},get:function(){return l},enumerable:!0})}function a(t,e,r,a){for(var o={},s=0,l=r.length;l>s;++s){var u=r[s],c=u.name,f=u.type,h=u.locations;switch(f){case\"bool\":case\"int\":case\"float\":n(t,e,h[0],a,1,o,c);break;default:if(f.indexOf(\"vec\")>=0){var d=f.charCodeAt(f.length-1)-48;if(2>d||d>4)throw new Error(\"gl-shader: Invalid data type for attribute \"+c+\": \"+f);n(t,e,h[0],a,d,o,c)}else{if(!(f.indexOf(\"mat\")>=0))throw new Error(\"gl-shader: Unknown data type for attribute \"+c+\": \"+f);var d=f.charCodeAt(f.length-1)-48;if(2>d||d>4)throw new Error(\"gl-shader: Invalid data type for attribute \"+c+\": \"+f);i(t,e,h,a,d,o,c)}}}return o}e.exports=a;var o=r.prototype;o.pointer=function(t,e,r,n){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,t||a.FLOAT,!!e,r||0,n||0),a.enableVertexAttribArray(o)},o.set=function(t,e,r,n){return this._constFunc(this._locations[this._index],t,e,r,n)},Object.defineProperty(o,\"location\",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}})},{}],102:[function(t,e){\"use strict\";function r(t){var e=new Function(\"y\",\"return function(){return y}\");return e(t)}function n(t,e){for(var r=new Array(t),n=0;t>n;++n)r[n]=e;return r}function i(t,e,i,o){function s(r){var n=new Function(\"gl\",\"wrapper\",\"locations\",\"return function(){return gl.getUniform(wrapper.program,locations[\"+r+\"])}\");return n(t,e,o)}function l(t,e,r){switch(r){case\"bool\":case\"int\":case\"sampler2D\":case\"samplerCube\":return\"gl.uniform1i(locations[\"+e+\"],obj\"+t+\")\";case\"float\":return\"gl.uniform1f(locations[\"+e+\"],obj\"+t+\")\";default:var n=r.indexOf(\"vec\");if(!(n>=0&&1>=n&&r.length===4+n)){if(0===r.indexOf(\"mat\")&&4===r.length){var i=r.charCodeAt(r.length-1)-48;if(2>i||i>4)throw new Error(\"gl-shader: Invalid uniform dimension type for matrix \"+name+\": \"+r);return\"gl.uniformMatrix\"+i+\"fv(locations[\"+e+\"],false,obj\"+t+\")\"}throw new Error(\"gl-shader: Unknown uniform data type for \"+name+\": \"+r)}var i=r.charCodeAt(r.length-1)-48;if(2>i||i>4)throw new Error(\"gl-shader: Invalid data type\");switch(r.charAt(0)){case\"b\":case\"i\":return\"gl.uniform\"+i+\"iv(locations[\"+e+\"],obj\"+t+\")\";case\"v\":return\"gl.uniform\"+i+\"fv(locations[\"+e+\"],obj\"+t+\")\";default:throw new Error(\"gl-shader: Unrecognized data type for vector \"+name+\": \"+r)}}}function u(t,e){if(\"object\"!=typeof e)return[[t,e]];var r=[];for(var n in e){var i=e[n],a=t;a+=parseInt(n)+\"\"===n?\"[\"+n+\"]\":\".\"+n,\"object\"==typeof i?r.push.apply(r,u(a,i)):r.push([a,i])}return r}function c(e){for(var r=[\"return function updateProperty(obj){\"],n=u(\"\",e),a=0;a<n.length;++a){var s=n[a],c=s[0],f=s[1];o[f]&&r.push(l(c,f,i[f].type))}r.push(\"return obj}\");var h=new Function(\"gl\",\"locations\",r.join(\"\\n\"));return h(t,o)}function f(t){switch(t){case\"bool\":return!1;case\"int\":case\"sampler2D\":case\"samplerCube\":return 0;case\"float\":return 0;default:var e=t.indexOf(\"vec\");if(e>=0&&1>=e&&t.length===4+e){var r=t.charCodeAt(t.length-1)-48;if(2>r||r>4)throw new Error(\"gl-shader: Invalid data type\");return\"b\"===t.charAt(0)?n(r,!1):n(r,0)}if(0===t.indexOf(\"mat\")&&4===t.length){var r=t.charCodeAt(t.length-1)-48;if(2>r||r>4)throw new Error(\"gl-shader: Invalid uniform dimension type for matrix \"+name+\": \"+t);return n(r*r,0)}throw new Error(\"gl-shader: Unknown uniform data type for \"+name+\": \"+t)}}function h(t,e,n){if(\"object\"==typeof n){var a=d(n);Object.defineProperty(t,e,{get:r(a),set:c(n),enumerable:!0,configurable:!1})}else o[n]?Object.defineProperty(t,e,{get:s(n),set:c(n),enumerable:!0,configurable:!1}):t[e]=f(i[n].type)}function d(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r<t.length;++r)h(e,r,t[r])}else{e={};for(var n in t)h(e,n,t[n])}return e}var p=a(i,!0);return{get:r(d(p)),set:c(p),enumerable:!0,configurable:!0}}var a=t(\"./reflect\");e.exports=i},{\"./reflect\":103}],103:[function(t,e){\"use strict\";function r(t,e){for(var r={},n=0;n<t.length;++n)for(var i=t[n].name,a=i.split(\".\"),o=r,s=0;s<a.length;++s){var l=a[s].split(\"[\");if(l.length>1){l[0]in o||(o[l[0]]=[]),o=o[l[0]];for(var u=1;u<l.length;++u){var c=parseInt(l[u]);u<l.length-1||s<a.length-1?(c in o||(o[c]=u<l.length-1?[]:{}),o=o[c]):o[c]=e?n:t[n].type}}else s<a.length-1?(l[0]in o||(o[l[0]]={}),o=o[l[0]]):o[l[0]]=e?n:t[n].type}return r}e.exports=r},{}],104:[function(t,e,r){\"use strict\";function n(t,e){if(!s){var r=Object.keys(o);s={};for(var n=0;n<r.length;++n){var i=r[n];s[t[i]]=o[i]}}return s[e]}function i(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_UNIFORMS),i=[],a=0;r>a;++a){var o=t.getActiveUniform(e,a);if(o){var s=n(t,o.type);if(o.size>1)for(var l=0;l<o.size;++l)i.push({name:o.name.replace(\"[0]\",\"[\"+l+\"]\"),type:s});else i.push({name:o.name,type:s})}}return i}function a(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),i=[],a=0;r>a;++a){var o=t.getActiveAttrib(e,a);o&&i.push({name:o.name,type:n(t,o.type)})}return i}r.uniforms=i,r.attributes=a;var o={FLOAT:\"float\",FLOAT_VEC2:\"vec2\",FLOAT_VEC3:\"vec3\",FLOAT_VEC4:\"vec4\",INT:\"int\",INT_VEC2:\"ivec2\",INT_VEC3:\"ivec3\",INT_VEC4:\"ivec4\",BOOL:\"bool\",BOOL_VEC2:\"bvec2\",BOOL_VEC3:\"bvec3\",BOOL_VEC4:\"bvec4\",FLOAT_MAT2:\"mat2\",FLOAT_MAT3:\"mat3\",FLOAT_MAT4:\"mat4\",SAMPLER_2D:\"sampler2D\",SAMPLER_CUBE:\"samplerCube\"},s=null},{}],105:[function(t,e,r){\"use strict\";function n(t,e,r,n,i,a,o){this.id=t,this.src=e,this.type=r,this.shader=n,this.count=a,this.programs=[],this.cache=o}function i(t){this.gl=t,this.shaders=[{},{}],this.programs={}}function a(t,e,r){var n=t.createShader(e);if(t.shaderSource(n,r),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS)){var i=t.getShaderInfoLog(n);throw console.error(\"gl-shader: Error compiling shader:\",i),new Error(\"gl-shader: Error compiling shader:\"+i)}return n}function o(t,e,r,n,i){var a=t.createProgram();t.attachShader(a,e),t.attachShader(a,r);for(var o=0;o<n.length;++o)t.bindAttribLocation(a,i[o],n[o]);if(t.linkProgram(a),!t.getProgramParameter(a,t.LINK_STATUS)){var s=t.getProgramInfoLog(a);throw console.error(\"gl-shader: Error linking program:\",s),new Error(\"gl-shader: Error linking program:\"+s)}return a}function s(t){var e=f.get(t);return e||(e=new i(t),f.set(t,e)),e}function l(t,e,r){return s(t).getShaderReference(e,r)}function u(t,e,r,n,i){return s(t).getProgram(e,r,n,i)}r.shader=l,r.program=u;var c=\"undefined\"==typeof WeakMap?t(\"weakmap-shim\"):WeakMap,f=new c,h=0;n.prototype.dispose=function(){if(0===--this.count){for(var t=this.cache,e=t.gl,r=this.programs,n=0,i=r.length;i>n;++n){var a=t.programs[r[n]];a&&(delete t.programs[n],e.deleteProgram(a))}e.deleteShader(this.shader),delete t.shaders[this.type===e.FRAGMENT_SHADER|0][this.src]}};var d=i.prototype;d.getShaderReference=function(t,e){var r=this.gl,i=this.shaders[t===r.FRAGMENT_SHADER|0],o=i[e];if(o&&r.isShader(o.shader))o.count+=1;else{var s=a(r,t,e);o=i[e]=new n(h++,e,t,s,[],1,this)}return o},d.getProgram=function(t,e,r,n){var i=[t.id,e.id,r.join(\":\"),n.join(\":\")].join(\"@\"),a=this.programs[i];return a&&this.gl.isProgram(a)||(this.programs[i]=a=o(this.gl,t.shader,e.shader,r,n),t.programs.push(i),e.programs.push(i)),a}},{\"weakmap-shim\":108}],106:[function(t,e){function r(){var t={};return function(e){if((\"object\"!=typeof e||null===e)&&\"function\"!=typeof e)throw new Error(\"Weakmap-shim: Key must be object\");var r=e.valueOf(t);return r&&r.identity===t?r:n(e,t)}}var n=t(\"./hidden-store.js\");e.exports=r},{\"./hidden-store.js\":107}],107:[function(t,e){function r(t,e){var r={identity:e},n=t.valueOf;return Object.defineProperty(t,\"valueOf\",{value:function(t){return t!==e?n.apply(this,arguments):r},writable:!0}),r}e.exports=r},{}],108:[function(t,e){function r(){var t=n();return{get:function(e,r){var n=t(e);return n.hasOwnProperty(\"value\")?n.value:r},set:function(e,r){t(e).value=r},has:function(e){return\"value\"in t(e)},delete:function(e){return delete t(e).value}}}var n=t(\"./create-store.js\");e.exports=r},{\"./create-store.js\":106}],109:[function(t,e){\"use strict\";function r(t,e,r){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var n=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error(\"gl-vao: Too many vertex attributes\");for(var i=0;i<r.length;++i){var a=r[i];if(a.buffer){var o=a.buffer,s=a.size||4,l=a.type||t.FLOAT,u=!!a.normalized,c=a.stride||0,f=a.offset||0;o.bind(),t.enableVertexAttribArray(i),t.vertexAttribPointer(i,s,l,u,c,f)}else{if(\"number\"==typeof a)t.vertexAttrib1f(i,a);else if(1===a.length)t.vertexAttrib1f(i,a[0]);else if(2===a.length)t.vertexAttrib2f(i,a[0],a[1]);else if(3===a.length)t.vertexAttrib3f(i,a[0],a[1],a[2]);else{if(4!==a.length)throw new Error(\"gl-vao: Invalid vertex attribute\");t.vertexAttrib4f(i,a[0],a[1],a[2],a[3])}t.disableVertexAttribArray(i)}}for(;n>i;++i)t.disableVertexAttribArray(i)}else{t.bindBuffer(t.ARRAY_BUFFER,null);for(var i=0;n>i;++i)t.disableVertexAttribArray(i)}}e.exports=r},{}],110:[function(t,e){\"use strict\";function r(t){this.gl=t,this._elements=null,this._attributes=null,this._elementsType=t.UNSIGNED_SHORT}function n(t){return new r(t)}var i=t(\"./do-bind.js\");r.prototype.bind=function(){i(this.gl,this._elements,this._attributes)},r.prototype.update=function(t,e,r){this._elements=e,this._attributes=t,this._elementsType=r||this.gl.UNSIGNED_SHORT},r.prototype.dispose=function(){},r.prototype.unbind=function(){},r.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._elements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},e.exports=n},{\"./do-bind.js\":109}],111:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){this.location=t,this.dimension=e,this.a=r,this.b=n,this.c=i,this.d=a}function n(t,e,r){this.gl=t,this._ext=e,this.handle=r,this._attribs=[],this._useElements=!1,this._elementsType=t.UNSIGNED_SHORT}function i(t,e){return new n(t,e,e.createVertexArrayOES())}var a=t(\"./do-bind.js\");r.prototype.bind=function(t){switch(this.dimension){case 1:t.vertexAttrib1f(this.location,this.a);break;case 2:t.vertexAttrib2f(this.location,this.a,this.b);break;case 3:t.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:t.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d)}},n.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var t=0;t<this._attribs.length;++t)this._attribs[t].bind(this.gl)},n.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},n.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},n.prototype.update=function(t,e,n){if(this.bind(),a(this.gl,e,t),this.unbind(),this._attribs.length=0,t)for(var i=0;i<t.length;++i){var o=t[i];\"number\"==typeof o?this._attribs.push(new r(i,1,o)):Array.isArray(o)&&this._attribs.push(new r(i,o.length,o[0],o[1],o[2],o[3]))}this._useElements=!!e,this._elementsType=n||this.gl.UNSIGNED_SHORT},n.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._useElements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},e.exports=i},{\"./do-bind.js\":109}],112:[function(t,e){\"use strict\";function r(t,e,r,a){var o,s=t.getExtension(\"OES_vertex_array_object\");return o=s?n(t,s):i(t),o.update(e,r,a),o}var n=t(\"./lib/vao-native.js\"),i=t(\"./lib/vao-emulated.js\");e.exports=r},{\"./lib/vao-emulated.js\":110,\"./lib/vao-native.js\":111}],113:[function(t,e){\"use strict\";var r=t(\"gl-shader\"),n=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position, offset;\\nattribute vec4 color;\\nuniform mat4 model, view, projection;\\nuniform float capSize;\\nvarying vec4 fragColor;\\nvarying vec3 fragPosition;\\n\\nvoid main() {\\n vec4 worldPosition = model * vec4(position, 1.0);\\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\\n gl_Position = projection * view * worldPosition;\\n fragColor = color;\\n fragPosition = position;\\n}\",i=\"#define GLSLIFY 1\\nprecision mediump float;\\nuniform vec3 clipBounds[2];\\nuniform float opacity;\\nvarying vec3 fragPosition;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n if(any(lessThan(fragPosition, clipBounds[0])) || any(greaterThan(fragPosition, clipBounds[1]))) {\\n discard;\\n }\\n gl_FragColor = opacity * fragColor;\\n}\";e.exports=function(t){return r(t,n,i,null,[{name:\"position\",type:\"vec3\"},{name:\"offset\",type:\"vec3\"},{name:\"color\",type:\"vec4\"}])}},{\"gl-shader\":100}],114:[function(t,e,r){var n=t(\"gl-shader\"),i=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position, nextPosition;\\nattribute float arcLength, lineWidth;\\nattribute vec4 color;\\n\\nuniform vec2 screenShape;\\nuniform float pixelRatio;\\nuniform mat4 model, view, projection;\\n\\nvarying vec4 fragColor;\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\n\\nvoid main() {\\n vec4 projected = projection * view * model * vec4(position, 1.0);\\n vec4 tangentClip = projection * view * model * vec4(nextPosition - position, 0.0);\\n vec2 tangent = normalize(screenShape * tangentClip.xy);\\n vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(tangent.y, -tangent.x) / screenShape;\\n\\n gl_Position = vec4(projected.xy + projected.w * offset, projected.zw);\\n\\n worldPosition = position;\\n pixelArcLength = arcLength;\\n fragColor = color;\\n}\\n\",a=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 clipBounds[2];\\nuniform sampler2D dashTexture;\\nuniform float dashScale;\\nuniform float opacity;\\n\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n if(any(lessThan(worldPosition, clipBounds[0])) || any(greaterThan(worldPosition, clipBounds[1]))) {\\n discard;\\n }\\n float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\\n if(dashWeight < 0.5) {\\n discard;\\n }\\n gl_FragColor = fragColor * opacity;\\n}\\n\",o=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\n#define FLOAT_MAX 1.70141184e38\\n#define FLOAT_MIN 1.17549435e-38\\n\\nlowp vec4 encode_float_1_0(highp float v) {\\n highp float av = abs(v);\\n\\n //Handle special cases\\n if(av < FLOAT_MIN) {\\n return vec4(0.0, 0.0, 0.0, 0.0);\\n } else if(v > FLOAT_MAX) {\\n return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\\n } else if(v < -FLOAT_MAX) {\\n return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\\n }\\n\\n highp vec4 c = vec4(0,0,0,0);\\n\\n //Compute exponent and mantissa\\n highp float e = floor(log2(av));\\n highp float m = av * pow(2.0, -e) - 1.0;\\n \\n //Unpack mantissa\\n c[1] = floor(128.0 * m);\\n m -= c[1] / 128.0;\\n c[2] = floor(32768.0 * m);\\n m -= c[2] / 32768.0;\\n c[3] = floor(8388608.0 * m);\\n \\n //Unpack exponent\\n highp float ebias = e + 127.0;\\n c[0] = floor(ebias / 2.0);\\n ebias -= c[0] * 2.0;\\n c[1] += floor(ebias) * 128.0; \\n\\n //Unpack sign bit\\n c[0] += 128.0 * step(0.0, -v);\\n\\n //Scale back to range\\n return c / 255.0;\\n}\\n\\n\\n\\nuniform float pickId;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n if(any(lessThan(worldPosition, clipBounds[0])) || any(greaterThan(worldPosition, clipBounds[1]))) {\\n discard;\\n }\\n gl_FragColor = vec4(pickId/255.0, encode_float_1_0(pixelArcLength).xyz);\\n}\",s=[{name:\"position\",type:\"vec3\"},{name:\"nextPosition\",type:\"vec3\"},{name:\"arcLength\",type:\"float\"},{name:\"lineWidth\",type:\"float\"},{name:\"color\",type:\"vec4\"}];r.createShader=function(t){return n(t,i,a,null,s)},r.createPickShader=function(t){return n(t,i,o,null,s)}},{\"gl-shader\":121}],115:[function(t,e){\"use strict\";function r(t,e){for(var r=0,n=0;3>n;++n){var i=t[n]-e[n];r+=i*i}return Math.sqrt(r)}function n(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;3>r;++r)e[0][r]=Math.max(t[0][r],e[0][r]),e[1][r]=Math.min(t[1][r],e[1][r]);return e}function i(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function a(t,e,r,n,i,a){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.dirty=!0,this.pixelRatio=1}function o(t){var e=t.gl||t.scene&&t.scene.gl,r=p(e);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var n=g(e);n.attributes.position.location=0,n.attributes.nextPosition.location=1,n.attributes.arcLength.location=2,n.attributes.lineWidth.location=3,n.attributes.color.location=4;for(var i=s(e),o=l(e,[{buffer:i,size:3,offset:0,stride:48},{buffer:i,size:3,offset:12,stride:48},{buffer:i,size:1,offset:24,stride:48},{buffer:i,size:1,offset:28,stride:48},{buffer:i,size:4,offset:32,stride:48}]),c=h(new Array(1024),[256,1,4]),f=0;1024>f;++f)c.data[f]=255;var d=u(e,c);d.wrap=e.REPEAT;var v=new a(e,r,n,i,o,d);return v.update(t),v}e.exports=o;var s=t(\"gl-buffer\"),l=t(\"gl-vao\"),u=t(\"gl-texture2d\"),c=t(\"glsl-read-float\"),f=t(\"binary-search-bounds\"),h=t(\"ndarray\"),d=t(\"./lib/shaders\"),p=d.createShader,g=d.createPickShader,v=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],m=a.prototype;m.isTransparent=function(){return this.opacity<1},m.isOpaque=function(){return this.opacity>=1},m.pickSlots=1,m.setPickBase=function(t){this.pickId=t},m.drawTransparent=m.draw=function(t){var e=this.gl,r=this.shader,i=this.vao;r.bind(),r.uniforms={model:t.model||v,view:t.view||v,projection:t.projection||v,clipBounds:n(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},i.bind(),i.draw(e.TRIANGLE_STRIP,this.vertexCount)},m.drawPick=function(t){var e=this.gl,r=this.pickShader,i=this.vao;r.bind(),r.uniforms={model:t.model||v,view:t.view||v,projection:t.projection||v,pickId:this.pickId,clipBounds:n(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},i.bind(),i.draw(e.TRIANGLE_STRIP,this.vertexCount)},m.update=function(t){this.dirty=!0,\"dashScale\"in t&&(this.dashScale=t.dashScale),\"opacity\"in t&&(this.opacity=+t.opacity);var e=t.position||t.positions;if(e){var n=t.color||t.colors||[0,0,0,1],i=t.lineWidth||1,a=[],o=[],s=[],l=0,u=0,c=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];t:for(var d=1;d<e.length;++d){var p=e[d-1],g=e[d];o.push(l),s.push(p.slice());for(var v=0;3>v;++v){if(isNaN(p[v])||isNaN(g[v])||!isFinite(p[v])||!isFinite(g[v]))continue t;c[0][v]=Math.min(c[0][v],p[v],g[v]),c[1][v]=Math.max(c[1][v],p[v],g[v])}var m,y;Array.isArray(n[0])?(m=n[d-1],y=n[d]):m=y=n,3===m.length&&(m=[m[0],m[1],m[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]);var b,x;Array.isArray(i)?(b=i[d-1],x=lineWidht[d]):b=x=i;var _=l;l+=r(p,g),a.push(p[0],p[1],p[2],g[0],g[1],g[2],_,b,m[0],m[1],m[2],m[3],p[0],p[1],p[2],g[0],g[1],g[2],_,-b,m[0],m[1],m[2],m[3],g[0],g[1],g[2],p[0],p[1],p[2],l,-b,y[0],y[1],y[2],y[3],g[0],g[1],g[2],p[0],p[1],p[2],l,b,y[0],y[1],y[2],y[3]),u+=4}if(this.buffer.update(a),o.push(l),s.push(e[e.length-1].slice()),this.bounds=c,this.vertexCount=u,this.points=s,this.arcLength=o,\"dashes\"in t){var w=t.dashes,k=w.slice();k.unshift(0);for(var d=1;d<k.length;++d)k[d]=k[d-1]+k[d];for(var A=h(new Array(1024),[256,1,4]),d=0;256>d;++d){for(var v=0;4>v;++v)A.set(d,0,v,0);1&f.le(k,k[k.length-1]*d/255)?A.set(d,0,0,0):A.set(d,0,0,255)}this.texture.setPixels(A)}}},m.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},m.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=c(t.value[0],t.value[1],t.value[2],0),r=f.le(this.arcLength,e);if(0>r)return null;if(r===this.arcLength.length-1)return new i(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),r);for(var n=this.points[r],a=this.points[Math.min(r+1,this.points.length-1)],o=(e-this.arcLength[r])/(this.arcLength[r+1]-this.arcLength[r]),s=1-o,l=[0,0,0],u=0;3>u;++u)l[u]=s*n[u]+o*a[u];var h=Math.min(.5>o?r:r+1,this.points.length-1);return new i(e,l,h,this.points[h])}},{\"./lib/shaders\":114,\"binary-search-bounds\":116,\"gl-buffer\":117,\"gl-texture2d\":133,\"gl-vao\":137,\"glsl-read-float\":138,ndarray:560}],116:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],117:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":120}],118:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],119:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],120:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":118,buffer:1,dup:99}],121:[function(t,e,r){arguments[4][100][0].apply(r,arguments)},{\"./lib/create-attributes\":122,\"./lib/create-uniforms\":123,\"./lib/reflect\":124,\"./lib/runtime-reflect\":125,\"./lib/shader-cache\":126,dup:100}],122:[function(t,e,r){arguments[4][101][0].apply(r,arguments)},{dup:101}],123:[function(t,e,r){arguments[4][102][0].apply(r,arguments)},{\"./reflect\":124,dup:102}],124:[function(t,e,r){arguments[4][103][0].apply(r,arguments)},{dup:103}],125:[function(t,e,r){arguments[4][104][0].apply(r,arguments)},{dup:104}],126:[function(t,e,r){arguments[4][105][0].apply(r,arguments)},{dup:105,\"weakmap-shim\":129}],127:[function(t,e,r){arguments[4][106][0].apply(r,arguments)},{\"./hidden-store.js\":128,dup:106}],128:[function(t,e,r){arguments[4][107][0].apply(r,arguments)},{dup:107}],129:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{\"./create-store.js\":127,dup:108}],130:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],131:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],132:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":130,buffer:1,dup:99}],133:[function(t,e){\"use strict\";function r(t){g=[t.LINEAR,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_NEAREST],v=[t.NEAREST,t.LINEAR,t.NEAREST_MIPMAP_NEAREST,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_LINEAR],m=[t.REPEAT,t.CLAMP_TO_EDGE,t.MIRRORED_REPEAT]}function n(t,e,r){var n=t.gl,i=n.getParameter(n.MAX_TEXTURE_SIZE);if(0>e||e>i||0>r||r>i)throw new Error(\"gl-texture2d: Invalid texture size\");return t._shape=[e,r],t.bind(),n.texImage2D(n.TEXTURE_2D,0,t.format,e,r,0,t.format,t.type,null),t._mipLevels=[0],t}function i(t,e,r,n,i,a){this.gl=t,this.handle=e,this.format=i,this.type=a,this._shape=[r,n],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}function a(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function o(t,e,r,n,i,o,s,l){var u=l.dtype,c=l.shape.slice();if(c.length<2||c.length>3)throw new Error(\"gl-texture2d: Invalid ndarray, must be 2d or 3d\");var f=0,g=0,v=a(c,l.stride.slice());\"float32\"===u?f=t.FLOAT:\"float64\"===u?(f=t.FLOAT,v=!1,u=\"float32\"):\"uint8\"===u?f=t.UNSIGNED_BYTE:(f=t.UNSIGNED_BYTE,v=!1,u=\"uint8\");var m=1;if(2===c.length)g=t.LUMINANCE,c=[c[0],c[1],1],l=h(l.data,c,[l.stride[0],l.stride[1],1],l.offset);else{if(3!==c.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===c[2])g=t.ALPHA;else if(2===c[2])g=t.LUMINANCE_ALPHA;else if(3===c[2])g=t.RGB;else{if(4!==c[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");g=t.RGBA}m=c[2]}if(g!==t.LUMINANCE&&g!==t.ALPHA||i!==t.LUMINANCE&&i!==t.ALPHA||(g=i),g!==i)throw new Error(\"gl-texture2d: Incompatible texture format for setPixels\");var b=l.size,x=s.indexOf(n)<0;if(x&&s.push(n),f===o&&v)0===l.offset&&l.data.length===b?x?t.texImage2D(t.TEXTURE_2D,n,i,c[0],c[1],0,i,o,l.data):t.texSubImage2D(t.TEXTURE_2D,n,e,r,c[0],c[1],i,o,l.data):x?t.texImage2D(t.TEXTURE_2D,n,i,c[0],c[1],0,i,o,l.data.subarray(l.offset,l.offset+b)):t.texSubImage2D(t.TEXTURE_2D,n,e,r,c[0],c[1],i,o,l.data.subarray(l.offset,l.offset+b));else{var _;_=o===t.FLOAT?p.mallocFloat32(b):p.mallocUint8(b);\n",
"var w=h(_,c,[c[2],c[2]*c[0],1]);f===t.FLOAT&&o===t.UNSIGNED_BYTE?y(w,l):d.assign(w,l),x?t.texImage2D(t.TEXTURE_2D,n,i,c[0],c[1],0,i,o,_.subarray(0,b)):t.texSubImage2D(t.TEXTURE_2D,n,e,r,c[0],c[1],i,o,_.subarray(0,b)),o===t.FLOAT?p.freeFloat32(_):p.freeUint8(_)}}function s(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function l(t,e,r,n,a){var o=t.getParameter(t.MAX_TEXTURE_SIZE);if(0>e||e>o||0>r||r>o)throw new Error(\"gl-texture2d: Invalid texture shape\");if(a===t.FLOAT&&!t.getExtension(\"OES_texture_float\"))throw new Error(\"gl-texture2d: Floating point textures not supported on this platform\");var l=s(t);return t.texImage2D(t.TEXTURE_2D,0,n,e,r,0,n,a,null),new i(t,l,e,r,n,a)}function u(t,e,r,n){var a=s(t);return t.texImage2D(t.TEXTURE_2D,0,r,r,n,e),new i(t,a,0|e.width,0|e.height,r,n)}function c(t,e){var r=e.dtype,n=e.shape.slice(),o=t.getParameter(t.MAX_TEXTURE_SIZE);if(n[0]<0||n[0]>o||n[1]<0||n[1]>o)throw new Error(\"gl-texture2d: Invalid texture size\");var l=a(n,e.stride.slice()),u=0;\"float32\"===r?u=t.FLOAT:\"float64\"===r?(u=t.FLOAT,l=!1,r=\"float32\"):\"uint8\"===r?u=t.UNSIGNED_BYTE:(u=t.UNSIGNED_BYTE,l=!1,r=\"uint8\");var c=0;if(2===n.length)c=t.LUMINANCE,n=[n[0],n[1],1],e=h(e.data,n,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==n.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===n[2])c=t.ALPHA;else if(2===n[2])c=t.LUMINANCE_ALPHA;else if(3===n[2])c=t.RGB;else{if(4!==n[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");c=t.RGBA}}u!==t.FLOAT||t.getExtension(\"OES_texture_float\")||(u=t.UNSIGNED_BYTE,l=!1);var f,g,v=e.size;if(l)f=0===e.offset&&e.data.length===v?e.data:e.data.subarray(e.offset,e.offset+v);else{var m=[n[2],n[2]*n[0],1];g=p.malloc(v,r);var b=h(g,n,m,0);\"float32\"!==r&&\"float64\"!==r||u!==t.UNSIGNED_BYTE?d.assign(b,e):y(b,e),f=g.subarray(0,v)}var x=s(t);return t.texImage2D(t.TEXTURE_2D,0,c,n[0],n[1],0,c,u,f),l||p.free(g),new i(t,x,n[0],n[1],c,u)}function f(t){if(arguments.length<=1)throw new Error(\"gl-texture2d: Missing arguments for texture2d constructor\");if(g||r(t),\"number\"==typeof arguments[1])return l(t,arguments[1],arguments[2],arguments[3]||t.RGBA,arguments[4]||t.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return l(t,0|arguments[1][0],0|arguments[1][1],arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(\"object\"==typeof arguments[1]){var e=arguments[1];if(e instanceof HTMLCanvasElement||e instanceof HTMLImageElement||e instanceof HTMLVideoElement||e instanceof ImageData)return u(t,e,arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(e.shape&&e.data&&e.stride)return c(t,e)}throw new Error(\"gl-texture2d: Invalid arguments for texture2d constructor\")}var h=t(\"ndarray\"),d=t(\"ndarray-ops\"),p=t(\"typedarray-pool\");e.exports=f;var g=null,v=null,m=null,y=function(t,e){d.muls(t,e,255)},b=i.prototype;Object.defineProperties(b,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&g.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),v.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&g.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),v.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var r=gl.getExtension(\"EXT_texture_filter_anisotropic\");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),m.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,t),this._wrapS=t}},wrapT:{get:function(){return this._wrapT},set:function(t){if(this.bind(),m.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error(\"gl-texture2d: Must specify wrap mode for rows and columns\");for(var e=0;2>e;++e)if(m.indexOf(t[e])<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);this._wrapS=t[0],this._wrapT=t[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error(\"gl-texture2d: Invalid texture shape\")}else t=[0|t,0|t];return n(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return t=0|t,n(this,t,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t=0|t,n(this,this._shape[0],t),t}}}),b.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},b.dispose=function(){this.gl.deleteTexture(this.handle)},b.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},b.setPixels=function(t,e,r,n){var i=this.gl;if(this.bind(),Array.isArray(e)?(n=r,r=0|e[1],e=0|e[0]):(e=e||0,r=r||0),n=n||0,t instanceof HTMLCanvasElement||t instanceof ImageData||t instanceof HTMLImageElement||t instanceof HTMLVideoElement){var a=this._mipLevels.indexOf(n)<0;a?(i.texImage2D(i.TEXTURE_2D,0,this.format,this.format,this.type,t),this._mipLevels.push(n)):i.texSubImage2D(i.TEXTURE_2D,n,e,r,this.format,this.type,t)}else{if(!(t.shape&&t.stride&&t.data))throw new Error(\"gl-texture2d: Unsupported data type\");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>n||r+t.shape[0]>this._shape[0]>>>n||0>e||0>r)throw new Error(\"gl-texture2d: Texture dimensions are out of bounds\");o(i,e,r,n,this.format,this.type,this._mipLevels,t)}}},{ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":132}],134:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],135:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":134,dup:110}],136:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":134,dup:111}],137:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":135,\"./lib/vao-native.js\":136,dup:112}],138:[function(t,e){function r(t,e,r,a){return n[0]=a,n[1]=r,n[2]=e,n[3]=t,i[0]}e.exports=r;var n=new Uint8Array(4),i=new Float32Array(n.buffer)},{}],139:[function(t,e){function r(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}e.exports=r},{}],140:[function(t,e){function r(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}e.exports=r},{}],141:[function(t,e){function r(t){var e=t[0],r=t[1],n=t[2],i=t[3],a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11],d=t[12],p=t[13],g=t[14],v=t[15],m=e*o-r*a,y=e*s-n*a,b=e*l-i*a,x=r*s-n*o,_=r*l-i*o,w=n*l-i*s,k=u*p-c*d,A=u*g-f*d,M=u*v-h*d,L=c*g-f*p,E=c*v-h*p,C=f*v-h*g;return m*C-y*E+b*L+x*M-_*A+w*k}e.exports=r},{}],142:[function(t,e){function r(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,h=i*o,d=i*s,p=i*l,g=a*o,v=a*s,m=a*l;return t[0]=1-f-p,t[1]=c+m,t[2]=h-v,t[3]=0,t[4]=c-m,t[5]=1-u-p,t[6]=d+g,t[7]=0,t[8]=h+v,t[9]=d-g,t[10]=1-u-f,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}e.exports=r},{}],143:[function(t,e){function r(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,h=n*u,d=i*l,p=i*u,g=a*u,v=o*s,m=o*l,y=o*u;return t[0]=1-(d+g),t[1]=f+y,t[2]=h-m,t[3]=0,t[4]=f-y,t[5]=1-(c+g),t[6]=p+v,t[7]=0,t[8]=h+m,t[9]=p-v,t[10]=1-(c+d),t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}e.exports=r},{}],144:[function(t,e){function r(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}e.exports=r},{}],145:[function(t,e){function r(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],u=e[7],c=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=r*s-n*o,b=r*l-i*o,x=r*u-a*o,_=n*l-i*s,w=n*u-a*s,k=i*u-a*l,A=c*g-f*p,M=c*v-h*p,L=c*m-d*p,E=f*v-h*g,C=f*m-d*g,j=h*m-d*v,S=y*j-b*C+x*E+_*L-w*M+k*A;return S?(S=1/S,t[0]=(s*j-l*C+u*E)*S,t[1]=(i*C-n*j-a*E)*S,t[2]=(g*k-v*w+m*_)*S,t[3]=(h*w-f*k-d*_)*S,t[4]=(l*L-o*j-u*M)*S,t[5]=(r*j-i*L+a*M)*S,t[6]=(v*x-p*k-m*b)*S,t[7]=(c*k-h*x+d*b)*S,t[8]=(o*C-s*L+u*A)*S,t[9]=(n*L-r*C-a*A)*S,t[10]=(p*w-g*x+m*y)*S,t[11]=(f*x-c*w-d*y)*S,t[12]=(s*M-o*E-l*A)*S,t[13]=(r*E-n*M+i*A)*S,t[14]=(g*b-p*_-v*y)*S,t[15]=(c*_-f*b+h*y)*S,t):null}e.exports=r},{}],146:[function(t,e){function r(t,e,r,i){var a,o,s,l,u,c,f,h,d,p,g=e[0],v=e[1],m=e[2],y=i[0],b=i[1],x=i[2],_=r[0],w=r[1],k=r[2];return Math.abs(g-_)<1e-6&&Math.abs(v-w)<1e-6&&Math.abs(m-k)<1e-6?n(t):(f=g-_,h=v-w,d=m-k,p=1/Math.sqrt(f*f+h*h+d*d),f*=p,h*=p,d*=p,a=b*d-x*h,o=x*f-y*d,s=y*h-b*f,p=Math.sqrt(a*a+o*o+s*s),p?(p=1/p,a*=p,o*=p,s*=p):(a=0,o=0,s=0),l=h*s-d*o,u=d*a-f*s,c=f*o-h*a,p=Math.sqrt(l*l+u*u+c*c),p?(p=1/p,l*=p,u*=p,c*=p):(l=0,u=0,c=0),t[0]=a,t[1]=l,t[2]=f,t[3]=0,t[4]=o,t[5]=u,t[6]=h,t[7]=0,t[8]=s,t[9]=c,t[10]=d,t[11]=0,t[12]=-(a*g+o*v+s*m),t[13]=-(l*g+u*v+c*m),t[14]=-(f*g+h*v+d*m),t[15]=1,t)}var n=t(\"./identity\");e.exports=r},{\"./identity\":144}],147:[function(t,e){function r(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],u=e[6],c=e[7],f=e[8],h=e[9],d=e[10],p=e[11],g=e[12],v=e[13],m=e[14],y=e[15],b=r[0],x=r[1],_=r[2],w=r[3];return t[0]=b*n+x*s+_*f+w*g,t[1]=b*i+x*l+_*h+w*v,t[2]=b*a+x*u+_*d+w*m,t[3]=b*o+x*c+_*p+w*y,b=r[4],x=r[5],_=r[6],w=r[7],t[4]=b*n+x*s+_*f+w*g,t[5]=b*i+x*l+_*h+w*v,t[6]=b*a+x*u+_*d+w*m,t[7]=b*o+x*c+_*p+w*y,b=r[8],x=r[9],_=r[10],w=r[11],t[8]=b*n+x*s+_*f+w*g,t[9]=b*i+x*l+_*h+w*v,t[10]=b*a+x*u+_*d+w*m,t[11]=b*o+x*c+_*p+w*y,b=r[12],x=r[13],_=r[14],w=r[15],t[12]=b*n+x*s+_*f+w*g,t[13]=b*i+x*l+_*h+w*v,t[14]=b*a+x*u+_*d+w*m,t[15]=b*o+x*c+_*p+w*y,t}e.exports=r},{}],148:[function(t,e){function r(t,e,r,n,i){var a=1/Math.tan(e/2),o=1/(n-i);return t[0]=a/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+n)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*n*o,t[15]=0,t}e.exports=r},{}],149:[function(t,e){function r(t,e,r,n){var i,a,o,s,l,u,c,f,h,d,p,g,v,m,y,b,x,_,w,k,A,M,L,E,C=n[0],j=n[1],S=n[2],T=Math.sqrt(C*C+j*j+S*S);return Math.abs(T)<1e-6?null:(T=1/T,C*=T,j*=T,S*=T,i=Math.sin(r),a=Math.cos(r),o=1-a,s=e[0],l=e[1],u=e[2],c=e[3],f=e[4],h=e[5],d=e[6],p=e[7],g=e[8],v=e[9],m=e[10],y=e[11],b=C*C*o+a,x=j*C*o+S*i,_=S*C*o-j*i,w=C*j*o-S*i,k=j*j*o+a,A=S*j*o+C*i,M=C*S*o+j*i,L=j*S*o-C*i,E=S*S*o+a,t[0]=s*b+f*x+g*_,t[1]=l*b+h*x+v*_,t[2]=u*b+d*x+m*_,t[3]=c*b+p*x+y*_,t[4]=s*w+f*k+g*A,t[5]=l*w+h*k+v*A,t[6]=u*w+d*k+m*A,t[7]=c*w+p*k+y*A,t[8]=s*M+f*L+g*E,t[9]=l*M+h*L+v*E,t[10]=u*M+d*L+m*E,t[11]=c*M+p*L+y*E,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}e.exports=r},{}],150:[function(t,e){function r(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+u*n,t[5]=o*i+c*n,t[6]=s*i+f*n,t[7]=l*i+h*n,t[8]=u*i-a*n,t[9]=c*i-o*n,t[10]=f*i-s*n,t[11]=h*i-l*n,t}e.exports=r},{}],151:[function(t,e){function r(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],u=e[8],c=e[9],f=e[10],h=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i-u*n,t[1]=o*i-c*n,t[2]=s*i-f*n,t[3]=l*i-h*n,t[8]=a*n+u*i,t[9]=o*n+c*i,t[10]=s*n+f*i,t[11]=l*n+h*i,t}e.exports=r},{}],152:[function(t,e){function r(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],u=e[4],c=e[5],f=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+u*n,t[1]=o*i+c*n,t[2]=s*i+f*n,t[3]=l*i+h*n,t[4]=u*i-a*n,t[5]=c*i-o*n,t[6]=f*i-s*n,t[7]=h*i-l*n,t}e.exports=r},{}],153:[function(t,e){function r(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}e.exports=r},{}],154:[function(t,e){function r(t,e,r){var n,i,a,o,s,l,u,c,f,h,d,p,g=r[0],v=r[1],m=r[2];return e===t?(t[12]=e[0]*g+e[4]*v+e[8]*m+e[12],t[13]=e[1]*g+e[5]*v+e[9]*m+e[13],t[14]=e[2]*g+e[6]*v+e[10]*m+e[14],t[15]=e[3]*g+e[7]*v+e[11]*m+e[15]):(n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],u=e[6],c=e[7],f=e[8],h=e[9],d=e[10],p=e[11],t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=u,t[7]=c,t[8]=f,t[9]=h,t[10]=d,t[11]=p,t[12]=n*g+s*v+f*m+e[12],t[13]=i*g+l*v+h*m+e[13],t[14]=a*g+u*v+d*m+e[14],t[15]=o*g+c*v+p*m+e[15]),t}e.exports=r},{}],155:[function(t,e){function r(t,e){if(t===e){var r=e[1],n=e[2],i=e[3],a=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=r,t[6]=e[9],t[7]=e[13],t[8]=n,t[9]=a,t[11]=e[14],t[12]=i,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}e.exports=r},{}],156:[function(t,e){\"use strict\";function r(t,e){for(var r=[0,0,0,0],n=0;4>n;++n)for(var i=0;4>i;++i)r[i]+=t[4*n+i]*e[n];return r}function n(t,e,n,i,a){for(var o=r(i,r(n,r(e,[t[0],t[1],t[2],1]))),s=0;3>s;++s)o[s]/=o[3];return[.5*a[0]*(1+o[0]),.5*a[1]*(1-o[1])]}function i(t,e){if(2===t.length){for(var r=0,n=0,i=0;2>i;++i)r+=Math.pow(e[i]-t[0][i],2),n+=Math.pow(e[i]-t[1][i],2);return r=Math.sqrt(r),n=Math.sqrt(n),1e-6>r+n?[1,0]:[n/(r+n),r/(n+r)]}if(3===t.length){var a=[0,0];return l(t[0],t[1],t[2],e,a),s(t,a)}return[]}function a(t,e){for(var r=[0,0,0],n=0;n<t.length;++n)for(var i=t[n],a=e[n],o=0;3>o;++o)r[o]+=a*i[o];return r}function o(t,e,r,o,s,l){if(1===t.length)return[0,t[0].slice()];for(var u=new Array(t.length),c=0;c<t.length;++c)u[c]=n(t[c],r,o,s,l);for(var f=0,h=1/0,c=0;c<u.length;++c){for(var d=0,p=0;2>p;++p)d+=Math.pow(u[c][p]-e[p],2);h>d&&(h=d,f=c)}for(var g=i(u,e),v=0,c=0;3>c;++c){if(g[c]<-.001||g[c]>1.0001)return null;v+=g[c]}return Math.abs(v-1)>.001?null:[f,a(t,g),g]}var s=t(\"barycentric\"),l=t(\"polytope-closest-point/lib/closest_point_2d.js\");e.exports=o},{barycentric:159,\"polytope-closest-point/lib/closest_point_2d.js\":185}],157:[function(t,e,r){var n=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position, normal;\\nattribute vec4 color;\\nattribute vec2 uv;\\n\\nuniform mat4 model\\n , view\\n , projection;\\nuniform vec3 eyePosition\\n , lightPosition;\\n\\nvarying vec3 f_normal\\n , f_lightDirection\\n , f_eyeDirection\\n , f_data;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n vec4 m_position = model * vec4(position, 1.0);\\n vec4 t_position = view * m_position;\\n gl_Position = projection * t_position;\\n f_color = color;\\n f_normal = normal;\\n f_data = position;\\n f_eyeDirection = eyePosition - position;\\n f_lightDirection = lightPosition - position;\\n f_uv = uv;\\n}\",i=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nfloat beckmannDistribution_2_0(float x, float roughness) {\\n float NdotH = max(x, 0.0001);\\n float cos2Alpha = NdotH * NdotH;\\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n float roughness2 = roughness * roughness;\\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\n\\n\\nfloat cookTorranceSpecular_1_1(\\n vec3 lightDirection,\\n vec3 viewDirection,\\n vec3 surfaceNormal,\\n float roughness,\\n float fresnel) {\\n\\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\\n\\n //Half angle vector\\n vec3 H = normalize(lightDirection + viewDirection);\\n\\n //Geometric term\\n float NdotH = max(dot(surfaceNormal, H), 0.0);\\n float VdotH = max(dot(viewDirection, H), 0.000001);\\n float LdotH = max(dot(lightDirection, H), 0.000001);\\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\\n float G = min(1.0, min(G1, G2));\\n \\n //Distribution term\\n float D = beckmannDistribution_2_0(NdotH, roughness);\\n\\n //Fresnel term\\n float F = pow(1.0 - VdotN, fresnel);\\n\\n //Multiply terms and done\\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\\n}\\n\\n\\n\\nuniform vec3 clipBounds[2];\\nuniform float roughness\\n , fresnel\\n , kambient\\n , kdiffuse\\n , kspecular\\n , opacity;\\nuniform sampler2D texture;\\n\\nvarying vec3 f_normal\\n , f_lightDirection\\n , f_eyeDirection\\n , f_data;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n if(any(lessThan(f_data, clipBounds[0])) || \\n any(greaterThan(f_data, clipBounds[1]))) {\\n discard;\\n }\\n\\n vec3 N = normalize(f_normal);\\n vec3 L = normalize(f_lightDirection);\\n vec3 V = normalize(f_eyeDirection);\\n \\n if(!gl_FrontFacing) {\\n N = -N;\\n }\\n\\n float specular = cookTorranceSpecular_1_1(L, V, N, roughness, fresnel);\\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\\n\\n gl_FragColor = litColor * opacity;\\n}\",a=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 uv;\\n\\nuniform mat4 model, view, projection;\\n\\nvarying vec4 f_color;\\nvarying vec3 f_data;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n gl_Position = projection * view * model * vec4(position, 1.0);\\n f_color = color;\\n f_data = position;\\n f_uv = uv;\\n}\",o=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 clipBounds[2];\\nuniform sampler2D texture;\\nuniform float opacity;\\n\\nvarying vec4 f_color;\\nvarying vec3 f_data;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n if(any(lessThan(f_data, clipBounds[0])) || \\n any(greaterThan(f_data, clipBounds[1]))) {\\n discard;\\n }\\n\\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\\n}\",s=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 uv;\\nattribute float pointSize;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n if(any(lessThan(position, clipBounds[0])) || \\n any(greaterThan(position, clipBounds[1]))) {\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n gl_Position = projection * view * model * vec4(position, 1.0);\\n }\\n gl_PointSize = pointSize;\\n f_color = color;\\n f_uv = uv;\\n}\",l=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform sampler2D texture;\\nuniform float opacity;\\n\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n vec2 pointR = gl_PointCoord.xy - vec2(0.5,0.5);\\n if(dot(pointR, pointR) > 0.25) {\\n discard;\\n }\\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\\n}\",u=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n gl_Position = projection * view * model * vec4(position, 1.0);\\n f_id = id;\\n f_position = position;\\n}\",c=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 clipBounds[2];\\nuniform float pickId;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n if(any(lessThan(f_position, clipBounds[0])) || \\n any(greaterThan(f_position, clipBounds[1]))) {\\n discard;\\n }\\n gl_FragColor = vec4(pickId, f_id.xyz);\\n}\",f=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute float pointSize;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n if(any(lessThan(position, clipBounds[0])) || \\n any(greaterThan(position, clipBounds[1]))) {\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n gl_Position = projection * view * model * vec4(position, 1.0);\\n gl_PointSize = pointSize;\\n }\\n f_id = id;\\n f_position = position;\\n}\",h=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\n\\nvoid main() {\\n gl_Position = projection * view * model * vec4(position, 1.0);\\n}\",d=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 contourColor;\\n\\nvoid main() {\\n gl_FragColor = vec4(contourColor,1);\\n}\\n\";r.meshShader={vertex:n,fragment:i,attributes:[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.wireShader={vertex:a,fragment:o,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.pointShader={vertex:s,fragment:l,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"pointSize\",type:\"float\"}]},r.pickShader={vertex:u,fragment:c,attributes:[{name:\"position\",type:\"vec3\"},{name:\"id\",type:\"vec4\"}]},r.pointPickShader={vertex:f,fragment:c,attributes:[{name:\"position\",type:\"vec3\"},{name:\"pointSize\",type:\"float\"},{name:\"id\",type:\"vec4\"}]},r.contourShader={vertex:h,fragment:d,attributes:[{name:\"position\",type:\"vec3\"}]}},{}],158:[function(t,e){\"use strict\";function r(t,e,r,n,i,a,o,s,l,u,c,f,h,d,p,g,v,m,y,b,x,_,w,k,A,M,L){this.gl=t,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=c,this.triangleNormals=h,this.triangleUVs=f,this.triangleIds=u,this.triangleVAO=d,this.triangleCount=0,this.lineWidth=1,this.edgePositions=p,this.edgeColors=v,this.edgeUVs=m,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=b,this.pointColors=_,this.pointUVs=w,this.pointSizes=k,this.pointIds=x,this.pointVAO=A,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=M,this.contourVAO=L,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this._model=z,this._view=z,this._projection=z,this._resolution=[1,1]}function n(t){for(var e=_({colormap:t,nshades:256,format:\"rgba\"}),r=new Uint8Array(1024),n=0;256>n;++n){for(var i=e[n],a=0;3>a;++a)r[4*n+a]=i[a];r[4*n+3]=255*i[3]}return x(r,[256,256,4],[4,0,1])}function i(t,e,r){for(var n=new Array(e),i=0;e>i;++i)n[i]=0;for(var a=t.length,i=0;a>i;++i)for(var o=t[i],s=0;s<o.length;++s)n[o[s]]=r[i];return n}function a(t){for(var e=t.length,r=new Array(e),n=0;e>n;++n)r[n]=t[n][2];return r}function o(t){var e=d(t,L);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.normal.location=4,e}function s(t){var e=d(t,E);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e}function l(t){var e=d(t,C);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function u(t){var e=d(t,j);return e.attributes.position.location=0,e.attributes.id.location=1,e}function c(t){var e=d(t,S);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function f(t){var e=d(t,T);return e.attributes.position.location=0,e}function h(t){var e=t.gl,n=o(e),i=s(e),a=l(e),h=u(e),d=c(e),m=f(e),y=v(e,x(new Uint8Array([255,255,255,255]),[1,1,4]));y.generateMipmap(),y.minFilter=e.LINEAR_MIPMAP_LINEAR,y.magFilter=e.LINEAR;var b=p(e),_=p(e),w=p(e),k=p(e),A=p(e),M=g(e,[{buffer:b,type:e.FLOAT,size:3},{buffer:A,type:e.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:_,type:e.FLOAT,size:4},{buffer:w,type:e.FLOAT,size:2},{buffer:k,type:e.FLOAT,size:3}]),L=p(e),E=p(e),C=p(e),j=p(e),S=g(e,[{buffer:L,type:e.FLOAT,size:3},{buffer:j,type:e.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:E,type:e.FLOAT,size:4},{buffer:C,type:e.FLOAT,size:2}]),T=p(e),z=p(e),P=p(e),I=p(e),O=p(e),D=g(e,[{buffer:T,type:e.FLOAT,size:3},{buffer:O,type:e.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:z,type:e.FLOAT,size:4},{buffer:P,type:e.FLOAT,size:2},{buffer:I,type:e.FLOAT,size:1}]),R=p(e),N=g(e,[{buffer:R,type:e.FLOAT,size:3}]),B=new r(e,y,n,i,a,h,d,m,b,A,_,w,k,M,L,j,E,C,S,T,O,z,P,I,D,R,N);return B.update(t),B}var d=t(\"gl-shader\"),p=t(\"gl-buffer\"),g=t(\"gl-vao\"),v=t(\"gl-texture2d\"),m=t(\"normals\"),y=t(\"gl-mat4/multiply\"),b=t(\"gl-mat4/invert\"),x=t(\"ndarray\"),_=t(\"colormap\"),w=t(\"simplicial-complex-contour\"),k=t(\"typedarray-pool\"),A=t(\"./lib/shaders\"),M=t(\"./lib/closest-point\"),L=A.meshShader,E=A.wireShader,C=A.pointShader,j=A.pickShader,S=A.pointPickShader,T=A.contourShader,z=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=r.prototype;P.isOpaque=function(){return this.opacity>=1},P.isTransparent=function(){return this.opacity<1},P.pickSlots=1,P.setPickBase=function(t){this.pickId=t},P.highlight=function(t){if(!t||!this.contourEnable)return void(this.contourCount=0);for(var e=w(this.cells,this.intensity,t.intensity),r=e.cells,n=e.vertexIds,i=e.vertexWeights,a=r.length,o=k.mallocFloat32(6*a),s=0,l=0;a>l;++l)for(var u=r[l],c=0;2>c;++c){var f=u[0];2===u.length&&(f=u[c]);for(var h=n[f][0],d=n[f][1],p=i[f],g=1-p,v=this.positions[h],m=this.positions[d],y=0;3>y;++y)o[s++]=p*v[y]+g*m[y]}this.contourCount=s/3|0,this.contourPositions.update(o.subarray(0,s)),k.free(o)},P.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,\"contourEnable\"in t&&(this.contourEnable=t.contourEnable),\"contourColor\"in t&&(this.contourColor=t.contourColor),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"opacity\"in t&&(this.opacity=t.opacity),t.texture?(this.texture.dispose(),this.texture=v(e,t.texture)):t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(n(t.colormap)),this.texture.generateMipmap());var r=t.cells,o=t.positions;if(o&&r){var s=[],l=[],u=[],c=[],f=[],h=[],d=[],p=[],g=[],y=[],b=[],x=[],_=[],w=[];this.cells=r,this.positions=o;var k=t.vertexNormals,A=t.cellNormals;t.useFacetNormals&&!A&&(A=m.faceNormals(r,o)),A||k||(k=m.vertexNormals(r,o));var M=t.vertexColors,L=t.cellColors,E=t.meshColor||[1,1,1,1],C=t.vertexUVs,j=t.vertexIntensity,S=t.cellUVs,T=t.cellIntensity,z=1/0,P=-1/0;if(!C&&!S)if(j)for(var I=0;I<j.length;++I){var O=j[I];z=Math.min(z,O),P=Math.max(P,O)}else if(T)for(var I=0;I<T.length;++I){var O=T[I];z=Math.min(z,O),P=Math.max(P,O)}else for(var I=0;I<o.length;++I){var O=o[I][2];z=Math.min(z,O),P=Math.max(P,O)}this.intensity=j?j:T?i(r,o.length,T):a(o);var D=t.pointSizes,R=t.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var I=0;I<o.length;++I)for(var N=o[I],B=0;3>B;++B)!isNaN(N[B])&&isFinite(N[B])&&(this.bounds[0][B]=Math.min(this.bounds[0][B],N[B]),this.bounds[1][B]=Math.max(this.bounds[1][B],N[B]));var F=0,U=0,V=0;t:for(var I=0;I<r.length;++I){var H=r[I];switch(H.length){case 1:for(var q=H[0],N=o[q],B=0;3>B;++B)if(isNaN(N[B])||!isFinite(N[B]))continue t;y.push(N[0],N[1],N[2]);var G;G=M?M[q]:L?L[I]:E,3===G.length?b.push(G[0],G[1],G[2],1):b.push(G[0],G[1],G[2],G[3]);var Y;Y=C?C[q]:j?[(j[q]-z)/(P-z),0]:S?S[I]:T?[(T[I]-z)/(P-z),0]:[(N[2]-z)/(P-z),0],x.push(Y[0],Y[1]),_.push(D?D[q]:R),w.push(I),V+=1;break;case 2:for(var B=0;2>B;++B)for(var q=H[B],N=o[q],W=0;3>W;++W)if(isNaN(N[W])||!isFinite(N[W]))continue t;for(var B=0;2>B;++B){var q=H[B],N=o[q];h.push(N[0],N[1],N[2]);var G;G=M?M[q]:L?L[I]:E,3===G.length?d.push(G[0],G[1],G[2],1):d.push(G[0],G[1],G[2],G[3]);var Y;Y=C?C[q]:j?[(j[q]-z)/(P-z),0]:S?S[I]:T?[(T[I]-z)/(P-z),0]:[(N[2]-z)/(P-z),0],p.push(Y[0],Y[1]),g.push(I)}U+=1;break;case 3:for(var B=0;3>B;++B)for(var q=H[B],N=o[q],W=0;3>W;++W)if(isNaN(N[W])||!isFinite(N[W]))continue t;for(var B=0;3>B;++B){var q=H[B],N=o[q];s.push(N[0],N[1],N[2]);var G;G=M?M[q]:L?L[I]:E,3===G.length?l.push(G[0],G[1],G[2],1):l.push(G[0],G[1],G[2],G[3]);var Y;Y=C?C[q]:j?[(j[q]-z)/(P-z),0]:S?S[I]:T?[(T[I]-z)/(P-z),0]:[(N[2]-z)/(P-z),0],c.push(Y[0],Y[1]);var X;X=k?k[q]:A[I],u.push(X[0],X[1],X[2]),f.push(I)}F+=1}}this.pointCount=V,this.edgeCount=U,this.triangleCount=F,this.pointPositions.update(y),this.pointColors.update(b),this.pointUVs.update(x),this.pointSizes.update(_),this.pointIds.update(new Uint32Array(w)),this.edgePositions.update(h),this.edgeColors.update(d),this.edgeUVs.update(p),this.edgeIds.update(new Uint32Array(g)),this.trianglePositions.update(s),this.triangleColors.update(l),this.triangleUVs.update(c),this.triangleNormals.update(u),this.triangleIds.update(new Uint32Array(f))}},P.drawTransparent=P.draw=function(t){t=t||{};for(var e=this.gl,r=t.model||z,n=t.view||z,i=t.projection||z,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;3>o;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);var s={model:r,view:n,projection:i,clipBounds:a,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,contourColor:this.contourColor,texture:0};this.texture.bind(0);var l=new Array(16);y(l,s.view,s.model),y(l,s.projection,l),b(l,l);for(var o=0;3>o;++o)s.eyePosition[o]=l[12+o]/l[15];for(var u=l[15],o=0;3>o;++o)u+=this.lightPosition[o]*l[4*o+3];for(var o=0;3>o;++o){for(var c=l[12+o],f=0;3>f;++f)c+=l[4*f+o]*this.lightPosition[f];s.lightPosition[o]=c/u}if(this.triangleCount>0){var h=this.triShader;h.bind(),h.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var h=this.lineShader;h.bind(),h.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()}if(this.pointCount>0){var h=this.pointShader;h.bind(),h.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var h=this.contourShader;h.bind(),h.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind()}},P.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||z,n=t.view||z,i=t.projection||z,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;3>o;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:r,view:n,projection:i,clipBounds:a,pickId:this.pickId/255},l=this.pickShader;if(l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0){var l=this.pointPickShader;\n",
"l.bind(),l.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()}},P.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions,i=new Array(r.length),a=0;a<r.length;++a)i[a]=n[r[a]];var o=M(i,[t.coord[0],this._resolution[1]-t.coord[1]],this._model,this._view,this._projection,this._resolution);if(!o)return null;for(var s=o[2],l=0,a=0;a<r.length;++a)l+=s[a]*this.intensity[r[a]];return{position:o[1],index:r[o[0]],cell:r,cellId:e,intensity:l,dataCoordinate:this.positions[r[o[0]]]}},P.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()},e.exports=h},{\"./lib/closest-point\":156,\"./lib/shaders\":157,colormap:168,\"gl-buffer\":169,\"gl-mat4/invert\":145,\"gl-mat4/multiply\":147,\"gl-shader\":170,\"gl-texture2d\":179,\"gl-vao\":183,ndarray:560,normals:184,\"simplicial-complex-contour\":186,\"typedarray-pool\":193}],159:[function(t,e){\"use strict\";function r(t){for(var e=0,r=0;r<t.length;++r)e+=t[r];return e}function n(t,e){for(var n=e.length,a=new Array(n+1),o=0;n>o;++o){for(var s=new Array(n+1),l=0;n>=l;++l)s[l]=t[l][o];a[o]=s}a[n]=new Array(n+1);for(var o=0;n>=o;++o)a[n][o]=1;for(var u=new Array(n+1),o=0;n>o;++o)u[o]=e[o];u[n]=1;var c=i(a,u),f=r(c[n+1]);0===f&&(f=1);for(var h=new Array(n+1),o=0;n>=o;++o)h[o]=r(c[o])/f;return h}e.exports=n;var i=t(\"robust-linear-solve\")},{\"robust-linear-solve\":160}],160:[function(t,e,r){arguments[4][40][0].apply(r,arguments)},{dup:40,\"robust-determinant\":166}],161:[function(t,e,r){arguments[4][41][0].apply(r,arguments)},{dup:41}],162:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],163:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":165,\"two-sum\":162}],164:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],165:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],166:[function(t,e,r){arguments[4][46][0].apply(r,arguments)},{dup:46,\"robust-compress\":161,\"robust-scale\":163,\"robust-sum\":164,\"two-product\":165}],167:[function(t,e){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],cool:[{index:0,rgb:[0,255,255]},{index:1,rgb:[255,0,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:0,rgb:[255,255,255,1]}]}},{}],168:[function(t,e){\"use strict\";function r(t){for(var e,r=\"#\",n=0;3>n;++n)e=t[n],e=e.toString(16),r+=(\"00\"+e).substr(e.length);return r}function n(t){return\"rgba(\"+t.join(\",\")+\")\"}var i=t(\"arraytools\"),a=t(\"./colorScales.json\");e.exports=function(t){var e,o,s,l,u,c,f,h,d,p,g,v,m,y=[],b=[],x=[],_=[];if(i.isPlainObject(t)||(t={}),t.colormap||(f=\"jet\"),Array.isArray(t.alpha)?2!==t.alpha.length&&(t.alpha=[1,1]):t.alpha=\"number\"==typeof t.alpha?[t.alpha,t.alpha]:[1,1],\"string\"==typeof t.colormap){if(f=t.colormap.toLowerCase(),!(f in a))throw Error(f+\" not a supported colorscale\");c=a[f]}else Array.isArray(t.colormap)&&(c=t.colormap);if(d=t.nshades||72,h=t.format||\"hex\",g=t.alpha,c.length>d)throw new Error(f+\" map requires nshades to be at least size \"+c.length);for(e=c.map(function(t){return Math.round(t.index*d)}),g[0]<0&&(g[0]=0),g[1]<0&&(g[0]=0),g[0]>1&&(g[0]=1),g[1]>1&&(g[0]=1),m=0;m<e.length;++m)v=c[m].index,o=c[m].rgb,4===o.length&&o[3]>=0&&o[3]<=1||(o[3]=g[0]+(g[1]-g[0])*v);for(m=0;m<e.length-1;++m)u=e[m+1]-e[m],s=c[m].rgb,l=c[m+1].rgb,y=y.concat(i.linspace(s[0],l[0],u)),b=b.concat(i.linspace(s[1],l[1],u)),x=x.concat(i.linspace(s[2],l[2],u)),_=_.concat(i.linspace(s[3],l[3],u));return y=y.map(Math.round),b=b.map(Math.round),x=x.map(Math.round),p=i.zip(y,b,x,_),\"hex\"===h&&(p=p.map(r)),\"rgbaString\"===h&&(p=p.map(n)),p}},{\"./colorScales.json\":167,arraytools:53}],169:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":193}],170:[function(t,e,r){arguments[4][100][0].apply(r,arguments)},{\"./lib/create-attributes\":171,\"./lib/create-uniforms\":172,\"./lib/reflect\":173,\"./lib/runtime-reflect\":174,\"./lib/shader-cache\":175,dup:100}],171:[function(t,e,r){arguments[4][101][0].apply(r,arguments)},{dup:101}],172:[function(t,e,r){arguments[4][102][0].apply(r,arguments)},{\"./reflect\":173,dup:102}],173:[function(t,e,r){arguments[4][103][0].apply(r,arguments)},{dup:103}],174:[function(t,e,r){arguments[4][104][0].apply(r,arguments)},{dup:104}],175:[function(t,e,r){arguments[4][105][0].apply(r,arguments)},{dup:105,\"weakmap-shim\":178}],176:[function(t,e,r){arguments[4][106][0].apply(r,arguments)},{\"./hidden-store.js\":177,dup:106}],177:[function(t,e,r){arguments[4][107][0].apply(r,arguments)},{dup:107}],178:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{\"./create-store.js\":176,dup:108}],179:[function(t,e,r){arguments[4][133][0].apply(r,arguments)},{dup:133,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":193}],180:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],181:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":180,dup:110}],182:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":180,dup:111}],183:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":181,\"./lib/vao-native.js\":182,dup:112}],184:[function(t,e,r){var n=1e-6;r.vertexNormals=function(t,e){for(var r=e.length,i=new Array(r),a=0;r>a;++a)i[a]=[0,0,0];for(var a=0;a<t.length;++a)for(var o=t[a],s=0,l=o[o.length-1],u=o[0],c=0;c<o.length;++c){s=l,l=u,u=o[(c+1)%o.length];for(var f=e[s],h=e[l],d=e[u],p=new Array(3),g=0,v=new Array(3),m=0,y=0;3>y;++y)p[y]=f[y]-h[y],g+=p[y]*p[y],v[y]=d[y]-h[y],m+=v[y]*v[y];if(g*m>n)for(var b=i[l],x=1/Math.sqrt(g*m),y=0;3>y;++y){var _=(y+1)%3,w=(y+2)%3;b[y]+=x*(v[_]*p[w]-v[w]*p[_])}}for(var a=0;r>a;++a){for(var b=i[a],k=0,y=0;3>y;++y)k+=b[y]*b[y];if(k>n)for(var x=1/Math.sqrt(k),y=0;3>y;++y)b[y]*=x;else for(var y=0;3>y;++y)b[y]=0}return i},r.faceNormals=function(t,e){for(var r=t.length,i=new Array(r),a=0;r>a;++a){for(var o=t[a],s=new Array(3),l=0;3>l;++l)s[l]=e[o[l]];for(var u=new Array(3),c=new Array(3),l=0;3>l;++l)u[l]=s[1][l]-s[0][l],c[l]=s[2][l]-s[0][l];for(var f=new Array(3),h=0,l=0;3>l;++l){var d=(l+1)%3,p=(l+2)%3;f[l]=u[d]*c[p]-u[p]*c[d],h+=f[l]*f[l]}h=h>n?1/Math.sqrt(h):0;for(var l=0;3>l;++l)f[l]*=h;i[a]=f}return i}},{}],185:[function(t,e){\"use strict\";function r(t,e,r,o,s){n.length<o.length&&(n=new Float64Array(o.length),i=new Float64Array(o.length),a=new Float64Array(o.length));for(var l=0;l<o.length;++l)n[l]=t[l]-o[l],i[l]=e[l]-t[l],a[l]=r[l]-t[l];for(var u=0,c=0,f=0,h=0,d=0,p=0,l=0;l<o.length;++l){var g=i[l],v=a[l],m=n[l];u+=g*g,c+=g*v,f+=v*v,h+=m*g,d+=m*v,p+=m*m}var y,b=Math.abs(u*f-c*c),x=c*d-f*h,_=c*h-u*d;if(b>=x+_)if(0>x)0>_&&0>h?(_=0,-h>=u?(x=1,y=u+2*h+p):(x=-h/u,y=h*x+p)):(x=0,d>=0?(_=0,y=p):-d>=f?(_=1,y=f+2*d+p):(_=-d/f,y=d*_+p));else if(0>_)_=0,h>=0?(x=0,y=p):-h>=u?(x=1,y=u+2*h+p):(x=-h/u,y=h*x+p);else{var w=1/b;x*=w,_*=w,y=x*(u*x+c*_+2*h)+_*(c*x+f*_+2*d)+p}else{var k,A,M,L;0>x?(k=c+h,A=f+d,A>k?(M=A-k,L=u-2*c+f,M>=L?(x=1,_=0,y=u+2*h+p):(x=M/L,_=1-x,y=x*(u*x+c*_+2*h)+_*(c*x+f*_+2*d)+p)):(x=0,0>=A?(_=1,y=f+2*d+p):d>=0?(_=0,y=p):(_=-d/f,y=d*_+p))):0>_?(k=c+d,A=u+h,A>k?(M=A-k,L=u-2*c+f,M>=L?(_=1,x=0,y=f+2*d+p):(_=M/L,x=1-_,y=x*(u*x+c*_+2*h)+_*(c*x+f*_+2*d)+p)):(_=0,0>=A?(x=1,y=u+2*h+p):h>=0?(x=0,y=p):(x=-h/u,y=h*x+p))):(M=f+d-c-h,0>=M?(x=0,_=1,y=f+2*d+p):(L=u-2*c+f,M>=L?(x=1,_=0,y=u+2*h+p):(x=M/L,_=1-x,y=x*(u*x+c*_+2*h)+_*(c*x+f*_+2*d)+p)))}for(var E=1-x-_,l=0;l<o.length;++l)s[l]=E*t[l]+x*e[l]+_*r[l];return 0>y?0:y}var n=new Float64Array(4),i=new Float64Array(4),a=new Float64Array(4);e.exports=r},{}],186:[function(t,e){\"use strict\";function r(t){for(var e=t.length,r=0,n=0;e>n;++n)r=0|Math.max(r,t[n].length);return r-1}function n(t,e){for(var r=t.length,n=c.mallocUint8(r),i=0;r>i;++i)n[i]=t[i]<e|0;return n}function i(t,e){for(var r=t.length,n=e*(e+1)/2*r|0,i=c.mallocUint32(2*n),a=0,o=0;r>o;++o)for(var s=t[o],e=s.length,l=0;e>l;++l)for(var h=0;l>h;++h){var d=s[h],p=s[l];i[a++]=0|Math.min(d,p),i[a++]=0|Math.max(d,p)}var g=a/2|0;f(u(i,[g,2]));for(var v=2,o=2;a>o;o+=2)(i[o-2]!==i[o]||i[o-1]!==i[o+1])&&(i[v++]=i[o],i[v++]=i[o+1]);return u(i,[v/2|0,2])}function a(t,e,r,n){for(var i=t.data,a=t.shape[0],o=c.mallocDouble(a),s=0,l=0;a>l;++l){var f=i[2*l],h=i[2*l+1];if(r[f]!==r[h]){var d=e[f],p=e[h];i[2*s]=f,i[2*s+1]=h,o[s++]=(p-n)/(p-d)}}return t.shape[0]=s,u(o,[s])}function o(t,e){var r=c.mallocInt32(2*e),n=t.shape[0],i=t.data;r[0]=0;for(var a=0,o=0;n>o;++o){var s=i[2*o];if(s!==a){for(r[2*a+1]=o;++a<s;)r[2*a]=o,r[2*a+1]=o;r[2*a]=o}}for(r[2*a+1]=n;++a<e;)r[2*a]=r[2*a+1]=n;return r}function s(t){for(var e=0|t.shape[0],r=t.data,n=new Array(e),i=0;e>i;++i)n[i]=[r[2*i],r[2*i+1]];return n}function l(t,e,l,u){l=l||0,\"undefined\"==typeof u&&(u=r(t));var f=t.length;if(0===f||1>u)return{cells:[],vertexIds:[],vertexWeights:[]};var d=n(e,+l),p=i(t,u),g=a(p,e,d,+l),v=o(p,0|e.length),m=h(u)(t,p.data,v,d),y=s(p),b=[].slice.call(g.data,0,g.shape[0]);return c.free(d),c.free(p.data),c.free(g.data),c.free(v),{cells:m,vertexIds:y,vertexWeights:b}}e.exports=l;var u=t(\"ndarray\"),c=t(\"typedarray-pool\"),f=t(\"ndarray-sort\"),h=t(\"./lib/codegen\")},{\"./lib/codegen\":187,ndarray:560,\"ndarray-sort\":190,\"typedarray-pool\":193}],187:[function(t,e){\"use strict\";function r(t){function e(t){if(!(t.length<=0)){u.push(\"R.push(\");for(var e=0;e<t.length;++e){var r=t[e];e>0&&u.push(\",\"),u.push(\"[\");for(var n=0;n<r.length;++n){var i=r[n];n>0&&u.push(\",\"),u.push(\"B(C,E,c[\",i[0],\"],c[\",i[1],\"])\")}u.push(\"]\")}u.push(\");\")}}var r=0,n=new Array(t+1);n[0]=[[]];for(var o=1;t>=o;++o)for(var s=n[o]=a(o),l=0;l<s.length;++l)r=Math.max(r,s[o].length);for(var u=[\"function B(C,E,i,j){\",\"var a=Math.min(i,j)|0,b=Math.max(i,j)|0,l=C[2*a],h=C[2*a+1];\",\"while(l<h){\",\"var m=(l+h)>>1,v=E[2*m+1];\",\"if(v===b){return m}\",\"if(b<v){h=m}else{l=m+1}\",\"}\",\"return l;\",\"};\",\"function getContour\",t,\"d(F,E,C,S){\",\"var n=F.length,R=[];\",\"for(var i=0;i<n;++i){var c=F[i],l=c.length;\"],o=t+1;o>1;--o){t+1>o&&u.push(\"else \"),u.push(\"if(l===\",o,\"){\");for(var c=[],l=0;o>l;++l)c.push(\"(S[c[\"+l+\"]]<<\"+l+\")\");u.push(\"var M=\",c.join(\"+\"),\";if(M===0||M===\",(1<<o)-1,\"){continue}switch(M){\");for(var s=n[o-1],l=0;l<s.length;++l)u.push(\"case \",l,\":\"),e(s[l]),u.push(\"break;\");u.push(\"}}\")}u.push(\"}return R;};return getContour\",t,\"d\");var f=new Function(\"pool\",u.join(\"\"));return f(i)}function n(t){var e=o[t];return e||(e=o[t]=r(t)),e}e.exports=n;var i=t(\"typedarray-pool\"),a=t(\"marching-simplex-table\"),o={}},{\"marching-simplex-table\":188,\"typedarray-pool\":193}],188:[function(t,e){\"use strict\";function r(t,e,r){for(var n=new Array(t),i=0;t>i;++i)n[i]=0,i===e&&(n[i]+=.5),i===r&&(n[i]+=.5);return n}function n(t,e){if(0===e||e===(1<<t+1)-1)return[];for(var n=[],i=[],o=0;t>=o;++o)if(e&1<<o){n.push(r(t,o-1,o-1)),i.push(null);for(var s=0;t>=s;++s)~e&1<<s&&(n.push(r(t,o-1,s-1)),i.push([o,s]))}var l=a(n),u=[];t:for(var o=0;o<l.length;++o){for(var c=l[o],f=[],s=0;s<c.length;++s){if(!i[c[s]])continue t;f.push(i[c[s]].slice())}u.push(f)}return u}function i(t){for(var e=1<<t+1,r=new Array(e),i=0;e>i;++i)r[i]=n(t,i);return r}e.exports=i;var a=t(\"convex-hull\")},{\"convex-hull\":54}],189:[function(t,e){\"use strict\";function r(t){switch(t){case\"uint8\":return[s.mallocUint8,s.freeUint8];case\"uint16\":return[s.mallocUint16,s.freeUint16];case\"uint32\":return[s.mallocUint32,s.freeUint32];case\"int8\":return[s.mallocInt8,s.freeInt8];case\"int16\":return[s.mallocInt16,s.freeInt16];case\"int32\":return[s.mallocInt32,s.freeInt32];case\"float32\":return[s.mallocFloat,s.freeFloat];case\"float64\":return[s.mallocDouble,s.freeDouble];default:return null}}function n(t){for(var e=[],r=0;t>r;++r)e.push(\"s\"+r);for(var r=0;t>r;++r)e.push(\"n\"+r);for(var r=1;t>r;++r)e.push(\"d\"+r);for(var r=1;t>r;++r)e.push(\"e\"+r);for(var r=1;t>r;++r)e.push(\"f\"+r);return e}function i(t,e){function i(t){return\"generic\"===e?[\"data.get(\",t,\")\"].join(\"\"):[\"data[\",t,\"]\"].join(\"\")}function a(t,r){return\"generic\"===e?[\"data.set(\",t,\",\",r,\")\"].join(\"\"):[\"data[\",t,\"]=\",r].join(\"\")}var o=[\"'use strict'\"],s=[\"ndarrayInsertionSort\",t.join(\"d\"),e].join(\"\"),l=[\"left\",\"right\",\"data\",\"offset\"].concat(n(t.length)),u=r(e),c=[\"i,j,cptr,ptr=left*s0+offset\"];if(t.length>1){for(var f=[],h=1;h<t.length;++h)c.push(\"i\"+h),f.push(\"n\"+h);c.push(u?\"scratch=malloc(\"+f.join(\"*\")+\")\":\"scratch=new Array(\"+f.join(\"*\")+\")\"),c.push(\"dptr\",\"sptr\",\"a\",\"b\")}else c.push(\"scratch\");if(o.push([\"function \",s,\"(\",l.join(\",\"),\"){var \",c.join(\",\")].join(\"\"),\"for(i=left+1;i<=right;++i){\",\"j=i;ptr+=s0\",\"cptr=ptr\"),t.length>1){o.push(\"dptr=0;sptr=ptr\");for(var h=t.length-1;h>=0;--h){var d=t[h];0!==d&&o.push([\"for(i\",d,\"=0;i\",d,\"<n\",d,\";++i\",d,\"){\"].join(\"\"))}o.push(\"scratch[dptr++]=\",i(\"sptr\"));for(var h=0;h<t.length;++h){var d=t[h];0!==d&&o.push(\"sptr+=d\"+d,\"}\")}o.push(\"__g:while(j-->left){\",\"dptr=0\",\"sptr=cptr-s0\");for(var h=1;h<t.length;++h)1===h&&o.push(\"__l:\"),o.push([\"for(i\",h,\"=0;i\",h,\"<n\",h,\";++i\",h,\"){\"].join(\"\"));o.push([\"a=\",i(\"sptr\"),\"\\nb=scratch[dptr]\\nif(a<b){break __g}\\nif(a>b){break __l}\"].join(\"\"));for(var h=t.length-1;h>=1;--h)o.push(\"sptr+=e\"+h,\"dptr+=f\"+h,\"}\");o.push(\"dptr=cptr;sptr=cptr-s0\");for(var h=t.length-1;h>=0;--h){var d=t[h];0!==d&&o.push([\"for(i\",d,\"=0;i\",d,\"<n\",d,\";++i\",d,\"){\"].join(\"\"))}o.push(a(\"dptr\",i(\"sptr\")));for(var h=0;h<t.length;++h){var d=t[h];0!==d&&o.push([\"dptr+=d\",d,\";sptr+=d\",d].join(\"\"),\"}\")}o.push(\"cptr-=s0\\n}\"),o.push(\"dptr=cptr;sptr=0\");for(var h=t.length-1;h>=0;--h){var d=t[h];0!==d&&o.push([\"for(i\",d,\"=0;i\",d,\"<n\",d,\";++i\",d,\"){\"].join(\"\"))}o.push(a(\"dptr\",\"scratch[sptr++]\"));for(var h=0;h<t.length;++h){var d=t[h];0!==d&&o.push(\"dptr+=d\"+d,\"}\")}}else o.push(\"scratch=\"+i(\"ptr\"),\"while((j-->left)&&(\"+i(\"cptr-s0\")+\">scratch)){\",a(\"cptr\",i(\"cptr-s0\")),\"cptr-=s0\",\"}\",a(\"cptr\",\"scratch\"));if(o.push(\"}\"),t.length>1&&u&&o.push(\"free(scratch)\"),o.push(\"} return \"+s),u){var p=new Function(\"malloc\",\"free\",o.join(\"\\n\"));return p(u[0],u[1])}var p=new Function(o.join(\"\\n\"));return p()}function a(t,e,i){function a(t){return[\"(offset+\",t,\"*s0)\"].join(\"\")}function o(t){return\"generic\"===e?[\"data.get(\",t,\")\"].join(\"\"):[\"data[\",t,\"]\"].join(\"\")}function s(t,r){return\"generic\"===e?[\"data.set(\",t,\",\",r,\")\"].join(\"\"):[\"data[\",t,\"]=\",r].join(\"\")}function u(e,r,n){if(1===e.length)_.push(\"ptr0=\"+a(e[0]));else for(var i=0;i<e.length;++i)_.push([\"b_ptr\",i,\"=s0*\",e[i]].join(\"\"));r&&_.push(\"pivot_ptr=0\"),_.push(\"ptr_shift=offset\");for(var i=t.length-1;i>=0;--i){var o=t[i];0!==o&&_.push([\"for(i\",o,\"=0;i\",o,\"<n\",o,\";++i\",o,\"){\"].join(\"\"))}if(e.length>1)for(var i=0;i<e.length;++i)_.push([\"ptr\",i,\"=b_ptr\",i,\"+ptr_shift\"].join(\"\"));_.push(n),r&&_.push(\"++pivot_ptr\");for(var i=0;i<t.length;++i){var o=t[i];0!==o&&(_.push(e.length>1?\"ptr_shift+=d\"+o:\"ptr0+=d\"+o),_.push(\"}\"))}}function c(e,r,n,i){if(1===r.length)_.push(\"ptr0=\"+a(r[0]));else{for(var o=0;o<r.length;++o)_.push([\"b_ptr\",o,\"=s0*\",r[o]].join(\"\"));_.push(\"ptr_shift=offset\")}n&&_.push(\"pivot_ptr=0\"),e&&_.push(e+\":\");for(var o=1;o<t.length;++o)_.push([\"for(i\",o,\"=0;i\",o,\"<n\",o,\";++i\",o,\"){\"].join(\"\"));if(r.length>1)for(var o=0;o<r.length;++o)_.push([\"ptr\",o,\"=b_ptr\",o,\"+ptr_shift\"].join(\"\"));_.push(i);for(var o=t.length-1;o>=1;--o)n&&_.push(\"pivot_ptr+=f\"+o),_.push(r.length>1?\"ptr_shift+=e\"+o:\"ptr0+=e\"+o),_.push(\"}\")}function f(){t.length>1&&A&&_.push(\"free(pivot1)\",\"free(pivot2)\")}function h(e,r){var n=\"el\"+e,i=\"el\"+r;if(t.length>1){var s=\"__l\"+ ++M;c(s,[n,i],!1,[\"comp=\",o(\"ptr0\"),\"-\",o(\"ptr1\"),\"\\n\",\"if(comp>0){tmp0=\",n,\";\",n,\"=\",i,\";\",i,\"=tmp0;break \",s,\"}\\n\",\"if(comp<0){break \",s,\"}\"].join(\"\"))}else _.push([\"if(\",o(a(n)),\">\",o(a(i)),\"){tmp0=\",n,\";\",n,\"=\",i,\";\",i,\"=tmp0}\"].join(\"\"))}function d(e,r){t.length>1?u([e,r],!1,s(\"ptr0\",o(\"ptr1\"))):_.push(s(a(e),o(a(r))))}function p(e,r,n){if(t.length>1){var i=\"__l\"+ ++M;c(i,[r],!0,[e,\"=\",o(\"ptr0\"),\"-pivot\",n,\"[pivot_ptr]\\n\",\"if(\",e,\"!==0){break \",i,\"}\"].join(\"\"))}else _.push([e,\"=\",o(a(r)),\"-pivot\",n].join(\"\"))}function g(e,r){t.length>1?u([e,r],!1,[\"tmp=\",o(\"ptr0\"),\"\\n\",s(\"ptr0\",o(\"ptr1\")),\"\\n\",s(\"ptr1\",\"tmp\")].join(\"\")):_.push([\"ptr0=\",a(e),\"\\n\",\"ptr1=\",a(r),\"\\n\",\"tmp=\",o(\"ptr0\"),\"\\n\",s(\"ptr0\",o(\"ptr1\")),\"\\n\",s(\"ptr1\",\"tmp\")].join(\"\"))}function v(e,r,n){t.length>1?(u([e,r,n],!1,[\"tmp=\",o(\"ptr0\"),\"\\n\",s(\"ptr0\",o(\"ptr1\")),\"\\n\",s(\"ptr1\",o(\"ptr2\")),\"\\n\",s(\"ptr2\",\"tmp\")].join(\"\")),_.push(\"++\"+r,\"--\"+n)):_.push([\"ptr0=\",a(e),\"\\n\",\"ptr1=\",a(r),\"\\n\",\"ptr2=\",a(n),\"\\n\",\"++\",r,\"\\n\",\"--\",n,\"\\n\",\"tmp=\",o(\"ptr0\"),\"\\n\",s(\"ptr0\",o(\"ptr1\")),\"\\n\",s(\"ptr1\",o(\"ptr2\")),\"\\n\",s(\"ptr2\",\"tmp\")].join(\"\"))}function m(t,e){g(t,e),_.push(\"--\"+e)}function y(e,r,n){t.length>1?u([e,r],!0,[s(\"ptr0\",o(\"ptr1\")),\"\\n\",s(\"ptr1\",[\"pivot\",n,\"[pivot_ptr]\"].join(\"\"))].join(\"\")):_.push(s(a(e),o(a(r))),s(a(r),\"pivot\"+n))}function b(e,r){_.push([\"if((\",r,\"-\",e,\")<=\",l,\"){\\n\",\"insertionSort(\",e,\",\",r,\",data,offset,\",n(t.length).join(\",\"),\")\\n\",\"}else{\\n\",w,\"(\",e,\",\",r,\",data,offset,\",n(t.length).join(\",\"),\")\\n\",\"}\"].join(\"\"))}function x(e,r,n){t.length>1?(_.push([\"__l\",++M,\":while(true){\"].join(\"\")),u([e],!0,[\"if(\",o(\"ptr0\"),\"!==pivot\",r,\"[pivot_ptr]){break __l\",M,\"}\"].join(\"\")),_.push(n,\"}\")):_.push([\"while(\",o(a(e)),\"===pivot\",r,\"){\",n,\"}\"].join(\"\"))}var _=[\"'use strict'\"],w=[\"ndarrayQuickSort\",t.join(\"d\"),e].join(\"\"),k=[\"left\",\"right\",\"data\",\"offset\"].concat(n(t.length)),A=r(e),M=0;_.push([\"function \",w,\"(\",k.join(\",\"),\"){\"].join(\"\"));var L=[\"sixth=((right-left+1)/6)|0\",\"index1=left+sixth\",\"index5=right-sixth\",\"index3=(left+right)>>1\",\"index2=index3-sixth\",\"index4=index3+sixth\",\"el1=index1\",\"el2=index2\",\"el3=index3\",\"el4=index4\",\"el5=index5\",\"less=left+1\",\"great=right-1\",\"pivots_are_equal=true\",\"tmp\",\"tmp0\",\"x\",\"y\",\"z\",\"k\",\"ptr0\",\"ptr1\",\"ptr2\",\"comp_pivot1=0\",\"comp_pivot2=0\",\"comp=0\"];if(t.length>1){for(var E=[],C=1;C<t.length;++C)E.push(\"n\"+C),L.push(\"i\"+C);for(var C=0;8>C;++C)L.push(\"b_ptr\"+C);L.push(\"ptr3\",\"ptr4\",\"ptr5\",\"ptr6\",\"ptr7\",\"pivot_ptr\",\"ptr_shift\",\"elementSize=\"+E.join(\"*\")),A?L.push(\"pivot1=malloc(elementSize)\",\"pivot2=malloc(elementSize)\"):L.push(\"pivot1=new Array(elementSize),pivot2=new Array(elementSize)\")}else L.push(\"pivot1\",\"pivot2\");if(_.push(\"var \"+L.join(\",\")),h(1,2),h(4,5),h(1,3),h(2,3),h(1,4),h(3,4),h(2,5),h(2,3),h(4,5),t.length>1?u([\"el1\",\"el2\",\"el3\",\"el4\",\"el5\",\"index1\",\"index3\",\"index5\"],!0,[\"pivot1[pivot_ptr]=\",o(\"ptr1\"),\"\\n\",\"pivot2[pivot_ptr]=\",o(\"ptr3\"),\"\\n\",\"pivots_are_equal=pivots_are_equal&&(pivot1[pivot_ptr]===pivot2[pivot_ptr])\\n\",\"x=\",o(\"ptr0\"),\"\\n\",\"y=\",o(\"ptr2\"),\"\\n\",\"z=\",o(\"ptr4\"),\"\\n\",s(\"ptr5\",\"x\"),\"\\n\",s(\"ptr6\",\"y\"),\"\\n\",s(\"ptr7\",\"z\")].join(\"\")):_.push([\"pivot1=\",o(a(\"el2\")),\"\\n\",\"pivot2=\",o(a(\"el4\")),\"\\n\",\"pivots_are_equal=pivot1===pivot2\\n\",\"x=\",o(a(\"el1\")),\"\\n\",\"y=\",o(a(\"el3\")),\"\\n\",\"z=\",o(a(\"el5\")),\"\\n\",s(a(\"index1\"),\"x\"),\"\\n\",s(a(\"index3\"),\"y\"),\"\\n\",s(a(\"index5\"),\"z\")].join(\"\")),d(\"index2\",\"left\"),d(\"index4\",\"right\"),_.push(\"if(pivots_are_equal){\"),_.push(\"for(k=less;k<=great;++k){\"),p(\"comp\",\"k\",1),_.push(\"if(comp===0){continue}\"),_.push(\"if(comp<0){\"),_.push(\"if(k!==less){\"),g(\"k\",\"less\"),_.push(\"}\"),_.push(\"++less\"),_.push(\"}else{\"),_.push(\"while(true){\"),p(\"comp\",\"great\",1),_.push(\"if(comp>0){\"),_.push(\"great--\"),_.push(\"}else if(comp<0){\"),v(\"k\",\"less\",\"great\"),_.push(\"break\"),_.push(\"}else{\"),m(\"k\",\"great\"),_.push(\"break\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}else{\"),_.push(\"for(k=less;k<=great;++k){\"),p(\"comp_pivot1\",\"k\",1),_.push(\"if(comp_pivot1<0){\"),_.push(\"if(k!==less){\"),g(\"k\",\"less\"),_.push(\"}\"),_.push(\"++less\"),_.push(\"}else{\"),p(\"comp_pivot2\",\"k\",2),_.push(\"if(comp_pivot2>0){\"),_.push(\"while(true){\"),p(\"comp\",\"great\",2),_.push(\"if(comp>0){\"),_.push(\"if(--great<k){break}\"),_.push(\"continue\"),_.push(\"}else{\"),p(\"comp\",\"great\",1),_.push(\"if(comp<0){\"),v(\"k\",\"less\",\"great\"),_.push(\"}else{\"),m(\"k\",\"great\"),_.push(\"}\"),_.push(\"break\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),y(\"left\",\"(less-1)\",1),y(\"right\",\"(great+1)\",2),b(\"left\",\"(less-2)\"),b(\"(great+2)\",\"right\"),_.push(\"if(pivots_are_equal){\"),f(),_.push(\"return\"),_.push(\"}\"),_.push(\"if(less<index1&&great>index5){\"),x(\"less\",1,\"++less\"),x(\"great\",2,\"--great\"),_.push(\"for(k=less;k<=great;++k){\"),p(\"comp_pivot1\",\"k\",1),_.push(\"if(comp_pivot1===0){\"),_.push(\"if(k!==less){\"),g(\"k\",\"less\"),_.push(\"}\"),_.push(\"++less\"),_.push(\"}else{\"),p(\"comp_pivot2\",\"k\",2),_.push(\"if(comp_pivot2===0){\"),_.push(\"while(true){\"),p(\"comp\",\"great\",2),_.push(\"if(comp===0){\"),_.push(\"if(--great<k){break}\"),_.push(\"continue\"),_.push(\"}else{\"),p(\"comp\",\"great\",1),_.push(\"if(comp<0){\"),v(\"k\",\"less\",\"great\"),_.push(\"}else{\"),m(\"k\",\"great\"),_.push(\"}\"),_.push(\"break\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),_.push(\"}\"),f(),b(\"less\",\"great\"),_.push(\"}return \"+w),t.length>1&&A){var j=new Function(\"insertionSort\",\"malloc\",\"free\",_.join(\"\\n\"));return j(i,A[0],A[1])}var j=new Function(\"insertionSort\",_.join(\"\\n\"));return j(i)}function o(t,e){var r=[\"'use strict'\"],o=[\"ndarraySortWrapper\",t.join(\"d\"),e].join(\"\"),s=[\"array\"];r.push([\"function \",o,\"(\",s.join(\",\"),\"){\"].join(\"\"));for(var u=[\"data=array.data,offset=array.offset|0,shape=array.shape,stride=array.stride\"],c=0;c<t.length;++c)u.push([\"s\",c,\"=stride[\",c,\"]|0,n\",c,\"=shape[\",c,\"]|0\"].join(\"\"));for(var f=new Array(t.length),h=[],c=0;c<t.length;++c){var d=t[c];0!==d&&(f[d]=0===h.length?\"1\":h.join(\"*\"),h.push(\"n\"+d))}for(var p=-1,g=-1,c=0;c<t.length;++c){var v=t[c];0!==v&&(u.push(p>0?[\"d\",v,\"=s\",v,\"-d\",p,\"*n\",p].join(\"\"):[\"d\",v,\"=s\",v].join(\"\")),p=v);var d=t.length-1-c;0!==d&&(u.push(g>0?[\"e\",d,\"=s\",d,\"-e\",g,\"*n\",g,\",f\",d,\"=\",f[d],\"-f\",g,\"*n\",g].join(\"\"):[\"e\",d,\"=s\",d,\",f\",d,\"=\",f[d]].join(\"\")),g=d)}r.push(\"var \"+u.join(\",\"));var m=[\"0\",\"n0-1\",\"data\",\"offset\"].concat(n(t.length));r.push([\"if(n0<=\",l,\"){\",\"insertionSort(\",m.join(\",\"),\")}else{\",\"quickSort(\",m.join(\",\"),\")}\"].join(\"\")),r.push(\"}return \"+o);var y=new Function(\"insertionSort\",\"quickSort\",r.join(\"\\n\")),b=i(t,e),x=a(t,e,b);return y(b,x)}var s=t(\"typedarray-pool\"),l=32;e.exports=o},{\"typedarray-pool\":193}],190:[function(t,e){\"use strict\";function r(t){var e=t.order,r=t.dtype,a=[e,r],o=a.join(\":\"),s=i[o];return s||(i[o]=s=n(e,r)),s(t),t}var n=t(\"./lib/compile_sort.js\"),i={};e.exports=r},{\"./lib/compile_sort.js\":189}],191:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],192:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],193:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":191,buffer:1,dup:99}],194:[function(t,e){var r=t(\"gl-shader\"),n=\"#define GLSLIFY 1\\nprecision mediump float;\\nattribute vec2 position;\\nvarying vec2 uv;\\nvoid main() {\\n uv = position;\\n gl_Position = vec4(position, 0, 1);\\n}\",i=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform sampler2D accumBuffer;\\nvarying vec2 uv;\\n\\nvoid main() {\\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\\n gl_FragColor = min(vec4(1,1,1,1), accum);\\n}\";e.exports=function(t){return r(t,n,i,null,[{name:\"position\",type:\"vec2\"}])}},{\"gl-shader\":337}],195:[function(t,e){\"use strict\";function r(t,e){t=t||document.body,e=e||{};var r=[.01,1/0];\"distanceLimits\"in e&&(r[0]=e.distanceLimits[0],r[1]=e.distanceLimits[1]),\"zoomMin\"in e&&(r[0]=e.zoomMin),\"zoomMax\"in e&&(r[1]=e.zoomMax);var s=i({center:e.center||[0,0,0],up:e.up||[0,1,0],eye:e.eye||[0,0,10],mode:e.mode||\"orbit\",distanceLimits:r}),l=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],u=0,c=t.clientWidth,f=t.clientHeight,h={view:s,element:t,delay:e.delay||16,rotateSpeed:e.rotateSpeed||1,zoomSpeed:e.zoomSpeed||1,translateSpeed:e.translateSpeed||1,flipX:!!e.flipX,flipY:!!e.flipY,modes:s.modes,tick:function(){var e=n(),r=this.delay;s.idle(e-r),s.flush(e-(100+2*r));var i=e-2*r;s.recalcMatrix(i);for(var a=!0,o=s.computedMatrix,h=0;16>h;++h)a=a&&l[h]===o[h],l[h]=o[h];var d=t.clientWidth===c&&t.clientHeight===f;return c=t.clientWidth,f=t.clientHeight,a?!d:(u=Math.exp(s.computedRadius[0]),!0)},lookAt:function(t,e,r){s.lookAt(s.lastT(),t,e,r)},rotate:function(t,e,r){s.rotate(s.lastT(),t,e,r)},pan:function(t,e,r){s.pan(s.lastT(),t,e,r)},translate:function(t,e,r){s.translate(s.lastT(),t,e,r)}};Object.defineProperties(h,{matrix:{get:function(){return s.computedMatrix},set:function(t){return s.setMatrix(s.lastT(),t),s.computedMatrix},enumerable:!0},mode:{get:function(){return s.getMode()},set:function(t){return s.setMode(t),s.getMode()},enumerable:!0},center:{get:function(){return s.computedCenter},set:function(t){return s.lookAt(s.lastT(),t),s.computedCenter},enumerable:!0},eye:{get:function(){return s.computedEye},set:function(t){return s.lookAt(s.lastT(),null,t),s.computedEye},enumerable:!0},up:{get:function(){return s.computedUp},set:function(t){return s.lookAt(s.lastT(),null,null,t),s.computedUp},enumerable:!0},distance:{get:function(){return u},set:function(t){return s.setDistance(s.lastT(),t),t},enumerable:!0},distanceLimits:{get:function(){return s.getDistanceLimits(r)},set:function(t){return s.setDistanceLimits(t),t},enumerable:!0}}),t.addEventListener(\"contextmenu\",function(t){return t.preventDefault(),!1});var d=0,p=0;return a(t,function(e,r,i,a){var o=1/t.clientHeight,l=o*(r-d),c=o*(i-p),f=h.flipX?1:-1,g=h.flipY?1:-1,v=Math.PI*h.rotateSpeed,m=n();if(1&e)a.shift?s.rotate(m,0,0,-l*v):s.rotate(m,f*v*l,-g*v*c,0);else if(2&e)s.pan(m,-h.translateSpeed*l*u,h.translateSpeed*c*u,0);else if(4&e){var y=h.zoomSpeed*c/window.innerHeight*(m-s.lastT())*50;s.pan(m,0,0,u*(Math.exp(y)-1))}d=r,p=i}),o(t,function(t,e){var r=h.flipX?1:-1,i=h.flipY?1:-1,a=n();if(Math.abs(t)>Math.abs(e))s.rotate(a,0,0,-t*r*Math.PI*h.rotateSpeed/window.innerWidth);else{var o=h.zoomSpeed*i*e/window.innerHeight*(a-s.lastT())/100;s.pan(a,0,0,u*(Math.exp(o)-1))}},!0),h}e.exports=r;var n=t(\"right-now\"),i=t(\"3d-view\"),a=t(\"mouse-change\"),o=t(\"mouse-wheel\")},{\"3d-view\":34,\"mouse-change\":533,\"mouse-wheel\":537,\"right-now\":564}],196:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":199}],197:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],198:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],199:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":197,buffer:1,dup:99}],200:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],201:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":200,dup:110}],202:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":200,dup:111}],203:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":201,\"./lib/vao-native.js\":202,dup:112}],204:[function(t,e){!function(){\"use strict\";function t(e){e.permitHostObjects___&&e.permitHostObjects___(t)}function r(t){return!(t.substr(0,d.length)==d&&\"___\"===t.substr(t.length-3))}function n(t){if(t!==Object(t))throw new TypeError(\"Not an object: \"+t);var e=t[p];if(e&&e.key===t)return e;if(!h(t))return void 0;e={key:t};try{return f(t,p,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(t){return void 0}}function i(t){return t.prototype=null,Object.freeze(t)}function a(){y||\"undefined\"==typeof console||(y=!0,console.warn(\"WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future.\"))}if(\"undefined\"==typeof ses||!ses.ok||ses.ok()){\"undefined\"!=typeof ses&&(ses.weakMapPermitHostObjects=t);var o=!1;if(\"function\"==typeof WeakMap){var s=WeakMap;if(\"undefined\"!=typeof navigator&&/Firefox/.test(navigator.userAgent));else{var l=new s,u=Object.freeze({});if(l.set(u,1),1===l.get(u))return void(e.exports=WeakMap);o=!0}}var c=(Object.prototype.hasOwnProperty,Object.getOwnPropertyNames),f=Object.defineProperty,h=Object.isExtensible,d=\"weakmap:\",p=d+\"ident:\"+Math.random()+\"___\";if(\"undefined\"!=typeof crypto&&\"function\"==typeof crypto.getRandomValues&&\"function\"==typeof ArrayBuffer&&\"function\"==typeof Uint8Array){var g=new ArrayBuffer(25),v=new Uint8Array(g);crypto.getRandomValues(v),p=d+\"rand:\"+Array.prototype.map.call(v,function(t){return(t%36).toString(36)}).join(\"\")+\"___\"}if(f(Object,\"getOwnPropertyNames\",{value:function(t){return c(t).filter(r)}}),\"getPropertyNames\"in Object){var m=Object.getPropertyNames;f(Object,\"getPropertyNames\",{value:function(t){return m(t).filter(r)}})}!function(){var t=Object.freeze;f(Object,\"freeze\",{value:function(e){return n(e),t(e)\n",
"}});var e=Object.seal;f(Object,\"seal\",{value:function(t){return n(t),e(t)}});var r=Object.preventExtensions;f(Object,\"preventExtensions\",{value:function(t){return n(t),r(t)}})}();var y=!1,b=0,x=function(){function t(t,e){var r,i=n(t);return i?u in i?i[u]:e:(r=s.indexOf(t),r>=0?l[r]:e)}function e(t){var e=n(t);return e?u in e:s.indexOf(t)>=0}function r(t,e){var r,i=n(t);return i?i[u]=e:(r=s.indexOf(t),r>=0?l[r]=e:(r=s.length,l[r]=e,s[r]=t)),this}function o(t){var e,r,i=n(t);return i?u in i&&delete i[u]:(e=s.indexOf(t),0>e?!1:(r=s.length-1,s[e]=void 0,l[e]=l[r],s[e]=s[r],s.length=r,l.length=r,!0))}this instanceof x||a();var s=[],l=[],u=b++;return Object.create(x.prototype,{get___:{value:i(t)},has___:{value:i(e)},set___:{value:i(r)},delete___:{value:i(o)}})};x.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),\"function\"==typeof s?!function(){function r(){function e(t,e){return c?u.has(t)?u.get(t):c.get___(t,e):u.get(t,e)}function r(t){return u.has(t)||(c?c.has___(t):!1)}function n(t){var e=!!u.delete(t);return c?c.delete___(t)||e:e}this instanceof x||a();var l,u=new s,c=void 0,f=!1;return l=o?function(t,e){return u.set(t,e),u.has(t)||(c||(c=new x),c.set(t,e)),this}:function(t,e){if(f)try{u.set(t,e)}catch(r){c||(c=new x),c.set___(t,e)}else u.set(t,e);return this},Object.create(x.prototype,{get___:{value:i(e)},has___:{value:i(r)},set___:{value:i(l)},delete___:{value:i(n)},permitHostObjects___:{value:i(function(e){if(e!==t)throw new Error(\"bogus call to permitHostObjects___\");f=!0})}})}o&&\"undefined\"!=typeof Proxy&&(Proxy=void 0),r.prototype=x.prototype,e.exports=r,Object.defineProperty(WeakMap.prototype,\"constructor\",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(\"undefined\"!=typeof Proxy&&(Proxy=void 0),e.exports=x)}}()},{}],205:[function(t,e){\"use strict\";function r(t){var e=o.get(t);if(!e||!t.isBuffer(e._triangleBuffer.buffer)){var r=i(t,new Float32Array([-1,-1,-1,4,4,-1]));e=a(t,[{buffer:r,type:t.FLOAT,size:2}]),e._triangleBuffer=r,o.set(t,e)}e.bind(),t.drawArrays(t.TRIANGLES,0,3),e.unbind()}var n=\"undefined\"==typeof WeakMap?t(\"weak-map\"):WeakMap,i=t(\"gl-buffer\"),a=t(\"gl-vao\"),o=new n;e.exports=r},{\"gl-buffer\":196,\"gl-vao\":203,\"weak-map\":204}],206:[function(t,e){\"use strict\";function r(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function n(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=\"sans-serif\",this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(t)}function i(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}function a(t,e,r,n,i){for(var a=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,u=n[e],c=0;3>c;++c)if(e!==c){var f=a,h=s,d=o,p=l;u&1<<c&&(f=s,h=a,d=l,p=o),f[c]=r[0][c],h[c]=r[1][c],i[c]>0?(d[c]=-1,p[c]=0):(d[c]=0,p[c]=1)}}function o(t,e){var r=new n(t);return r.update(e),r}e.exports=o;var s=t(\"./lib/text.js\"),l=t(\"./lib/lines.js\"),u=t(\"./lib/background.js\"),c=t(\"./lib/cube.js\"),f=t(\"./lib/ticks.js\"),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=n.prototype;d.update=function(t){function e(e,r,n){if(n in t){var i,a=t[n],o=this[n];this[n]=i=(e?Array.isArray(a)&&Array.isArray(a[0]):Array.isArray(a))?[r(a[0]),r(a[1]),r(a[2])]:[r(a),r(a),r(a)];for(var s=0;3>s;++s)if(i[s]!==o[s])return!0}return!1}t=t||{};var r,n=e.bind(this,!1,Number),i=e.bind(this,!1,Boolean),a=e.bind(this,!1,String),o=e.bind(this,!0,function(t){if(Array.isArray(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]}),u=!1,c=!1;if(\"bounds\"in t)for(var h=t.bounds,d=0;2>d;++d)for(var p=0;3>p;++p)h[d][p]!==this.bounds[d][p]&&(c=!0),this.bounds[d][p]=h[d][p];if(\"ticks\"in t){r=t.ticks,u=!0,this.autoTicks=!1;for(var d=0;3>d;++d)this.tickSpacing[d]=0}else n(\"tickSpacing\")&&(this.autoTicks=!0,c=!0);if(this._firstInit&&(\"ticks\"in t||\"tickSpacing\"in t||(this.autoTicks=!0),c=!0,u=!0,this._firstInit=!1),c&&this.autoTicks&&(r=f.create(this.bounds,this.tickSpacing),u=!0),u){for(var d=0;3>d;++d)r[d].sort(function(t,e){return t.x-e.x});f.equal(r,this.ticks)?u=!1:this.ticks=r}i(\"tickEnable\"),a(\"tickFont\")&&(u=!0),n(\"tickSize\"),n(\"tickAngle\"),n(\"tickPad\"),o(\"tickColor\");var g=a(\"labels\");a(\"labelFont\")&&(g=!0),i(\"labelEnable\"),n(\"labelSize\"),n(\"labelPad\"),o(\"labelColor\"),i(\"lineEnable\"),i(\"lineMirror\"),n(\"lineWidth\"),o(\"lineColor\"),i(\"lineTickEnable\"),i(\"lineTickMirror\"),n(\"lineTickLength\"),n(\"lineTickWidth\"),o(\"lineTickColor\"),i(\"gridEnable\"),n(\"gridWidth\"),o(\"gridColor\"),i(\"zeroEnable\"),o(\"zeroLineColor\"),n(\"zeroLineWidth\"),i(\"backgroundEnable\"),o(\"backgroundColor\"),this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=s(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};var p=[new i,new i,new i],g=[0,0,0],v={model:h,view:h,projection:h};d.isOpaque=function(){return!0},d.isTransparent=function(){return!1},d.drawTransparent=function(){};var m=[0,0,0],y=[0,0,0],b=[0,0,0];d.draw=function(t){t=t||v;for(var e=this.gl,n=t.model||h,i=t.view||h,o=t.projection||h,s=this.bounds,l=c(n,i,o,s),u=l.cubeEdges,f=l.axis,d=i[12],x=i[13],_=i[14],w=i[15],k=this.pixelRatio*(o[3]*d+o[7]*x+o[11]*_+o[15]*w)/e.drawingBufferHeight,A=0;3>A;++A)this.lastCubeProps.cubeEdges[A]=u[A],this.lastCubeProps.axis[A]=f[A];for(var M=p,A=0;3>A;++A)a(p[A],A,this.bounds,u,f);for(var e=this.gl,L=g,A=0;3>A;++A)L[A]=this.backgroundEnable[A]?f[A]:0;this._background.draw(n,i,o,s,L,this.backgroundColor),this._lines.bind(n,i,o,this);for(var A=0;3>A;++A){var E=[0,0,0];E[A]=f[A]>0?s[1][A]:s[0][A];for(var C=0;2>C;++C){var j=(A+1+C)%3,S=(A+1+(1^C))%3;this.gridEnable[j]&&this._lines.drawGrid(j,S,this.bounds,E,this.gridColor[j],this.gridWidth[j]*this.pixelRatio)}for(var C=0;2>C;++C){var j=(A+1+C)%3,S=(A+1+(1^C))%3;this.zeroEnable[S]&&s[0][S]<=0&&s[1][S]>=0&&this._lines.drawZero(j,S,this.bounds,E,this.zeroLineColor[S],this.zeroLineWidth[S]*this.pixelRatio)}}for(var A=0;3>A;++A){this.lineEnable[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].primalOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio),this.lineMirror[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].mirrorOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio);for(var T=r(m,M[A].primalMinor),z=r(y,M[A].mirrorMinor),P=this.lineTickLength,C=0;3>C;++C){var I=k/n[5*C];T[C]*=P[C]*I,z[C]*=P[C]*I}this.lineTickEnable[A]&&this._lines.drawAxisTicks(A,M[A].primalOffset,T,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio),this.lineTickMirror[A]&&this._lines.drawAxisTicks(A,M[A].mirrorOffset,z,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio)}this._text.bind(n,i,o,this.pixelRatio);for(var A=0;3>A;++A){for(var O=M[A].primalMinor,D=r(b,M[A].primalOffset),C=0;3>C;++C)this.lineTickEnable[A]&&(D[C]+=k*O[C]*Math.max(this.lineTickLength[C],0)/n[5*C]);if(this.tickEnable[A]){for(var C=0;3>C;++C)D[C]+=k*O[C]*this.tickPad[C]/n[5*C];this._text.drawTicks(A,this.tickSize[A],this.tickAngle[A],D,this.tickColor[A])}if(this.labelEnable[A]){for(var C=0;3>C;++C)D[C]+=k*O[C]*this.labelPad[C]/n[5*C];D[A]+=.5*(s[0][A]+s[1][A]),this._text.drawLabel(A,this.labelSize[A],this.labelAngle[A],D,this.labelColor[A])}}},d.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},{\"./lib/background.js\":207,\"./lib/cube.js\":208,\"./lib/lines.js\":209,\"./lib/text.js\":211,\"./lib/ticks.js\":212}],207:[function(t,e){\"use strict\";function r(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n}function n(t){for(var e=[],n=[],s=0,l=0;3>l;++l)for(var u=(l+1)%3,c=(l+2)%3,f=[0,0,0],h=[0,0,0],d=-1;1>=d;d+=2){n.push(s,s+2,s+1,s+1,s+2,s+3),f[l]=d,h[l]=d;for(var p=-1;1>=p;p+=2){f[u]=p;for(var g=-1;1>=g;g+=2)f[c]=g,e.push(f[0],f[1],f[2],h[0],h[1],h[2]),s+=1}var v=u;u=c,c=v}var m=i(t,new Float32Array(e)),y=i(t,new Uint16Array(n),t.ELEMENT_ARRAY_BUFFER),b=a(t,[{buffer:m,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:m,type:t.FLOAT,size:3,offset:12,stride:24}],y),x=o(t);return x.attributes.position.location=0,x.attributes.normal.location=1,new r(t,m,b,x)}e.exports=n;var i=t(\"gl-buffer\"),a=t(\"gl-vao\"),o=t(\"./shaders\").bg,s=r.prototype;s.draw=function(t,e,r,n,i,a){for(var o=!1,s=0;3>s;++s)o=o||i[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:r,bounds:n,enable:i,colors:a},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{\"./shaders\":210,\"gl-buffer\":216,\"gl-vao\":221}],208:[function(t,e){\"use strict\";function r(t,e,r){for(var n=0;4>n;++n){t[n]=r[12+n];for(var i=0;3>i;++i)t[n]+=e[i]*r[4*i+n]}}function n(t){for(var e=0;e<p.length;++e)if(t=s.positive(t,p[e]),t.length<3)return 0;for(var r=t[0],n=r[0]/r[3],i=r[1]/r[3],a=0,e=1;e+1<t.length;++e){var o=t[e],l=t[e+1],u=o[0]/o[3],c=o[1]/o[3],f=l[0]/l[3],h=l[1]/l[3],d=u-n,g=c-i,v=f-n,m=h-i;a+=Math.abs(d*m-g*v)}return a}function i(t,e,i,s){o(u,e,t),o(u,i,u);for(var p=0,y=0;2>y;++y){h[2]=s[y][2];for(var b=0;2>b;++b){h[1]=s[b][1];for(var x=0;2>x;++x)h[0]=s[x][0],r(c[p],h,u),p+=1}}for(var _=-1,y=0;8>y;++y){for(var w=c[y][3],k=0;3>k;++k)f[y][k]=c[y][k]/w;0>w&&(0>_?_=y:f[y][2]<f[_][2]&&(_=y))}if(0>_){_=0;for(var A=0;3>A;++A){for(var M=(A+2)%3,L=(A+1)%3,E=-1,C=-1,j=0;2>j;++j){var S=j<<A,T=S+(j<<M)+(1-j<<L),z=S+(1-j<<M)+(j<<L);l(f[S],f[T],f[z],d)<0||(j?E=1:C=1)}if(0>E||0>C)C>E&&(_|=1<<A);else{for(var j=0;2>j;++j){var S=j<<A,T=S+(j<<M)+(1-j<<L),z=S+(1-j<<M)+(j<<L),P=n([c[S],c[T],c[z],c[S+(1<<M)+(1<<L)]]);j?E=P:C=P}C>E&&(_|=1<<A)}}}for(var I=7^_,O=-1,y=0;8>y;++y)y!==_&&y!==I&&(0>O?O=y:f[O][1]>f[y][1]&&(O=y));for(var D=-1,y=0;3>y;++y){var R=O^1<<y;if(R!==_&&R!==I){0>D&&(D=R);var L=f[R];L[0]<f[D][0]&&(D=R)}}for(var N=-1,y=0;3>y;++y){var R=O^1<<y;if(R!==_&&R!==I&&R!==D){0>N&&(N=R);var L=f[R];L[0]>f[N][0]&&(N=R)}}var B=g;B[0]=B[1]=B[2]=0,B[a.log2(D^O)]=O&D,B[a.log2(O^N)]=O&N;var F=7^N;F===_||F===I?(F=7^D,B[a.log2(N^F)]=F&N):B[a.log2(D^F)]=F&D;for(var U=v,V=_,A=0;3>A;++A)U[A]=V&1<<A?-1:1;return m}e.exports=i;var a=t(\"bit-twiddle\"),o=t(\"gl-mat4/multiply\"),s=(t(\"gl-mat4/invert\"),t(\"split-polygon\")),l=t(\"robust-orientation\"),u=new Array(16),c=(new Array(16),new Array(8)),f=new Array(8),h=new Array(3),d=[0,0,0];!function(){for(var t=0;8>t;++t)c[t]=[1,1,1,1],f[t]=[1,1,1]}();var p=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]],g=[1,1,1],v=[0,0,0],m={cubeEdges:g,axis:v}},{\"bit-twiddle\":213,\"gl-mat4/invert\":145,\"gl-mat4/multiply\":147,\"robust-orientation\":228,\"split-polygon\":229}],209:[function(t,e){\"use strict\";function r(t){return t[0]=t[1]=t[2]=0,t}function n(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function i(t,e,r,n,i,a,o,s){this.gl=t,this.vertBuffer=e,this.vao=r,this.shader=n,this.tickCount=i,this.tickOffset=a,this.gridCount=o,this.gridOffset=s}function a(t,e,r){var n=[],a=[0,0,0],u=[0,0,0],c=[0,0,0],f=[0,0,0];n.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var h=0;3>h;++h){for(var d=n.length/3|0,p=0;p<r[h].length;++p){var g=+r[h][p].x;n.push(g,0,1,g,1,1,g,0,-1,g,0,-1,g,1,1,g,1,-1)}var v=n.length/3|0;a[h]=d,u[h]=v-d;for(var d=n.length/3|0,m=0;m<r[h].length;++m){var g=+r[h][m].x;n.push(g,0,1,g,1,1,g,0,-1,g,0,-1,g,1,1,g,1,-1)}var v=n.length/3|0;c[h]=d,f[h]=v-d}var y=o(t,new Float32Array(n)),b=s(t,[{buffer:y,type:t.FLOAT,size:3,stride:0,offset:0}]),x=l(t);return x.attributes.position.location=0,new i(t,y,b,x,u,a,f,c)}e.exports=a;var o=t(\"gl-buffer\"),s=t(\"gl-vao\"),l=t(\"./shaders\").line,u=[0,0,0],c=[0,0,0],f=[0,0,0],h=[0,0,0],d=[1,1],p=i.prototype;p.bind=function(t,e,r){this.shader.bind(),this.shader.uniforms.model=t,this.shader.uniforms.view=e,this.shader.uniforms.projection=r,d[0]=this.gl.drawingBufferWidth,d[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=d,this.vao.bind()},p.drawAxisLine=function(t,e,i,a,o){var s=r(c);this.shader.uniforms.majorAxis=c,s[t]=e[1][t]-e[0][t],this.shader.uniforms.minorAxis=s;var l=n(h,i);l[t]+=e[0][t],this.shader.uniforms.offset=l,this.shader.uniforms.lineWidth=o,this.shader.uniforms.color=a;var u=r(f);u[(t+2)%3]=1,this.shader.uniforms.screenAxis=u,this.vao.draw(this.gl.TRIANGLES,6);var u=r(f);u[(t+1)%3]=1,this.shader.uniforms.screenAxis=u,this.vao.draw(this.gl.TRIANGLES,6)},p.drawAxisTicks=function(t,e,n,i,a){var o=r(u);o[t]=1,this.shader.uniforms.majorAxis=o,this.shader.uniforms.offset=e,this.shader.uniforms.minorAxis=n,this.shader.uniforms.color=i,this.shader.uniforms.lineWidth=a;var s=r(f);s[t]=1,this.shader.uniforms.screenAxis=s,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t])},p.drawGrid=function(t,e,i,a,o,s){var l=r(c);l[e]=i[1][e]-i[0][e],this.shader.uniforms.minorAxis=l;var d=n(h,a);d[e]+=i[0][e],this.shader.uniforms.offset=d;var p=r(u);p[t]=1,this.shader.uniforms.majorAxis=p;var g=r(f);g[t]=1,this.shader.uniforms.screenAxis=g,this.shader.uniforms.lineWidth=s,this.shader.uniforms.color=o,this.vao.draw(this.gl.TRIANGLES,this.gridCount[t],this.gridOffset[t])},p.drawZero=function(t,e,i,a,o,s){var l=r(c);this.shader.uniforms.majorAxis=l,l[t]=i[1][t]-i[0][t],this.shader.uniforms.minorAxis=l;var u=n(h,a);u[t]+=i[0][t],this.shader.uniforms.offset=u;var d=r(f);d[e]=1,this.shader.uniforms.screenAxis=d,this.shader.uniforms.lineWidth=s,this.shader.uniforms.color=o,this.vao.draw(this.gl.TRIANGLES,6)},p.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()}},{\"./shaders\":210,\"gl-buffer\":216,\"gl-vao\":221}],210:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),i=\"#define GLSLIFY 1\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, majorAxis, minorAxis, screenAxis;\\nuniform float lineWidth;\\nuniform vec2 screenShape;\\n\\nvec3 project(vec3 p) {\\n vec4 pp = projection * view * model * vec4(p, 1.0);\\n return pp.xyz / max(pp.w, 0.0001);\\n}\\n\\nvoid main() {\\n vec3 major = position.x * majorAxis;\\n vec3 minor = position.y * minorAxis;\\n\\n vec3 vPosition = major + minor + offset;\\n vec3 pPosition = project(vPosition);\\n vec3 offset = project(vPosition + screenAxis * position.z);\\n\\n vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;\\n\\n gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);\\n}\\n\",a=\"#define GLSLIFY 1\\nprecision mediump float;\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = color;\\n}\";r.line=function(t){return n(t,i,a,null,[{name:\"position\",type:\"vec3\"}])};var o=\"#define GLSLIFY 1\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, axis;\\nuniform float scale, angle, pixelScale;\\nuniform vec2 resolution;\\n\\nvoid main() { \\n //Compute plane offset\\n vec2 planeCoord = position.xy * pixelScale;\\n mat2 planeXform = scale * mat2(cos(angle), sin(angle),\\n -sin(angle), cos(angle));\\n vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\\n\\n //Compute world offset\\n float axisDistance = position.z;\\n vec3 dataPosition = axisDistance * axis + offset;\\n vec4 worldPosition = model * vec4(dataPosition, 1);\\n \\n //Compute clip position\\n vec4 viewPosition = view * worldPosition;\\n vec4 clipPosition = projection * viewPosition;\\n clipPosition /= clipPosition.w;\\n\\n //Apply text offset in clip coordinates\\n clipPosition += vec4(viewOffset, 0, 0);\\n\\n //Done\\n gl_Position = clipPosition;\\n}\",s=\"#define GLSLIFY 1\\nprecision mediump float;\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = color;\\n}\";r.text=function(t){return n(t,o,s,null,[{name:\"position\",type:\"vec3\"}])};var l=\"#define GLSLIFY 1\\nattribute vec3 position;\\nattribute vec3 normal;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 enable;\\nuniform vec3 bounds[2];\\n\\nvarying vec3 colorChannel;\\n\\nvoid main() {\\n if(dot(normal, enable) > 0.0) {\\n vec3 nPosition = mix(bounds[0], bounds[1], 0.5 * (position + 1.0));\\n gl_Position = projection * view * model * vec4(nPosition, 1.0);\\n } else {\\n gl_Position = vec4(0,0,0,0);\\n }\\n colorChannel = abs(normal);\\n}\",u=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec4 colors[3];\\n\\nvarying vec3 colorChannel;\\n\\nvoid main() {\\n gl_FragColor = colorChannel.x * colors[0] + \\n colorChannel.y * colors[1] +\\n colorChannel.z * colors[2];\\n}\";r.bg=function(t){return n(t,l,u,null,[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}])}},{\"gl-shader\":337}],211:[function(t,e){(function(r){\"use strict\";function n(t,e,r,n){this.gl=t,this.shader=e,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}function i(t,e){try{return l(t,e)}catch(t){return console.warn(\"error vectorizing text:\",t),{cells:[],positions:[]}}}function a(t,e,r,i,a,l){var c=o(t),f=s(t,[{buffer:c,size:3}]),h=u(t);h.attributes.position.location=0;var d=new n(t,h,c,f);return d.update(e,r,i,a,l),d}e.exports=a;var o=t(\"gl-buffer\"),s=t(\"gl-vao\"),l=t(\"vectorize-text\"),u=t(\"./shaders\").text,c=window||r.global||{},f=c.__TEXT_CACHE||{};c.__TEXT_CACHE={};var h=3,d=n.prototype,p=[0,0];d.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=t,i.view=e,i.projection=r,i.pixelScale=n,p[0]=this.gl.drawingBufferWidth,p[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=p},d.update=function(t,e,r,n,a){function o(t,e,r,n){var a=f[r];a||(a=f[r]={});var o=a[e];o||(o=a[e]=i(e,{triangles:!0,font:r,textAlign:\"center\",textBaseline:\"middle\"}));for(var l=(n||12)/12,u=o.positions,c=o.cells,h=0,d=c.length;d>h;++h)for(var p=c[h],g=2;g>=0;--g){var v=u[p[g]];s.push(l*v[0],-l*v[1],t)}}for(var s=(this.gl,[]),l=[0,0,0],u=[0,0,0],c=[0,0,0],d=[0,0,0],p=0;3>p;++p){c[p]=s.length/h|0,o(.5*(t[0][p]+t[1][p]),e[p],r),d[p]=(s.length/h|0)-c[p],l[p]=s.length/h|0;for(var g=0;g<n[p].length;++g)n[p][g].text&&o(n[p][g].x,n[p][g].text,n[p][g].font||a,n[p][g].fontSize||12);u[p]=(s.length/h|0)-l[p]}this.buffer.update(s),this.tickOffset=l,this.tickCount=u,this.labelOffset=c,this.labelCount=d};var g=[0,0,0];d.drawTicks=function(t,e,r,n,i){var a=g;a[0]=a[1]=a[2]=0,a[t]=1,this.shader.uniforms.axis=a,this.shader.uniforms.color=i,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t])};var v=[0,0,0];d.drawLabel=function(t,e,r,n,i){this.shader.uniforms.axis=v,this.shader.uniforms.color=i,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.vao.draw(this.gl.TRIANGLES,this.labelCount[t],this.labelOffset[t])},d.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()}}).call(this,t(\"_process\"))},{\"./shaders\":210,_process:6,\"gl-buffer\":216,\"gl-vao\":221,\"vectorize-text\":233}],212:[function(t,e,r){\"use strict\";function n(t,e){var r=t+\"\",n=r.indexOf(\".\"),i=0;n>=0&&(i=r.length-n-1);var a=Math.pow(10,i),o=Math.round(t*e*a),s=o+\"\";if(s.indexOf(\"e\")>=0)return s;var l=o/a,u=o%a;0>o?(l=0|-Math.ceil(l),u=0|-u):(l=0|Math.floor(l),u=0|u);var c=\"\"+l;if(0>o&&(c=\"-\"+c),i){for(var f=\"\"+u;f.length<i;)f=\"0\"+f;return c+\".\"+f}return c}function i(t,e){for(var r=[],i=0;3>i;++i){for(var a=[],o=(.5*(t[0][i]+t[1][i]),0);o*e[i]<=t[1][i];++o)a.push({x:o*e[i],text:n(e[i],o)});for(var o=-1;o*e[i]>=t[0][i];--o)a.push({x:o*e[i],text:n(e[i],o)});r.push(a)}return r}function a(t,e){for(var r=0;3>r;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;++n){var i=t[r][n],a=e[r][n];if(i.x!==a.x||i.text!==a.text)return!1}}return!0}r.create=i,r.equal=a},{}],213:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],214:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],215:[function(t,e){\"use strict\";function r(t,e,r){var n=e||0,i=r||1;return[[t[12]+t[0],t[13]+t[1],t[14]+t[2],t[15]+t[3]],[t[12]-t[0],t[13]-t[1],t[14]-t[2],t[15]-t[3]],[t[12]+t[4],t[13]+t[5],t[14]+t[6],t[15]+t[7]],[t[12]-t[4],t[13]-t[5],t[14]-t[6],t[15]-t[7]],[n*t[12]+t[8],n*t[13]+t[9],n*t[14]+t[10],n*t[15]+t[11]],[i*t[12]-t[8],i*t[13]-t[9],i*t[14]-t[10],i*t[15]-t[11]]]}e.exports=r},{}],216:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":217}],217:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":213,buffer:1,dup:99}],218:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],219:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":218,dup:110}],220:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":218,dup:111}],221:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":219,\"./lib/vao-native.js\":220,dup:112}],222:[function(t,e){function r(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}e.exports=r},{}],223:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],224:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":227,\"two-sum\":223}],225:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],226:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],227:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],228:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":224,\"robust-subtract\":225,\"robust-sum\":226,\"two-product\":227}],229:[function(t,e){\"use strict\";function r(t,e){var r=l(s(t,e),[e[e.length-1]]);return r[r.length-1]}function n(t,e,r,n){var i=n-e,a=-e/i;0>a?a=0:a>1&&(a=1);for(var o=1-a,s=t.length,l=new Array(s),u=0;s>u;++u)l[u]=a*t[u]+o*r[u];return l}function i(t,e){for(var i=[],a=[],o=r(t[t.length-1],e),s=t[t.length-1],l=t[0],u=0;u<t.length;++u,s=l){l=t[u];var c=r(l,e);if(0>o&&c>0||o>0&&0>c){var f=n(s,c,l,o);i.push(f),a.push(f.slice())}0>c?a.push(l.slice()):c>0?i.push(l.slice()):(i.push(l.slice()),a.push(l.slice())),o=c}return{positive:i,negative:a}}function a(t,e){for(var i=[],a=r(t[t.length-1],e),o=t[t.length-1],s=t[0],l=0;l<t.length;++l,o=s){s=t[l];var u=r(s,e);(0>a&&u>0||a>0&&0>u)&&i.push(n(o,u,s,a)),u>=0&&i.push(s.slice()),a=u}return i}function o(t,e){for(var i=[],a=r(t[t.length-1],e),o=t[t.length-1],s=t[0],l=0;l<t.length;++l,o=s){s=t[l];var u=r(s,e);(0>a&&u>0||a>0&&0>u)&&i.push(n(o,u,s,a)),0>=u&&i.push(s.slice()),a=u}return i}var s=t(\"robust-dot-product\"),l=t(\"robust-sum\");e.exports=i,e.exports.positive=a,e.exports.negative=o},{\"robust-dot-product\":230,\"robust-sum\":232}],230:[function(t,e){\"use strict\";function r(t,e){for(var r=n(t[0],e[0]),a=1;a<t.length;++a)r=i(r,n(t[a],e[a]));return r}var n=t(\"two-product\"),i=t(\"robust-sum\");e.exports=r},{\"robust-sum\":232,\"two-product\":231}],231:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],232:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],233:[function(t,e){\"use strict\";function r(t,e){return(\"object\"!=typeof e||null===e)&&(e={}),n(t,e.canvas||i,e.context||a,e)}e.exports=r;var n=t(\"./lib/vtext\"),i=null,a=null;\"undefined\"!=typeof document&&(i=document.createElement(\"canvas\"),i.width=8192,i.height=1024,a=i.getContext(\"2d\"))},{\"./lib/vtext\":234}],234:[function(t,e){\"use strict\";function r(t,e,r){for(var n=e.textAlign||\"start\",i=e.textBaseline||\"alphabetic\",a=[1<<30,1<<30],o=[0,0],s=t.length,l=0;s>l;++l)for(var u=t[l],c=0;2>c;++c)a[c]=0|Math.min(a[c],u[c]),o[c]=0|Math.max(o[c],u[c]);var f=0;switch(n){case\"center\":f=-.5*(a[0]+o[0]);break;case\"right\":case\"end\":f=-o[0];break;case\"left\":case\"start\":f=-a[0];break;default:throw new Error(\"vectorize-text: Unrecognized textAlign: '\"+n+\"'\")}var h=0;switch(i){case\"hanging\":case\"top\":h=-a[1];break;case\"middle\":h=-.5*(a[1]+o[1]);break;case\"alphabetic\":case\"ideographic\":h=-3*r;break;case\"bottom\":h=-o[1];break;default:throw new Error(\"vectorize-text: Unrecoginized textBaseline: '\"+i+\"'\")}var d=1/r;return\"lineHeight\"in e?d*=+e.lineHeight:\"width\"in e?d=e.width/(o[0]-a[0]):\"height\"in e&&(d=e.height/(o[1]-a[1])),t.map(function(t){return[d*(t[0]+f),d*(t[1]+h)]})}function n(t,e,r,n){var i=0|Math.ceil(e.measureText(r).width+2*n);if(i>8192)throw new Error(\"vectorize-text: String too long (sorry, this will get fixed later)\");var a=3*n;t.height<a&&(t.height=a),e.fillStyle=\"#000\",e.fillRect(0,0,t.width,t.height),e.fillStyle=\"#fff\",e.fillText(r,n,2*n);var o=e.getImageData(0,0,i,a),s=u(o.data,[a,i,4]);return s.pick(-1,-1,0).transpose(1,0)}function i(t,e){var r=l(t,128);return e?c(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function a(t,e,n,a){var o=i(t,a),s=r(o.positions,e,n),l=o.edges,u=\"ccw\"===e.orientation;if(f(s,l),e.polygons||e.polygon||e.polyline){for(var c=d(l,s),p=new Array(c.length),g=0;g<c.length;++g){for(var v=c[g],m=new Array(v.length),y=0;y<v.length;++y){for(var b=v[y],x=new Array(b.length),_=0;_<b.length;++_)x[_]=s[b[_]].slice();u&&x.reverse(),m[y]=x}p[g]=m}return console.log(p),p}return e.triangles||e.triangulate||e.triangle?{cells:h(s,l,{delaunay:!1,exterior:!1,interior:!0}),positions:s}:{edges:l,positions:s}}function o(t,e,r){try{return a(t,e,r,!0)}catch(t){}try{return a(t,e,r,!1)}catch(t){}return e.polygons||e.polyline||e.polygon?[]:e.triangles||e.triangulate||e.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function s(t,e,r,i){var a=i.size||64,s=i.font||\"normal\";r.font=a+\"px \"+s,r.textAlign=\"start\",r.textBaseline=\"alphabetic\",r.direction=\"ltr\";var l=n(e,r,t,a);return o(l,i,a)}e.exports=s,e.exports.processPixels=o;var l=t(\"surface-nets\"),u=t(\"ndarray\"),c=t(\"simplify-planar-graph\"),f=t(\"clean-pslg\"),h=t(\"cdt2d\"),d=t(\"planar-graph-to-polyline\")},{cdt2d:235,\"clean-pslg\":247,ndarray:560,\"planar-graph-to-polyline\":301,\"simplify-planar-graph\":305,\"surface-nets\":321}],235:[function(t,e){\"use strict\";function r(t){return[Math.min(t[0],t[1]),Math.max(t[0],t[1])]}function n(t,e){return t[0]-e[0]||t[1]-e[1]}function i(t){return t.map(r).sort(n)}function a(t,e,r){return e in t?t[e]:r}function o(t,e,r){Array.isArray(e)?(r=r||{},e=e||[]):(r=e||{},e=[]);var n=!!a(r,\"delaunay\",!0),o=!!a(r,\"interior\",!0),f=!!a(r,\"exterior\",!0),h=!!a(r,\"infinity\",!1);if(!o&&!f||0===t.length)return[];var d=s(t,e);if(n||o!==f||h){for(var p=l(t.length,i(e)),g=0;g<d.length;++g){var v=d[g];p.addTriangle(v[0],v[1],v[2])}return n&&u(t,p),f?o?h?c(p,0,h):p.cells():c(p,1,h):c(p,-1)}return d}var s=t(\"./lib/monotone\"),l=t(\"./lib/triangulation\"),u=t(\"./lib/delaunay\"),c=t(\"./lib/filter\");e.exports=o},{\"./lib/delaunay\":236,\"./lib/filter\":237,\"./lib/monotone\":238,\"./lib/triangulation\":239}],236:[function(t,e){\"use strict\";function r(t,e,r,n,a,o){var s=e.opposite(n,a);if(!(0>s)){if(n>a){var l=n;n=a,a=l,l=o,o=s,s=l}e.isConstraint(n,a)||i(t[n],t[a],t[o],t[s])<0&&r.push(n,a)}}function n(t,e){for(var n=[],a=t.length,o=e.stars,s=0;a>s;++s)for(var l=o[s],u=1;u<l.length;u+=2){var c=l[u];if(!(s>c||e.isConstraint(s,c))){for(var f=l[u-1],h=-1,d=1;d<l.length;d+=2)if(l[d-1]===c){h=l[d];break}0>h||i(t[s],t[c],t[f],t[h])<0&&n.push(s,c)}}for(;n.length>0;){for(var c=n.pop(),s=n.pop(),f=-1,h=-1,l=o[s],p=1;p<l.length;p+=2){var g=l[p-1],v=l[p];g===c?h=v:v===c&&(f=g)}0>f||0>h||i(t[s],t[c],t[f],t[h])>=0||(e.flip(s,c),r(t,e,n,f,s,h),r(t,e,n,s,h,f),r(t,e,n,h,c,f),r(t,e,n,c,f,h))}}{var i=t(\"robust-in-sphere\")[4];t(\"binary-search-bounds\")}e.exports=n},{\"binary-search-bounds\":240,\"robust-in-sphere\":241}],237:[function(t,e){\"use strict\";function r(t,e,r,n,i,a,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=i,this.next=a,this.boundary=o}function n(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}function i(t,e){for(var i=t.cells(),a=i.length,o=0;a>o;++o){var s=i[o],l=s[0],u=s[1],c=s[2];c>u?l>u&&(s[0]=u,s[1]=c,s[2]=l):l>c&&(s[0]=c,s[1]=l,s[2]=u)}i.sort(n);for(var f=new Array(a),o=0;o<f.length;++o)f[o]=0;var h=[],d=[],p=new Array(3*a),g=new Array(3*a),v=null;e&&(v=[]);for(var m=new r(i,p,g,f,h,d,v),o=0;a>o;++o)for(var s=i[o],y=0;3>y;++y){var l=s[y],u=s[(y+1)%3],b=p[3*o+y]=m.locate(u,l,t.opposite(u,l)),x=g[3*o+y]=t.isConstraint(l,u);0>b&&(x?d.push(o):(h.push(o),f[o]=1),e&&v.push([u,l,-1]))}return m}function a(t,e,r){for(var n=0,i=0;i<t.length;++i)e[i]===r&&(t[n++]=t[i]);return t.length=n,t}function o(t,e,r){var n=i(t,r);if(0===e)return r?n.cells.concat(n.boundary):n.cells;for(var o=1,s=n.active,l=n.next,u=n.flags,c=n.cells,f=n.constraint,h=n.neighbor;s.length>0||l.length>0;){for(;s.length>0;){var d=s.pop();if(u[d]!==-o){u[d]=o;for(var p=(c[d],0);3>p;++p){var g=h[3*d+p];g>=0&&0===u[g]&&(f[3*d+p]?l.push(g):(s.push(g),u[g]=o))}}}var v=l;l=s,s=v,l.length=0,o=-o}var m=a(c,u,e);return r?m.concat(n.boundary):m}var s=t(\"binary-search-bounds\");e.exports=o;var l=r.prototype;l.locate=function(){var t=[0,0,0];return function(e,r,i){var a=e,o=r,l=i;return i>r?e>r&&(a=r,o=i,l=e):e>i&&(a=i,o=e,l=r),0>a?-1:(t[0]=a,t[1]=o,t[2]=l,s.eq(this.cells,t,n))}}()},{\"binary-search-bounds\":240}],238:[function(t,e){\"use strict\";function r(t,e,r,n,i){this.a=t,this.b=e,this.idx=r,this.lowerIds=n,this.upperIds=i}function n(t,e,r,n){this.a=t,this.b=e,this.type=r,this.idx=n}function i(t,e){var r=t.a[0]-e.a[0]||t.a[1]-e.a[1]||t.type-e.type;return r?r:t.type!==d&&(r=h(t.a,t.b,e.b))?r:t.idx-e.idx}function a(t,e){return h(t.a,t.b,e)}function o(t,e,r,n,i){for(var o=f.lt(e,n,a),s=f.gt(e,n,a),l=o;s>l;++l){for(var u=e[l],c=u.lowerIds,d=c.length;d>1&&h(r[c[d-2]],r[c[d-1]],n)>0;)t.push([c[d-1],c[d-2],i]),d-=1;c.length=d,c.push(i);for(var p=u.upperIds,d=p.length;d>1&&h(r[p[d-2]],r[p[d-1]],n)<0;)t.push([p[d-2],p[d-1],i]),d-=1;p.length=d,p.push(i)}}function s(t,e){var r;return(r=t.a[0]<e.a[0]?h(t.a,t.b,e.a):h(e.b,e.a,t.a))?r:(r=e.b[0]<t.b[0]?h(t.a,t.b,e.b):h(e.b,e.a,t.b),r||t.idx-e.idx)}function l(t,e,n){var i=f.le(t,n,s),a=t[i],o=a.upperIds,l=o[o.length-1];a.upperIds=[l],t.splice(i+1,0,new r(n.a,n.b,n.idx,[l],o))}function u(t,e,r){var n=r.a;r.a=r.b,r.b=n;var i=f.eq(t,r,s),a=t[i],o=t[i-1];o.upperIds=a.upperIds,t.splice(i,1)}function c(t,e){for(var a=t.length,s=e.length,c=[],f=0;a>f;++f)c.push(new n(t[f],null,d,f));for(var f=0;s>f;++f){var h=e[f],v=t[h[0]],m=t[h[1]];v[0]<m[0]?c.push(new n(v,m,g,f),new n(m,v,p,f)):v[0]>m[0]&&c.push(new n(m,v,g,f),new n(v,m,p,f))}c.sort(i);for(var y=c[0].a[0]-(1+Math.abs(c[0].a[0]))*Math.pow(2,-52),b=[new r([y,1],[y,0],-1,[],[],[],[])],x=[],f=0,_=c.length;_>f;++f){var w=c[f],k=w.type;k===d?o(x,b,t,w.a,w.idx):k===g?l(b,t,w):u(b,t,w)}return x}var f=t(\"binary-search-bounds\"),h=t(\"robust-orientation\")[3],d=0,p=1,g=2;e.exports=c},{\"binary-search-bounds\":240,\"robust-orientation\":228}],239:[function(t,e){\"use strict\";\n",
"function r(t,e){this.stars=t,this.edges=e}function n(t,e,r){for(var n=1,i=t.length;i>n;n+=2)if(t[n-1]===e&&t[n]===r)return t[n-1]=t[i-2],t[n]=t[i-1],void(t.length=i-2)}function i(t,e){for(var n=new Array(t),i=0;t>i;++i)n[i]=[];return new r(n,e)}var a=t(\"binary-search-bounds\");e.exports=i;var o=r.prototype;o.isConstraint=function(){function t(t,e){return t[0]-e[0]||t[1]-e[1]}var e=[0,0];return function(r,n){return e[0]=Math.min(r,n),e[1]=Math.max(r,n),a.eq(this.edges,e,t)>=0}}(),o.removeTriangle=function(t,e,r){var i=this.stars;n(i[t],e,r),n(i[e],r,t),n(i[r],t,e)},o.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},o.opposite=function(t,e){for(var r=this.stars[e],n=1,i=r.length;i>n;n+=2)if(r[n]===t)return r[n-1];return-1},o.flip=function(t,e){var r=this.opposite(t,e),n=this.opposite(e,t);this.removeTriangle(t,e,r),this.removeTriangle(e,t,n),this.addTriangle(t,n,r),this.addTriangle(e,r,n)},o.edges=function(){for(var t=this.stars,e=[],r=0,n=t.length;n>r;++r)for(var i=t[r],a=0,o=i.length;o>a;a+=2)e.push([i[a],i[a+1]]);return e},o.cells=function(){for(var t=this.stars,e=[],r=0,n=t.length;n>r;++r)for(var i=t[r],a=0,o=i.length;o>a;a+=2){var s=i[a],l=i[a+1];r<Math.min(s,l)&&e.push([r,s,l])}return e}},{\"binary-search-bounds\":240}],240:[function(t,e){\"use strict\";function r(t,e,r,n,i){var a=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",i?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a[m]\"];return i?a.push(e.indexOf(\"c\")<0?\";if(x===y){return m}else if(x<=y){\":\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):a.push(\";if(\",e,\"){i=m;\"),a.push(r?\"l=m+1}else{h=m-1}\":\"h=m-1}else{l=m+1}\"),a.push(\"}\"),a.push(i?\"return -1};\":\"return i};\"),a.join(\"\")}function n(t,e,n,i){var a=new Function([r(\"A\",\"x\"+t+\"y\",e,[\"y\"],i),r(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],i),\"function dispatchBsearch\",n,\"(a,y,c,l,h){if(typeof(c)==='function'){return P(a,(l===void 0)?0:l|0,(h===void 0)?a.length-1:h|0,y,c)}else{return A(a,(c===void 0)?0:c|0,(l===void 0)?a.length-1:l|0,y)}}return dispatchBsearch\",n].join(\"\"));return a()}e.exports={ge:n(\">=\",!1,\"GE\"),gt:n(\">\",!1,\"GT\"),lt:n(\"<\",!0,\"LT\"),le:n(\"<=\",!0,\"LE\"),eq:n(\"-\",!0,\"EQ\",!0)}},{}],241:[function(t,e){\"use strict\";function r(t,e){for(var r=new Array(t.length-1),n=1;n<t.length;++n)for(var i=r[n-1]=new Array(t.length-1),a=0,o=0;a<t.length;++a)a!==e&&(i[o++]=t[n][a]);return r}function n(t){for(var e=new Array(t),r=0;t>r;++r){e[r]=new Array(t);for(var n=0;t>n;++n)e[r][n]=[\"m\",n,\"[\",t-r-2,\"]\"].join(\"\")}return e}function i(t){if(1===t.length)return t[0];if(2===t.length)return[\"sum(\",t[0],\",\",t[1],\")\"].join(\"\");var e=t.length>>1;return[\"sum(\",i(t.slice(0,e)),\",\",i(t.slice(e)),\")\"].join(\"\")}function a(t,e){if(\"m\"===t.charAt(0)){if(\"w\"===e.charAt(0)){var r=t.split(\"[\");return[\"w\",e.substr(1),\"m\",r[0].substr(1)].join(\"\")}return[\"prod(\",t,\",\",e,\")\"].join(\"\")}return a(e,t)}function o(t){return t&!0?\"-\":\"\"}function s(t){if(2===t.length)return[[\"diff(\",a(t[0][0],t[1][1]),\",\",a(t[1][0],t[0][1]),\")\"].join(\"\")];for(var e=[],n=0;n<t.length;++n)e.push([\"scale(\",i(s(r(t,n))),\",\",o(n),t[0][n],\")\"].join(\"\"));return e}function l(t,e){for(var r=[],n=0;e-2>n;++n)r.push([\"prod(m\",t,\"[\",n,\"],m\",t,\"[\",n,\"])\"].join(\"\"));return i(r)}function u(t){for(var e=[],a=[],o=n(t),u=0;t>u;++u)o[0][u]=\"1\",o[t-1][u]=\"w\"+u;for(var u=0;t>u;++u)0===(1&u)?e.push.apply(e,s(r(o,u))):a.push.apply(a,s(r(o,u)));for(var c=i(e),f=i(a),h=\"exactInSphere\"+t,d=[],u=0;t>u;++u)d.push(\"m\"+u);for(var p=[\"function \",h,\"(\",d.join(),\"){\"],u=0;t>u;++u){p.push(\"var w\",u,\"=\",l(u,t),\";\");for(var b=0;t>b;++b)b!==u&&p.push(\"var w\",u,\"m\",b,\"=scale(w\",u,\",m\",b,\"[0]);\")}p.push(\"var p=\",c,\",n=\",f,\",d=diff(p,n);return d[d.length-1];}return \",h);var x=new Function(\"sum\",\"diff\",\"prod\",\"scale\",p.join(\"\"));return x(v,m,g,y)}function c(){return 0}function f(){return 0}function h(){return 0}function d(t){var e=x[t.length];return e||(e=x[t.length]=u(t.length)),e.apply(void 0,t)}function p(){for(;x.length<=b;)x.push(u(x.length));for(var t=[],r=[\"slow\"],n=0;b>=n;++n)t.push(\"a\"+n),r.push(\"o\"+n);for(var i=[\"function testInSphere(\",t.join(),\"){switch(arguments.length){case 0:case 1:return 0;\"],n=2;b>=n;++n)i.push(\"case \",n,\":return o\",n,\"(\",t.slice(0,n).join(),\");\");i.push(\"}var s=new Array(arguments.length);for(var i=0;i<arguments.length;++i){s[i]=arguments[i]};return slow(s);}return testInSphere\"),r.push(i.join(\"\"));var a=Function.apply(void 0,r);e.exports=a.apply(void 0,[d].concat(x));for(var n=0;b>=n;++n)e.exports[n]=x[n]}var g=t(\"two-product\"),v=t(\"robust-sum\"),m=t(\"robust-subtract\"),y=t(\"robust-scale\"),b=6,x=[c,f,h];p()},{\"robust-scale\":243,\"robust-subtract\":244,\"robust-sum\":245,\"two-product\":246}],242:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],243:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":246,\"two-sum\":242}],244:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],245:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],246:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],247:[function(t,e){\"use strict\";function r(t){var e=b(t),r=y(m(e),t);return 0>r?[e,_(e,1/0)]:r>0?[_(e,-1/0),e]:[e,e]}function n(t,e){for(var r=new Array(e.length),n=0;n<e.length;++n){var i=e[n],a=t[i[0]],o=t[i[1]];r[n]=[Math.min(a[0],o[0]),Math.min(a[1],o[1]),Math.max(a[0],o[0]),Math.max(a[1],o[1])]}return r}function i(t){for(var e=new Array(t.length),r=0;r<t.length;++r){var n=t[r];e[r]=[n[0],n[1],n[0],n[1]]}return e}function a(t,e,r){var n=[];return g(r,function(r,i){var a=e[r],o=e[i];if(a[0]!==o[0]&&a[0]!==o[1]&&a[1]!==o[0]&&a[1]!==o[1]){var s=t[a[0]],l=t[a[1]],u=t[o[0]],c=t[o[1]];v(s,l,u,c)&&n.push([r,i])}}),n}function o(t,e,r,n){var i=[];return g(r,n,function(r,n){var a=e[r];if(a[0]!==n&&a[1]!==n){var o=t[n],s=t[a[0]],l=t[a[1]];v(s,l,o,o)&&i.push([r,n])}}),i}function s(t,e,r,n,i){function a(e){if(e>=t.length)return o[e-t.length];var r=t[e];return[m(r[0]),m(r[1])]}for(var o=[],s=0;s<r.length;++s){var l=r[s],u=l[0],c=l[1],f=e[u],h=e[c],d=w(x(t[f[0]]),x(t[f[1]]),x(t[h[0]]),x(t[h[1]]));if(d){var p=o.length+t.length;o.push(d),n.push([u,p],[c,p])}}n.sort(function(t,e){if(t[0]!==e[0])return t[0]-e[0];var r=a(t[1]),n=a(e[1]);return y(r[0],n[0])||y(r[1],n[1])});for(var s=n.length-1;s>=0;--s){var g=n[s],u=g[0],v=e[u],b=v[0],_=v[1],k=t[b],A=t[_];if((k[0]-A[0]||k[1]-A[1])<0){var M=b;b=_,_=M}v[0]=b;var L,E=v[1]=g[1];for(i&&(L=v[2]);s>0&&n[s-1][0]===u;){var g=n[--s],C=g[1];e.push(i?[E,C,L]:[E,C]),E=C}e.push(i?[E,_,L]:[E,_])}return o}function l(t,e,n){for(var i=t.length+e.length,a=new p(i),o=n,s=0;s<e.length;++s){var l=e[s],u=r(l[0]),c=r(l[1]);o.push([u[0],c[0],u[1],c[1]]),t.push([b(l[0]),b(l[1])])}g(o,function(t,e){a.link(t,e)});for(var f=0,h=!0,d=new Array(i),s=0;i>s;++s){var v=a.find(s);v===s?(d[s]=f,t[f++]=t[s]):(h=!1,d[s]=-1)}if(t.length=f,h)return null;for(var s=0;i>s;++s)d[s]<0&&(d[s]=d[a.find(s)]);return d}function u(t,e){return t[0]-e[0]||t[1]-e[1]}function c(t,e){var r=t[0]-e[0]||t[1]-e[1];return r?r:t[2]<e[2]?-1:t[2]>e[2]?1:0}function f(t,e,r){if(0!==t.length){if(e)for(var n=0;n<t.length;++n){var i=t[n],a=e[i[0]],o=e[i[1]];i[0]=Math.min(a,o),i[1]=Math.max(a,o)}else for(var n=0;n<t.length;++n){var i=t[n],a=i[0],o=i[1];i[0]=Math.min(a,o),i[1]=Math.max(a,o)}t.sort(r?c:u);for(var s=1,n=1;n<t.length;++n){var l=t[n-1],f=t[n];(f[0]!==l[0]||f[1]!==l[1]||r&&f[2]!==l[2])&&(t[s++]=f)}t.length=s}}function h(t,e,r){var u=n(t,e),c=a(t,e,u),h=i(t),d=o(t,e,u,h),p=s(t,e,c,d,r),g=l(t,p,h);return f(e,g,r),g?!0:c.length>0||d.length>0}function d(t,e,r){var n,i=!1;if(r){n=e;for(var a=new Array(e.length),o=0;o<e.length;++o){var s=e[o];a[o]=[s[0],s[1],r[o]]}e=a}for(;h(t,e,!!r);)i=!0;if(r&&i){n.length=0,r.length=0;for(var o=0;o<e.length;++o){var s=e[o];n.push([s[0],s[1]]),r.push(s[2])}}return i}e.exports=d;var p=t(\"union-find\"),g=t(\"box-intersect\"),v=(t(\"compare-cell\"),t(\"robust-segment-intersect\")),m=t(\"big-rat\"),y=t(\"big-rat/cmp\"),b=t(\"big-rat/to-float\"),x=t(\"rat-vec\"),_=t(\"nextafter\"),w=t(\"./lib/rat-seg-intersect\")},{\"./lib/rat-seg-intersect\":248,\"big-rat\":252,\"big-rat/cmp\":250,\"big-rat/to-float\":266,\"box-intersect\":267,\"compare-cell\":275,nextafter:276,\"rat-vec\":279,\"robust-segment-intersect\":282,\"union-find\":283}],248:[function(t,e){\"use strict\";function r(t,e){return o(i(t[0],e[1]),i(t[1],e[0]))}function n(t,e,n,i){var o=l(e,t),f=l(i,n),h=r(o,f);if(0===s(h))return null;var d=l(t,n),p=r(f,d),g=a(p,h);return u(t,c(o,g))}e.exports=n;{var i=t(\"big-rat/mul\"),a=t(\"big-rat/div\"),o=t(\"big-rat/sub\"),s=t(\"big-rat/sign\"),l=t(\"rat-vec/sub\"),u=t(\"rat-vec/add\"),c=t(\"rat-vec/muls\");t(\"big-rat/to-float\")}},{\"big-rat/div\":251,\"big-rat/mul\":261,\"big-rat/sign\":264,\"big-rat/sub\":265,\"big-rat/to-float\":266,\"rat-vec/add\":278,\"rat-vec/muls\":280,\"rat-vec/sub\":281}],249:[function(t,e){\"use strict\";function r(t,e){return n(t[0].mul(e[1]).add(e[0].mul(t[1])),t[1].mul(e[1]))}var n=t(\"./lib/rationalize\");e.exports=r},{\"./lib/rationalize\":259}],250:[function(t,e){\"use strict\";function r(t,e){return t[0].mul(e[1]).cmp(e[0].mul(t[1]))}e.exports=r},{}],251:[function(t,e){\"use strict\";function r(t,e){return n(t[0].mul(e[1]),t[1].mul(e[0]))}var n=t(\"./lib/rationalize\");e.exports=r},{\"./lib/rationalize\":259}],252:[function(t,e){\"use strict\";function r(t,e){if(n(t))return e?l(t,r(e)):[t[0].clone(),t[1].clone()];var u,c,f=0;if(i(t))u=t.clone();else if(\"string\"==typeof t)u=o(t);else{if(0===t)return[a(0),a(1)];if(t===Math.floor(t))u=a(t);else{for(;t!==Math.floor(t);)t*=Math.pow(2,256),f-=256;u=a(t)}}if(n(e))u.mul(e[1]),c=e[0].clone();else if(i(e))c=e.clone();else if(\"string\"==typeof e)c=o(e);else if(e)if(e===Math.floor(e))c=a(e);else{for(;e!==Math.floor(e);)e*=Math.pow(2,256),f+=256;c=a(e)}else c=a(1);return f>0?u=u.shln(f):0>f&&(c=c.shln(-f)),s(u,c)}var n=t(\"./is-rat\"),i=t(\"./lib/is-bn\"),a=t(\"./lib/num-to-bn\"),o=t(\"./lib/str-to-bn\"),s=t(\"./lib/rationalize\"),l=t(\"./div\");e.exports=r},{\"./div\":251,\"./is-rat\":253,\"./lib/is-bn\":257,\"./lib/num-to-bn\":258,\"./lib/rationalize\":259,\"./lib/str-to-bn\":260}],253:[function(t,e){\"use strict\";function r(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}var n=t(\"./lib/is-bn\");e.exports=r},{\"./lib/is-bn\":257}],254:[function(t,e){\"use strict\";function r(t){return t.cmp(new n(0))}var n=t(\"bn.js\");e.exports=r},{\"bn.js\":262}],255:[function(t,e){\"use strict\";function r(t){var e=t.length,r=t.words,n=0;if(1===e)n=r[0];else if(2===e)n=r[0]+67108864*r[1];else for(var n=0,i=0;e>i;i++){var a=r[i];n+=a*Math.pow(67108864,i)}return t.sign?-n:n}e.exports=r},{}],256:[function(t,e){\"use strict\";function r(t){var e=i(n.lo(t));if(32>e)return e;var r=i(n.hi(t));return r>20?52:r+32}var n=t(\"double-bits\"),i=t(\"bit-twiddle\").countTrailingZeros;e.exports=r},{\"bit-twiddle\":213,\"double-bits\":263}],257:[function(t,e){\"use strict\";function r(t){return t&&\"object\"==typeof t&&Boolean(t.words)}t(\"bn.js\");e.exports=r},{\"bn.js\":262}],258:[function(t,e){\"use strict\";function r(t){var e=i.exponent(t);return 52>e?new n(t):new n(t*Math.pow(2,52-e)).shln(e-52)}var n=t(\"bn.js\"),i=t(\"double-bits\");e.exports=r},{\"bn.js\":262,\"double-bits\":263}],259:[function(t,e){\"use strict\";function r(t,e){var r=i(t),a=i(e);if(0===r)return[n(0),n(1)];if(0===a)return[n(0),n(0)];0>a&&(t=t.neg(),e=e.neg());var o=t.gcd(e);return o.cmpn(1)?[t.div(o),e.div(o)]:[t,e]}var n=t(\"./num-to-bn\"),i=t(\"./bn-sign\");e.exports=r},{\"./bn-sign\":254,\"./num-to-bn\":258}],260:[function(t,e){\"use strict\";function r(t){return new n(t)}var n=t(\"bn.js\");e.exports=r},{\"bn.js\":262}],261:[function(t,e){\"use strict\";function r(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}var n=t(\"./lib/rationalize\");e.exports=r},{\"./lib/rationalize\":259}],262:[function(t,e){!function(t,e){\"use strict\";function r(t,e){if(!t)throw new Error(e||\"Assertion failed\")}function n(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function i(t,e,r){return null!==t&&\"object\"==typeof t&&Array.isArray(t.words)?t:(this.sign=!1,this.words=null,this.length=0,this.red=null,(\"le\"===e||\"be\"===e)&&(r=e,e=10),void(null!==t&&this._init(t||0,e||10,r||\"be\")))}function a(t,e,r){for(var n=0,i=Math.min(t.length,r),a=e;i>a;a++){var o=t.charCodeAt(a)-48;n<<=4,n|=o>=49&&54>=o?o-49+10:o>=17&&22>=o?o-17+10:15&o}return n}function o(t,e,r,n){for(var i=0,a=Math.min(t.length,r),o=e;a>o;o++){var s=t.charCodeAt(o)-48;i*=n,i+=s>=49?s-49+10:s>=17?s-17+10:s}return i}function s(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).ishln(this.n).isub(this.p),this.tmp=this._tmp()}function l(){s.call(this,\"k256\",\"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f\")}function u(){s.call(this,\"p224\",\"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001\")}function c(){s.call(this,\"p192\",\"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff\")}function f(){s.call(this,\"25519\",\"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed\")}function h(t){if(\"string\"==typeof t){var e=i._prime(t);this.m=e.p,this.prime=e}else this.m=t,this.prime=null}function d(t){h.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).ishln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv.sign=!0,this.minv=this.minv.mod(this.r)}\"object\"==typeof t?t.exports=i:e.BN=i,i.BN=i,i.wordSize=26,i.prototype._init=function(t,e,n){if(\"number\"==typeof t)return this._initNumber(t,e,n);if(\"object\"==typeof t)return this._initArray(t,e,n);\"hex\"===e&&(e=16),r(e===(0|e)&&e>=2&&36>=e),t=t.toString().replace(/\\s+/g,\"\");var i=0;\"-\"===t[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),\"-\"===t[0]&&(this.sign=!0),this.strip(),\"le\"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initNumber=function(t,e,n){0>t&&(this.sign=!0,t=-t),67108864>t?(this.words=[67108863&t],this.length=1):4503599627370496>t?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(9007199254740992>t),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),\"le\"===n&&this._initArray(this.toArray(),e,n)},i.prototype._initArray=function(t,e,n){if(r(\"number\"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i<this.length;i++)this.words[i]=0;var a=0;if(\"be\"===n)for(var i=t.length-1,o=0;i>=0;i-=3){var s=t[i]|t[i-1]<<8|t[i-2]<<16;this.words[o]|=s<<a&67108863,this.words[o+1]=s>>>26-a&67108863,a+=24,a>=26&&(a-=26,o++)}else if(\"le\"===n)for(var i=0,o=0;i<t.length;i+=3){var s=t[i]|t[i+1]<<8|t[i+2]<<16;this.words[o]|=s<<a&67108863,this.words[o+1]=s>>>26-a&67108863,a+=24,a>=26&&(a-=26,o++)}return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;for(var n=0,r=t.length-6,i=0;r>=e;r-=6){var o=a(t,r,r+6);this.words[i]|=o<<n&67108863,this.words[i+1]|=o>>>26-n&4194303,n+=24,n>=26&&(n-=26,i++)}if(r+6!==e){var o=a(t,e,r+6);this.words[i]|=o<<n&67108863,this.words[i+1]|=o>>>26-n&4194303}this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;67108863>=i;i*=e)n++;n--,i=i/e|0;for(var a=t.length-r,s=a%n,l=Math.min(a,a-s)+r,u=0,c=r;l>c;c+=n)u=o(t,c,c+n,e),this.imuln(i),this.words[0]+u<67108864?this.words[0]+=u:this._iaddn(u);if(0!==s){for(var f=1,u=o(t,c,t.length,e),c=0;s>c;c++)f*=e;this.imuln(f),this.words[0]+u<67108864?this.words[0]+=u:this._iaddn(u)}},i.prototype.copy=function(t){t.words=new Array(this.length);for(var e=0;e<this.length;e++)t.words[e]=this.words[e];t.length=this.length,t.sign=this.sign,t.red=this.red},i.prototype.clone=function(){var t=new i(null);return this.copy(t),t},i.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.sign=!1),this},i.prototype.inspect=function(){return(this.red?\"<BN-R: \":\"<BN: \")+this.toString(16)+\">\"};var p=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],g=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],v=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(t,e){if(t=t||10,16===t||\"hex\"===t){for(var n=\"\",i=0,e=0|e||1,a=0,o=0;o<this.length;o++){var s=this.words[o],l=(16777215&(s<<i|a)).toString(16);a=s>>>24-i&16777215,n=0!==a||o!==this.length-1?p[6-l.length]+l+n:l+n,i+=2,i>=26&&(i-=26,o--)}for(0!==a&&(n=a.toString(16)+n);n.length%e!==0;)n=\"0\"+n;return this.sign&&(n=\"-\"+n),n}if(t===(0|t)&&t>=2&&36>=t){var u=g[t],c=v[t],n=\"\",f=this.clone();for(f.sign=!1;0!==f.cmpn(0);){var h=f.modn(c).toString(t);f=f.idivn(c),n=0!==f.cmpn(0)?p[u-h.length]+h+n:h+n}return 0===this.cmpn(0)&&(n=\"0\"+n),this.sign&&(n=\"-\"+n),n}r(!1,\"Base should be between 2 and 36\")},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toArray=function(t){this.strip();var e=new Array(this.byteLength());e[0]=0;var r=this.clone();if(\"le\"!==t)for(var n=0;0!==r.cmpn(0);n++){var i=r.andln(255);r.ishrn(8),e[e.length-n-1]=i}else for(var n=0;0!==r.cmpn(0);n++){var i=r.andln(255);r.ishrn(8),e[n]=i}return e},i.prototype._countBits=Math.clz32?function(t){return 32-Math.clz32(t)}:function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},i.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0===(8191&e)&&(r+=13,e>>>=13),0===(127&e)&&(r+=7,e>>>=7),0===(15&e)&&(r+=4,e>>>=4),0===(3&e)&&(r+=2,e>>>=2),0===(1&e)&&r++,r},i.prototype.bitLength=function(){var t=0,e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(0===this.cmpn(0))return 0;for(var t=0,e=0;e<this.length;e++){var r=this._zeroBits(this.words[e]);if(t+=r,26!==r)break}return t},i.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},i.prototype.neg=function(){if(0===this.cmpn(0))return this.clone();var t=this.clone();return t.sign=!this.sign,t},i.prototype.ior=function(t){for(this.sign=this.sign||t.sign;this.length<t.length;)this.words[this.length++]=0;for(var e=0;e<t.length;e++)this.words[e]=this.words[e]|t.words[e];return this.strip()},i.prototype.or=function(t){return this.length>t.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.iand=function(t){this.sign=this.sign&&t.sign;var e;e=this.length>t.length?t:this;for(var r=0;r<e.length;r++)this.words[r]=this.words[r]&t.words[r];return this.length=e.length,this.strip()},i.prototype.and=function(t){return this.length>t.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.ixor=function(t){this.sign=this.sign||t.sign;var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;n<r.length;n++)this.words[n]=e.words[n]^r.words[n];if(this!==e)for(;n<e.length;n++)this.words[n]=e.words[n];return this.length=e.length,this.strip()},i.prototype.xor=function(t){return this.length>t.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.setn=function(t,e){r(\"number\"==typeof t&&t>=0);for(var n=t/26|0,i=t%26;this.length<=n;)this.words[this.length++]=0;return this.words[n]=e?this.words[n]|1<<i:this.words[n]&~(1<<i),this.strip()},i.prototype.iadd=function(t){if(this.sign&&!t.sign){this.sign=!1;var e=this.isub(t);return this.sign=!this.sign,this._normSign()}if(!this.sign&&t.sign){t.sign=!1;var e=this.isub(t);return t.sign=!0,e._normSign()}var r,n;this.length>t.length?(r=this,n=t):(r=t,n=this);for(var i=0,a=0;a<n.length;a++){var e=r.words[a]+n.words[a]+i;this.words[a]=67108863&e,i=e>>>26}for(;0!==i&&a<r.length;a++){var e=r.words[a]+i;this.words[a]=67108863&e,i=e>>>26}if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;a<r.length;a++)this.words[a]=r.words[a];return this},i.prototype.add=function(t){if(t.sign&&!this.sign){t.sign=!1;var e=this.sub(t);return t.sign=!0,e}if(!t.sign&&this.sign){this.sign=!1;var e=t.sub(this);return this.sign=!0,e}return this.length>t.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(t.sign){t.sign=!1;var e=this.iadd(t);return t.sign=!0,e._normSign()}if(this.sign)return this.sign=!1,this.iadd(t),this.sign=!0,this._normSign();var r=this.cmp(t);if(0===r)return this.sign=!1,this.length=1,this.words[0]=0,this;var n,i;r>0?(n=this,i=t):(n=t,i=this);for(var a=0,o=0;o<i.length;o++){var e=n.words[o]-i.words[o]+a;a=e>>26,this.words[o]=67108863&e}for(;0!==a&&o<n.length;o++){var e=n.words[o]+a;a=e>>26,this.words[o]=67108863&e}if(0===a&&o<n.length&&n!==this)for(;o<n.length;o++)this.words[o]=n.words[o];return this.length=Math.max(this.length,o),n!==this&&(this.sign=!0),this.strip()},i.prototype.sub=function(t){return this.clone().isub(t)},i.prototype._smallMulTo=function(t,e){e.sign=t.sign!==this.sign,e.length=this.length+t.length;for(var r=0,n=0;n<e.length-1;n++){for(var i=r>>>26,a=67108863&r,o=Math.min(n,t.length-1),s=Math.max(0,n-this.length+1);o>=s;s++){var l=n-s,u=0|this.words[l],c=0|t.words[s],f=u*c,h=67108863&f;i=i+(f/67108864|0)|0,h=h+a|0,a=67108863&h,i=i+(h>>>26)|0}e.words[n]=a,r=i}return 0!==r?e.words[n]=r:e.length--,e.strip()},i.prototype._bigMulTo=function(t,e){e.sign=t.sign!==this.sign,e.length=this.length+t.length;for(var r=0,n=0,i=0;i<e.length-1;i++){var a=n;n=0;for(var o=67108863&r,s=Math.min(i,t.length-1),l=Math.max(0,i-this.length+1);s>=l;l++){var u=i-l,c=0|this.words[u],f=0|t.words[l],h=c*f,d=67108863&h;a=a+(h/67108864|0)|0,d=d+o|0,o=67108863&d,a=a+(d>>>26)|0,n+=a>>>26,a&=67108863}e.words[i]=o,r=a,a=n}return 0!==r?e.words[i]=r:e.length--,e.strip()},i.prototype.mulTo=function(t,e){var r;return r=this.length+t.length<63?this._smallMulTo(t,e):this._bigMulTo(t,e)},i.prototype.mul=function(t){var e=new i(null);return e.words=new Array(this.length+t.length),this.mulTo(t,e)},i.prototype.imul=function(t){if(0===this.cmpn(0)||0===t.cmpn(0))return this.words[0]=0,this.length=1,this;var e=this.length,r=t.length;this.sign=t.sign!==this.sign,this.length=this.length+t.length,this.words[this.length-1]=0;for(var n=this.length-2;n>=0;n--){for(var i=0,a=0,o=Math.min(n,r-1),s=Math.max(0,n-e+1);o>=s;s++){var l=n-s,u=this.words[l],c=t.words[s],f=u*c,h=67108863&f;i+=f/67108864|0,h+=a,a=67108863&h,i+=h>>>26}this.words[n]=a,this.words[n+1]+=i,i=0}for(var i=0,l=1;l<this.length;l++){var d=this.words[l]+i;this.words[l]=67108863&d,i=d>>>26}return this.strip()},i.prototype.imuln=function(t){r(\"number\"==typeof t);for(var e=0,n=0;n<this.length;n++){var i=this.words[n]*t,a=(67108863&i)+(67108863&e);e>>=26,e+=i/67108864|0,e+=a>>>26,this.words[n]=67108863&a}return 0!==e&&(this.words[n]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.mul(this)},i.prototype.ishln=function(t){r(\"number\"==typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=67108863>>>26-e<<26-e;if(0!==e){for(var a=0,o=0;o<this.length;o++){var s=this.words[o]&i,l=this.words[o]-s<<e;this.words[o]=l|a,a=s>>>26-e}a&&(this.words[o]=a,this.length++)}if(0!==n){for(var o=this.length-1;o>=0;o--)this.words[o+n]=this.words[o];for(var o=0;n>o;o++)this.words[o]=0;this.length+=n}return this.strip()},i.prototype.ishrn=function(t,e,n){r(\"number\"==typeof t&&t>=0);var i;i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<<a,l=n;if(i-=o,i=Math.max(0,i),l){for(var u=0;o>u;u++)l.words[u]=this.words[u];l.length=o}if(0===o);else if(this.length>o){this.length-=o;for(var u=0;u<this.length;u++)this.words[u]=this.words[u+o]}else this.words[0]=0,this.length=1;for(var c=0,u=this.length-1;u>=0&&(0!==c||u>=i);u--){var f=this.words[u];this.words[u]=c<<26-a|f>>>a,c=f&s}return l&&0!==c&&(l.words[l.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip(),this},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.testn=function(t){r(\"number\"==typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<<e;if(this.length<=n)return!1;var a=this.words[n];return!!(a&i)},i.prototype.imaskn=function(t){r(\"number\"==typeof t&&t>=0);var e=t%26,n=(t-e)/26;if(r(!this.sign,\"imaskn works only with positive numbers\"),0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<<e;this.words[this.length-1]&=i}return this.strip()},i.prototype.maskn=function(t){return this.clone().imaskn(t)},i.prototype.iaddn=function(t){return r(\"number\"==typeof t),0>t?this.isubn(-t):this.sign?1===this.length&&this.words[0]<t?(this.words[0]=t-this.words[0],this.sign=!1,this):(this.sign=!1,this.isubn(t),this.sign=!0,this):this._iaddn(t)},i.prototype._iaddn=function(t){this.words[0]+=t;for(var e=0;e<this.length&&this.words[e]>=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},i.prototype.isubn=function(t){if(r(\"number\"==typeof t),0>t)return this.iaddn(-t);if(this.sign)return this.sign=!1,this.iaddn(t),this.sign=!0,this;this.words[0]-=t;for(var e=0;e<this.length&&this.words[e]<0;e++)this.words[e]+=67108864,this.words[e+1]-=1;return this.strip()},i.prototype.addn=function(t){return this.clone().iaddn(t)},i.prototype.subn=function(t){return this.clone().isubn(t)},i.prototype.iabs=function(){return this.sign=!1,this},i.prototype.abs=function(){return this.clone().iabs()},i.prototype._ishlnsubmul=function(t,e,n){var i,a=t.length+n;if(this.words.length<a){for(var o=new Array(a),i=0;i<this.length;i++)o[i]=this.words[i];this.words=o}else i=this.length;for(this.length=Math.max(this.length,a);i<this.length;i++)this.words[i]=0;for(var s=0,i=0;i<t.length;i++){var l=this.words[i+n]+s,u=t.words[i]*e;l-=67108863&u,s=(l>>26)-(u/67108864|0),this.words[i+n]=67108863&l}for(;i<this.length-n;i++){var l=this.words[i+n]+s;s=l>>26,this.words[i+n]=67108863&l}if(0===s)return this.strip();r(-1===s),s=0;for(var i=0;i<this.length;i++){var l=-this.words[i]+s;s=l>>26,this.words[i]=67108863&l}return this.sign=!0,this.strip()},i.prototype._wordDiv=function(t,e){var r=this.length-t.length,n=this.clone(),a=t,o=a.words[a.length-1],s=this._countBits(o);r=26-s,0!==r&&(a=a.shln(r),n.ishln(r),o=a.words[a.length-1]);var l,u=n.length-a.length;if(\"mod\"!==e){l=new i(null),l.length=u+1,l.words=new Array(l.length);for(var c=0;c<l.length;c++)l.words[c]=0}var f=n.clone()._ishlnsubmul(a,1,u);f.sign||(n=f,l&&(l.words[u]=1));for(var h=u-1;h>=0;h--){var d=67108864*n.words[a.length+h]+n.words[a.length+h-1];for(d=Math.min(d/o|0,67108863),n._ishlnsubmul(a,d,h);n.sign;)d--,n.sign=!1,n._ishlnsubmul(a,1,h),0!==n.cmpn(0)&&(n.sign=!n.sign);l&&(l.words[h]=d)}return l&&l.strip(),n.strip(),\"div\"!==e&&0!==r&&n.ishrn(r),{div:l?l:null,mod:n}},i.prototype.divmod=function(t,e){if(r(0!==t.cmpn(0)),this.sign&&!t.sign){var n,a,o=this.neg().divmod(t,e);return\"mod\"!==e&&(n=o.div.neg()),\"div\"!==e&&(a=0===o.mod.cmpn(0)?o.mod:t.sub(o.mod)),{div:n,mod:a}}if(!this.sign&&t.sign){var n,o=this.divmod(t.neg(),e);return\"mod\"!==e&&(n=o.div.neg()),{div:n,mod:o.mod}}return this.sign&&t.sign?this.neg().divmod(t.neg(),e):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?\"div\"===e?{div:this.divn(t.words[0]),mod:null}:\"mod\"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e)},i.prototype.div=function(t){return this.divmod(t,\"div\").div},i.prototype.mod=function(t){return this.divmod(t,\"mod\").mod},i.prototype.divRound=function(t){var e=this.divmod(t);if(0===e.mod.cmpn(0))return e.div;var r=e.div.sign?e.mod.isub(t):e.mod,n=t.shrn(1),i=t.andln(1),a=r.cmp(n);return 0>a||1===i&&0===a?e.div:e.div.sign?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){r(67108863>=t);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+this.words[i])%t;return n},i.prototype.idivn=function(t){r(67108863>=t);for(var e=0,n=this.length-1;n>=0;n--){var i=this.words[n]+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){r(!t.sign),r(0!==t.cmpn(0));var e=this,n=t.clone();e=e.sign?e.mod(t):e.clone();for(var a=new i(1),o=new i(0),s=new i(0),l=new i(1),u=0;e.isEven()&&n.isEven();)e.ishrn(1),n.ishrn(1),++u;for(var c=n.clone(),f=e.clone();0!==e.cmpn(0);){for(;e.isEven();)e.ishrn(1),a.isEven()&&o.isEven()?(a.ishrn(1),o.ishrn(1)):(a.iadd(c).ishrn(1),o.isub(f).ishrn(1));for(;n.isEven();)n.ishrn(1),s.isEven()&&l.isEven()?(s.ishrn(1),l.ishrn(1)):(s.iadd(c).ishrn(1),l.isub(f).ishrn(1));e.cmp(n)>=0?(e.isub(n),a.isub(s),o.isub(l)):(n.isub(e),s.isub(a),l.isub(o))}return{a:s,b:l,gcd:n.ishln(u)}},i.prototype._invmp=function(t){r(!t.sign),r(0!==t.cmpn(0));var e=this,n=t.clone();e=e.sign?e.mod(t):e.clone();for(var a=new i(1),o=new i(0),s=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(;e.isEven();)e.ishrn(1),a.isEven()?a.ishrn(1):a.iadd(s).ishrn(1);for(;n.isEven();)n.ishrn(1),o.isEven()?o.ishrn(1):o.iadd(s).ishrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(o)):(n.isub(e),o.isub(a))}return 0===e.cmpn(1)?a:o},i.prototype.gcd=function(t){if(0===this.cmpn(0))return t.clone();if(0===t.cmpn(0))return this.clone();var e=this.clone(),r=t.clone();e.sign=!1,r.sign=!1;for(var n=0;e.isEven()&&r.isEven();n++)e.ishrn(1),r.ishrn(1);for(;;){for(;e.isEven();)e.ishrn(1);for(;r.isEven();)r.ishrn(1);var i=e.cmp(r);if(0>i){var a=e;e=r,r=a}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.ishln(n)},i.prototype.invm=function(t){return this.egcd(t).a.mod(t)},i.prototype.isEven=function(){return 0===(1&this.words[0])},i.prototype.isOdd=function(){return 1===(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){r(\"number\"==typeof t);var e=t%26,n=(t-e)/26,i=1<<e;if(this.length<=n){for(var a=this.length;n+1>a;a++)this.words[a]=0;return this.words[n]|=i,this.length=n+1,this}for(var o=i,a=n;0!==o&&a<this.length;a++){var s=this.words[a];s+=o,o=s>>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},i.prototype.cmpn=function(t){var e=0>t;if(e&&(t=-t),this.sign&&!e)return-1;if(!this.sign&&e)return 1;t&=67108863,this.strip();var r;if(this.length>1)r=1;else{var n=this.words[0];r=n===t?0:t>n?-1:1}return this.sign&&(r=-r),r},i.prototype.cmp=function(t){if(this.sign&&!t.sign)return-1;if(!this.sign&&t.sign)return 1;var e=this.ucmp(t);return this.sign?-e:e},i.prototype.ucmp=function(t){if(this.length>t.length)return 1;if(this.length<t.length)return-1;for(var e=0,r=this.length-1;r>=0;r--){var n=this.words[r],i=t.words[r];if(n!==i){i>n?e=-1:n>i&&(e=1);break}}return e},i.red=function(t){return new h(t)},i.prototype.toRed=function(t){return r(!this.red,\"Already a number in reduction context\"),r(!this.sign,\"red works only with positives\"),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return r(this.red,\"fromRed works only with numbers in reduction context\"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return r(!this.red,\"Already a number in reduction context\"),this._forceRed(t)},i.prototype.redAdd=function(t){return r(this.red,\"redAdd works only with red numbers\"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return r(this.red,\"redIAdd works only with red numbers\"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return r(this.red,\"redSub works only with red numbers\"),this.red.sub(this,t)},i.prototype.redISub=function(t){return r(this.red,\"redISub works only with red numbers\"),this.red.isub(this,t)\n",
"},i.prototype.redShl=function(t){return r(this.red,\"redShl works only with red numbers\"),this.red.shl(this,t)},i.prototype.redMul=function(t){return r(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return r(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.imul(this,t)},i.prototype.redSqr=function(){return r(this.red,\"redSqr works only with red numbers\"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return r(this.red,\"redISqr works only with red numbers\"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return r(this.red,\"redSqrt works only with red numbers\"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return r(this.red,\"redInvm works only with red numbers\"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return r(this.red,\"redNeg works only with red numbers\"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(t){return r(this.red&&!t.red,\"redPow(normalNum)\"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};s.prototype._tmp=function(){var t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},s.prototype.ireduce=function(t){var e,r=t;do this.split(r,this.tmp),r=this.imulK(r),r=r.iadd(this.tmp),e=r.bitLength();while(e>this.n);var n=e<this.n?-1:r.ucmp(this.p);return 0===n?(r.words[0]=0,r.length=1):n>0?r.isub(this.p):r.strip(),r},s.prototype.split=function(t,e){t.ishrn(this.n,0,e)},s.prototype.imulK=function(t){return t.imul(this.k)},n(l,s),l.prototype.split=function(t,e){for(var r=4194303,n=Math.min(t.length,9),i=0;n>i;i++)e.words[i]=t.words[i];if(e.length=n,t.length<=9)return t.words[0]=0,void(t.length=1);var a=t.words[9];e.words[e.length++]=a&r;for(var i=10;i<t.length;i++){var o=t.words[i];t.words[i-10]=(o&r)<<4|a>>>22,a=o}t.words[i-10]=a>>>22,t.length-=9},l.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e,r=0,n=0;n<t.length;n++){var i=t.words[n];e=64*i,r+=977*i,e+=r/67108864|0,r&=67108863,t.words[n]=r,r=e}return 0===t.words[t.length-1]&&(t.length--,0===t.words[t.length-1]&&t.length--),t},n(u,s),n(c,s),n(f,s),f.prototype.imulK=function(t){for(var e=0,r=0;r<t.length;r++){var n=19*t.words[r]+e,i=67108863&n;n>>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function t(e){if(m[e])return m[e];var t;if(\"k256\"===e)t=new l;else if(\"p224\"===e)t=new u;else if(\"p192\"===e)t=new c;else{if(\"p25519\"!==e)throw new Error(\"Unknown prime \"+e);t=new f}return m[e]=t,t},h.prototype._verify1=function(t){r(!t.sign,\"red works only with positives\"),r(t.red,\"red works only with red numbers\")},h.prototype._verify2=function(t,e){r(!t.sign&&!e.sign,\"red works only with positives\"),r(t.red&&t.red===e.red,\"red works only with red numbers\")},h.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.mod(this.m)._forceRed(this)},h.prototype.neg=function(t){var e=t.clone();return e.sign=!e.sign,e.iadd(this.m)._forceRed(this)},h.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},h.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},h.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},h.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},h.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.shln(e))},h.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},h.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},h.prototype.isqr=function(t){return this.imul(t,t)},h.prototype.sqr=function(t){return this.mul(t,t)},h.prototype.sqrt=function(t){if(0===t.cmpn(0))return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new i(1)).ishrn(2),a=this.pow(t,n);return a}for(var o=this.m.subn(1),s=0;0!==o.cmpn(0)&&0===o.andln(1);)s++,o.ishrn(1);r(0!==o.cmpn(0));var l=new i(1).toRed(this),u=l.redNeg(),c=this.m.subn(1).ishrn(1),f=this.m.bitLength();for(f=new i(2*f*f).toRed(this);0!==this.pow(f,c).cmp(u);)f.redIAdd(u);for(var h=this.pow(f,o),a=this.pow(t,o.addn(1).ishrn(1)),d=this.pow(t,o),p=s;0!==d.cmp(l);){for(var g=d,v=0;0!==g.cmp(l);v++)g=g.redSqr();r(p>v);var m=this.pow(h,new i(1).ishln(p-v-1));a=a.redMul(m),h=m.redSqr(),d=d.redMul(h),p=v}return a},h.prototype.invm=function(t){var e=t._invmp(this.m);return e.sign?(e.sign=!1,this.imod(e).redNeg()):this.imod(e)},h.prototype.pow=function(t,e){var r=[];if(0===e.cmpn(0))return new i(1);for(var n=e.clone();0!==n.cmpn(0);)r.push(n.andln(1)),n.ishrn(1);for(var a=t,o=0;o<r.length&&0===r[o];o++,a=this.sqr(a));if(++o<r.length)for(var n=this.sqr(a);o<r.length;o++,n=this.sqr(n))0!==r[o]&&(a=this.mul(a,n));return a},h.prototype.convertTo=function(t){var e=t.mod(this.m);return e===t?e.clone():e},h.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new d(t)},n(d,h),d.prototype.convertTo=function(t){return this.imod(t.shln(this.shift))},d.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},d.prototype.imul=function(t,e){if(0===t.cmpn(0)||0===e.cmpn(0))return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).ishrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},d.prototype.mul=function(t,e){if(0===t.cmpn(0)||0===e.cmpn(0))return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).ishrn(this.shift),o=a;return a.cmp(this.m)>=0?o=a.isub(this.m):a.cmpn(0)<0&&(o=a.iadd(this.m)),o._forceRed(this)},d.prototype.invm=function(t){var e=this.imod(t._invmp(this.m).mul(this.r2));return e._forceRed(this)}}(\"undefined\"==typeof e||e,this)},{}],263:[function(t,e){(function(t){function r(t,e){return d[0]=t,d[1]=e,h[0]}function n(t){return h[0]=t,d[0]}function i(t){return h[0]=t,d[1]}function a(t,e){return d[1]=t,d[0]=e,h[0]}function o(t){return h[0]=t,d[1]}function s(t){return h[0]=t,d[0]}function l(t,e){return p.writeUInt32LE(t,0,!0),p.writeUInt32LE(e,4,!0),p.readDoubleLE(0,!0)}function u(t){return p.writeDoubleLE(t,0,!0),p.readUInt32LE(0,!0)}function c(t){return p.writeDoubleLE(t,0,!0),p.readUInt32LE(4,!0)}var f=!1;if(\"undefined\"!=typeof Float64Array){var h=new Float64Array(1),d=new Uint32Array(h.buffer);h[0]=1,f=!0,1072693248===d[1]?(e.exports=function(t){return h[0]=t,[d[0],d[1]]},e.exports.pack=r,e.exports.lo=n,e.exports.hi=i):1072693248===d[0]?(e.exports=function(t){return h[0]=t,[d[1],d[0]]},e.exports.pack=a,e.exports.lo=o,e.exports.hi=s):f=!1}if(!f){var p=new t(8);e.exports=function(t){return p.writeDoubleLE(t,0,!0),[p.readUInt32LE(0,!0),p.readUInt32LE(4,!0)]},e.exports.pack=l,e.exports.lo=u,e.exports.hi=c}e.exports.sign=function(t){return e.exports.hi(t)>>>31},e.exports.exponent=function(t){var r=e.exports.hi(t);return(r<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),i=1048575&n;return 2146435072&n&&(i+=1<<20),[r,i]},e.exports.denormalized=function(t){var r=e.exports.hi(t);return!(2146435072&r)}}).call(this,t(\"buffer\").Buffer)},{buffer:1}],264:[function(t,e){\"use strict\";function r(t){return n(t[0])*n(t[1])}var n=t(\"./lib/bn-sign\");e.exports=r},{\"./lib/bn-sign\":254}],265:[function(t,e){\"use strict\";function r(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}var n=t(\"./lib/rationalize\");e.exports=r},{\"./lib/rationalize\":259}],266:[function(t,e){\"use strict\";function r(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var a=e.divmod(r),o=a.div,s=n(o),l=a.mod;if(0===l.cmpn(0))return s;if(s){var u=i(s)+4,c=n(l.shln(u).divRound(r));return 0>s&&(c=-c),s+c*Math.pow(2,-u)}var f=r.bitLength()-l.bitLength()+53,c=n(l.shln(f).divRound(r));return 1023>f?c*Math.pow(2,-f):(c*=Math.pow(2,-1023),c*Math.pow(2,1023-f))}var n=t(\"./lib/bn-to-num\"),i=t(\"./lib/ctz\");e.exports=r},{\"./lib/bn-to-num\":255,\"./lib/ctz\":256}],267:[function(t,e){\"use strict\";function r(t,e){for(var r=0;t>r;++r)if(!(e[r]<=e[r+t]))return!0;return!1}function n(t,e,n,i){for(var a=0,o=0,s=0,l=t.length;l>s;++s){var u=t[s];if(!r(e,u)){for(var c=0;2*e>c;++c)n[a++]=u[c];i[o++]=s}}return o}function i(t,e,r,i){var a=t.length,o=e.length;if(!(0>=a||0>=o)){var s=t[0].length>>>1;if(!(0>=s)){var l,u=c.mallocDouble(2*s*a),d=c.mallocInt32(a);if(a=n(t,s,u,d),a>0){if(1===s&&i)f.init(a),l=f.sweepComplete(s,r,0,a,u,d,0,a,u,d);else{var p=c.mallocDouble(2*s*o),g=c.mallocInt32(o);o=n(e,s,p,g),o>0&&(f.init(a+o),l=1===s?f.sweepBipartite(s,r,0,a,u,d,0,o,p,g):h(s,r,i,a,u,d,o,p,g),c.free(p),c.free(g))}c.free(u),c.free(d)}return l}}}function a(t,e){u.push([t,e])}function o(t){return u=[],i(t,t,a,!0),u}function s(t,e){return u=[],i(t,e,a,!1),u}function l(t,e,r){switch(arguments.length){case 1:return o(t);case 2:return\"function\"==typeof e?i(t,t,e,!0):s(t,e);case 3:return i(t,e,r,!1);default:throw new Error(\"box-intersect: Invalid arguments\")}}e.exports=l;var u,c=t(\"typedarray-pool\"),f=t(\"./lib/sweep\"),h=t(\"./lib/intersect\")},{\"./lib/intersect\":269,\"./lib/sweep\":273,\"typedarray-pool\":274}],268:[function(t,e,r){\"use strict\";function n(t,e,r){var n=\"bruteForce\"+(t?\"Red\":\"Blue\")+(e?\"Flip\":\"\")+(r?\"Full\":\"\"),i=[\"function \",n,\"(\",w.join(),\"){\",\"var \",u,\"=2*\",a,\";\"],l=\"for(var i=\"+c+\",\"+p+\"=\"+u+\"*\"+c+\";i<\"+f+\";++i,\"+p+\"+=\"+u+\"){var x0=\"+h+\"[\"+o+\"+\"+p+\"],x1=\"+h+\"[\"+o+\"+\"+p+\"+\"+a+\"],xi=\"+d+\"[i];\",k=\"for(var j=\"+g+\",\"+b+\"=\"+u+\"*\"+g+\";j<\"+v+\";++j,\"+b+\"+=\"+u+\"){var y0=\"+m+\"[\"+o+\"+\"+b+\"],\"+(r?\"y1=\"+m+\"[\"+o+\"+\"+b+\"+\"+a+\"],\":\"\")+\"yi=\"+y+\"[j];\";return t?i.push(l,_,\":\",k):i.push(k,_,\":\",l),i.push(r?\"if(y1<x0||x1<y0)continue;\":e?\"if(y0<=x0||x1<y0)continue;\":\"if(y0<x0||x1<y0)continue;\"),i.push(\"for(var k=\"+o+\"+1;k<\"+a+\";++k){var r0=\"+h+\"[k+\"+p+\"],r1=\"+h+\"[k+\"+a+\"+\"+p+\"],b0=\"+m+\"[k+\"+b+\"],b1=\"+m+\"[k+\"+a+\"+\"+b+\"];if(r1<b0||b1<r0)continue \"+_+\";}var \"+x+\"=\"+s+\"(\"),i.push(e?\"yi,xi\":\"xi,yi\"),i.push(\");if(\"+x+\"!==void 0)return \"+x+\";}}}\"),{name:n,code:i.join(\"\")}}function i(t){function e(e,r){var a=n(e,r,t);i.push(a.code),o.push(\"return \"+a.name+\"(\"+w.join()+\");\")}var r=\"bruteForce\"+(t?\"Full\":\"Partial\"),i=[],a=w.slice();t||a.splice(3,0,l);var o=[\"function \"+r+\"(\"+a.join()+\"){\"];o.push(\"if(\"+f+\"-\"+c+\">\"+v+\"-\"+g+\"){\"),t?(e(!0,!1),o.push(\"}else{\"),e(!1,!1)):(o.push(\"if(\"+l+\"){\"),e(!0,!0),o.push(\"}else{\"),e(!0,!1),o.push(\"}}else{if(\"+l+\"){\"),e(!1,!0),o.push(\"}else{\"),e(!1,!1),o.push(\"}\")),o.push(\"}}return \"+r);var s=i.join(\"\")+o.join(\"\"),u=new Function(s);return u()}var a=\"d\",o=\"ax\",s=\"vv\",l=\"fp\",u=\"es\",c=\"rs\",f=\"re\",h=\"rb\",d=\"ri\",p=\"rp\",g=\"bs\",v=\"be\",m=\"bb\",y=\"bi\",b=\"bp\",x=\"rv\",_=\"Q\",w=[a,o,s,c,f,h,d,g,v,m,y];r.partial=i(!1),r.full=i(!0)},{}],269:[function(t,e){\"use strict\";function r(t,e){var r=8*l.log2(e+1)*(t+1)|0,n=l.nextPow2(A*r);E.length<n&&(s.free(E),E=s.mallocInt32(n));var i=l.nextPow2(M*r);i>C&&(s.free(C),C=s.mallocDouble(i))}function n(t,e,r,n,i,a,o,s,l){var u=A*t;E[u]=e,E[u+1]=r,E[u+2]=n,E[u+3]=i,E[u+4]=a,E[u+5]=o;var c=M*t;C[c]=s,C[c+1]=l}function i(t,e,r,n,i,a,o,s,l,u,c){var f=2*t,h=l*f,d=u[h+e];t:for(var p=i,g=i*f;a>p;++p,g+=f){var v=o[g+e],m=o[g+e+t];if(!(v>d||d>m||n&&d===v)){for(var y=s[p],b=e+1;t>b;++b){var v=o[g+b],m=o[g+b+t],x=u[h+b],_=u[h+b+t];if(x>m||v>_)continue t}var w;if(w=n?r(c,y):r(y,c),void 0!==w)return w}}}function a(t,e,r,n,i,a,o,s,l,u){var c=2*t,f=s*c,h=l[f+e];t:for(var d=n,p=n*c;i>d;++d,p+=c){var g=o[d];if(g!==u){var v=a[p+e],m=a[p+e+t];if(!(v>h||h>m)){for(var y=e+1;t>y;++y){var v=a[p+y],m=a[p+y+t],b=l[f+y],x=l[f+y+t];if(b>m||v>x)continue t}var _=r(g,u);if(void 0!==_)return _}}}}function o(t,e,o,s,l,u,p,L,j){r(t,s+p);var S,T=0,z=2*t;for(n(T++,0,0,s,0,p,o?16:0,-1/0,1/0),o||n(T++,0,0,p,0,s,1,-1/0,1/0);T>0;){T-=1;var P=T*A,I=E[P],O=E[P+1],D=E[P+2],R=E[P+3],N=E[P+4],B=E[P+5],F=T*M,U=C[F],V=C[F+1],H=1&B,q=!!(16&B),G=l,Y=u,W=L,X=j;if(H&&(G=L,Y=j,W=l,X=u),!(2&B&&(D=x(t,I,O,D,G,Y,V),O>=D)||4&B&&(O=_(t,I,O,D,G,Y,U),O>=D))){var Z=D-O,$=N-R;if(q){if(m>t*Z*(Z+$)){if(S=h.scanComplete(t,I,e,O,D,G,Y,R,N,W,X),void 0!==S)return S;continue}}else{if(t*Math.min(Z,$)<g){if(S=c(t,I,e,H,O,D,G,Y,R,N,W,X),void 0!==S)return S;continue}if(v>t*Z*$){if(S=h.scanBipartite(t,I,e,H,O,D,G,Y,R,N,W,X),void 0!==S)return S;continue}}var K=y(t,I,O,D,G,Y,U,V);if(K>O)if(g>t*(K-O)){if(S=f(t,I+1,e,O,K,G,Y,R,N,W,X),void 0!==S)return S}else if(I===t-2){if(S=H?h.sweepBipartite(t,e,R,N,W,X,O,K,G,Y):h.sweepBipartite(t,e,O,K,G,Y,R,N,W,X),void 0!==S)return S}else n(T++,I+1,O,K,R,N,H,-1/0,1/0),n(T++,I+1,R,N,O,K,1^H,-1/0,1/0);if(D>K){var J=d(t,I,R,N,W,X),Q=W[z*J+I],te=b(t,I,J,N,W,X,Q);if(N>te&&n(T++,I,K,D,te,N,(4|H)+(q?16:0),Q,V),J>R&&n(T++,I,K,D,R,J,(2|H)+(q?16:0),U,Q),J+1===te){if(S=q?a(t,I,e,K,D,G,Y,J,W,X[J]):i(t,I,e,H,K,D,G,Y,J,W,X[J]),void 0!==S)return S}else if(te>J){var ee;if(q){if(ee=w(t,I,K,D,G,Y,Q),ee>K){var re=b(t,I,K,ee,G,Y,Q);if(I===t-2){if(re>K&&(S=h.sweepComplete(t,e,K,re,G,Y,J,te,W,X),void 0!==S))return S;if(ee>re&&(S=h.sweepBipartite(t,e,re,ee,G,Y,J,te,W,X),void 0!==S))return S}else re>K&&n(T++,I+1,K,re,J,te,16,-1/0,1/0),ee>re&&(n(T++,I+1,re,ee,J,te,0,-1/0,1/0),n(T++,I+1,J,te,re,ee,1,-1/0,1/0))}}else ee=H?k(t,I,K,D,G,Y,Q):w(t,I,K,D,G,Y,Q),ee>K&&(I===t-2?S=H?h.sweepBipartite(t,e,J,te,W,X,K,ee,G,Y):h.sweepBipartite(t,e,K,ee,G,Y,J,te,W,X):(n(T++,I+1,K,ee,J,te,H,-1/0,1/0),n(T++,I+1,J,te,K,ee,1^H,-1/0,1/0)))}}}}}e.exports=o;var s=t(\"typedarray-pool\"),l=t(\"bit-twiddle\"),u=t(\"./brute\"),c=u.partial,f=u.full,h=t(\"./sweep\"),d=t(\"./median\"),p=t(\"./partition\"),g=128,v=1<<22,m=1<<22,y=p(\"!(lo>=p0)&&!(p1>=hi)\",[\"p0\",\"p1\"]),b=p(\"lo===p0\",[\"p0\"]),x=p(\"lo<p0\",[\"p0\"]),_=p(\"hi<=p0\",[\"p0\"]),w=p(\"lo<=p0&&p0<=hi\",[\"p0\"]),k=p(\"lo<p0&&p0<=hi\",[\"p0\"]),A=6,M=2,L=1024,E=s.mallocInt32(L),C=s.mallocDouble(L)},{\"./brute\":268,\"./median\":270,\"./partition\":271,\"./sweep\":273,\"bit-twiddle\":213,\"typedarray-pool\":274}],270:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){for(var o=2*t,s=o*(r+1)+e,l=r+1;n>l;++l,s+=o)for(var u=i[s],c=l,f=o*(l-1);c>r&&i[f+e]>u;--c,f-=o){for(var h=f,d=f+o,p=0;o>p;++p,++h,++d){var g=i[h];i[h]=i[d],i[d]=g}var v=a[c];a[c]=a[c-1],a[c-1]=v}}function n(t,e,n,i,s,l){if(n+1>=i)return n;for(var u=n,c=i,f=i+n>>>1,h=2*t,d=f,p=s[h*f+e];c>u;){if(o>c-u){r(t,e,u,c,s,l),p=s[h*f+e];break}var g=c-u,v=Math.random()*g+u|0,m=s[h*v+e],y=Math.random()*g+u|0,b=s[h*y+e],x=Math.random()*g+u|0,_=s[h*x+e];b>=m?_>=b?(d=y,p=b):m>=_?(d=v,p=m):(d=x,p=_):b>=_?(d=y,p=b):_>=m?(d=v,p=m):(d=x,p=_);for(var w=h*(c-1),k=h*d,A=0;h>A;++A,++w,++k){var M=s[w];s[w]=s[k],s[k]=M}var L=l[c-1];l[c-1]=l[d],l[d]=L,d=a(t,e,u,c-1,s,l,p);for(var w=h*(c-1),k=h*d,A=0;h>A;++A,++w,++k){var M=s[w];s[w]=s[k],s[k]=M}var L=l[c-1];if(l[c-1]=l[d],l[d]=L,d>f){for(c=d-1;c>u&&s[h*(c-1)+e]===p;)c-=1;c+=1}else{if(!(f>d))break;for(u=d+1;c>u&&s[h*u+e]===p;)u+=1}}return a(t,e,n,f,s,l,s[h*f+e])}e.exports=n;var i=t(\"./partition\"),a=i(\"lo<p0\",[\"p0\"]),o=8},{\"./partition\":271}],271:[function(t,e){\"use strict\";function r(t,e){var r=\"abcdef\".split(\"\").concat(e),i=[];return t.indexOf(\"lo\")>=0&&i.push(\"lo=e[k+n]\"),t.indexOf(\"hi\")>=0&&i.push(\"hi=e[k+o]\"),r.push(n.replace(\"_\",i.join()).replace(\"$\",t)),Function.apply(void 0,r)}e.exports=r;var n=\"for(var j=2*a,k=j*c,l=k,m=c,n=b,o=a+b,p=c;d>p;++p,k+=j){var _;if($)if(m===p)m+=1,l+=j;else{for(var s=0;j>s;++s){var t=e[k+s];e[k+s]=e[l],e[l++]=t}var u=f[p];f[p]=f[m],f[m++]=u}}return m\"},{}],272:[function(t,e){\"use strict\";function r(t,e){4*f>=e?n(0,e-1,t):c(0,e-1,t)}function n(t,e,r){for(var n=2*(t+1),i=t+1;e>=i;++i){for(var a=r[n++],o=r[n++],s=i,l=n-2;s-->t;){var u=r[l-2],c=r[l-1];if(a>u)break;if(u===a&&o>c)break;r[l]=u,r[l+1]=c,l-=2}r[l]=a,r[l+1]=o}}function i(t,e,r){t*=2,e*=2;var n=r[t],i=r[t+1];r[t]=r[e],r[t+1]=r[e+1],r[e]=n,r[e+1]=i}function a(t,e,r){t*=2,e*=2,r[t]=r[e],r[t+1]=r[e+1]}function o(t,e,r,n){t*=2,e*=2,r*=2;var i=n[t],a=n[t+1];n[t]=n[e],n[t+1]=n[e+1],n[e]=n[r],n[e+1]=n[r+1],n[r]=i,n[r+1]=a}function s(t,e,r,n,i){t*=2,e*=2,i[t]=i[e],i[e]=r,i[t+1]=i[e+1],i[e+1]=n}function l(t,e,r){t*=2,e*=2;var n=r[t],i=r[e];return i>n?!1:n===i?r[t+1]>r[e+1]:!0}function u(t,e,r,n){t*=2;var i=n[t];return e>i?!0:i===e?n[t+1]<r:!1}function c(t,e,r){var h=(e-t+1)/6|0,d=t+h,p=e-h,g=t+e>>1,v=g-h,m=g+h,y=d,b=v,x=g,_=m,w=p,k=t+1,A=e-1,M=0;l(y,b,r)&&(M=y,y=b,b=M),l(_,w,r)&&(M=_,_=w,w=M),l(y,x,r)&&(M=y,y=x,x=M),l(b,x,r)&&(M=b,b=x,x=M),l(y,_,r)&&(M=y,y=_,_=M),l(x,_,r)&&(M=x,x=_,_=M),l(b,w,r)&&(M=b,b=w,w=M),l(b,x,r)&&(M=b,b=x,x=M),l(_,w,r)&&(M=_,_=w,w=M);for(var L=r[2*b],E=r[2*b+1],C=r[2*_],j=r[2*_+1],S=2*y,T=2*x,z=2*w,P=2*d,I=2*g,O=2*p,D=0;2>D;++D){var R=r[S+D],N=r[T+D],B=r[z+D];r[P+D]=R,r[I+D]=N,r[O+D]=B}a(v,t,r),a(m,e,r);for(var F=k;A>=F;++F)if(u(F,L,E,r))F!==k&&i(F,k,r),++k;else if(!u(F,C,j,r))for(;;){if(u(A,C,j,r)){u(A,L,E,r)?(o(F,k,A,r),++k,--A):(i(F,A,r),--A);break}if(--A<F)break}s(t,k-1,L,E,r),s(e,A+1,C,j,r),f>=k-2-t?n(t,k-2,r):c(t,k-2,r),f>=e-(A+2)?n(A+2,e,r):c(A+2,e,r),f>=A-k?n(k,A,r):c(k,A,r)}e.exports=r;var f=32},{}],273:[function(t,e){\"use strict\";function r(t){var e=c.nextPow2(t);p.length<e&&(u.free(p),p=u.mallocInt32(e)),g.length<e&&(u.free(g),g=u.mallocInt32(e)),v.length<e&&(u.free(v),v=u.mallocInt32(e)),m.length<e&&(u.free(m),m=u.mallocInt32(e)),y.length<e&&(u.free(y),y=u.mallocInt32(e)),b.length<e&&(u.free(b),b=u.mallocInt32(e));var r=8*e;x.length<r&&(u.free(x),x=u.mallocDouble(r))}function n(t,e,r,n){var i=e[n],a=t[r-1];t[i]=a,e[a]=i}function i(t,e,r,n){t[r]=n,e[n]=r}function a(t,e,r,a,o,s,l,u,c,d){for(var y=0,b=2*t,_=t-1,w=b-1,k=r;a>k;++k){var A=s[k],M=b*k;x[y++]=o[M+_],x[y++]=-(A+1),x[y++]=o[M+w],x[y++]=A}for(var k=l;u>k;++k){var A=d[k]+h,L=b*k;x[y++]=c[L+_],x[y++]=-A,x[y++]=c[L+w],x[y++]=A}var E=y>>>1;f(x,E);for(var C=0,j=0,k=0;E>k;++k){var S=0|x[2*k+1];if(S>=h)S=S-h|0,n(v,m,j--,S);else if(S>=0)n(p,g,C--,S);else if(-h>=S){S=-S-h|0;for(var T=0;C>T;++T){var z=e(p[T],S);if(void 0!==z)return z}i(v,m,j++,S)}else{S=-S-1|0;for(var T=0;j>T;++T){var z=e(S,v[T]);if(void 0!==z)return z}i(p,g,C++,S)}}}function o(t,e,r,a,o,s,l,u,c,h){for(var d=0,_=2*t,w=t-1,k=_-1,A=r;a>A;++A){var M=s[A]+1<<1,L=_*A;x[d++]=o[L+w],x[d++]=-M,x[d++]=o[L+k],x[d++]=M}for(var A=l;u>A;++A){var M=h[A]+1<<1,E=_*A;x[d++]=c[E+w],x[d++]=1|-M,x[d++]=c[E+k],x[d++]=1|M}var C=d>>>1;f(x,C);for(var j=0,S=0,T=0,A=0;C>A;++A){var z=0|x[2*A+1],P=1&z;if(C-1>A&&z>>1===x[2*A+3]>>1&&(P=2,A+=1),0>z){for(var I=-(z>>1)-1,O=0;T>O;++O){var D=e(y[O],I);if(void 0!==D)return D}if(0!==P)for(var O=0;j>O;++O){var D=e(p[O],I);if(void 0!==D)return D}if(1!==P)for(var O=0;S>O;++O){var D=e(v[O],I);if(void 0!==D)return D}0===P?i(p,g,j++,I):1===P?i(v,m,S++,I):2===P&&i(y,b,T++,I)}else{var I=(z>>1)-1;0===P?n(p,g,j--,I):1===P?n(v,m,S--,I):2===P&&n(y,b,T--,I)}}}function s(t,e,r,a,o,s,l,u,c,d,v,m){var y=0,b=2*t,_=e,w=e+t,k=1,A=1;a?A=h:k=h;for(var M=o;s>M;++M){var L=M+k,E=b*M;x[y++]=l[E+_],x[y++]=-L,x[y++]=l[E+w],x[y++]=L}for(var M=c;d>M;++M){var L=M+A,C=b*M;x[y++]=v[C+_],x[y++]=-L}var j=y>>>1;f(x,j);for(var S=0,M=0;j>M;++M){var T=0|x[2*M+1];if(0>T){var L=-T,z=!1;if(L>=h?(z=!a,L-=h):(z=!!a,L-=1),z)i(p,g,S++,L);else{var P=m[L],I=b*L,O=v[I+e+1],D=v[I+e+1+t];t:for(var R=0;S>R;++R){var N=p[R],B=b*N;if(!(D<l[B+e+1]||l[B+e+1+t]<O)){for(var F=e+2;t>F;++F)if(v[I+F+t]<l[B+F]||l[B+F+t]<v[I+F])continue t;var U,V=u[N];if(U=a?r(P,V):r(V,P),void 0!==U)return U}}}}else n(p,g,S--,T-k)}}function l(t,e,r,n,i,a,o,s,l,u,c){for(var d=0,g=2*t,v=e,m=e+t,y=n;i>y;++y){var b=y+h,_=g*y;x[d++]=a[_+v],x[d++]=-b,x[d++]=a[_+m],x[d++]=b}for(var y=s;l>y;++y){var b=y+1,w=g*y;x[d++]=u[w+v],x[d++]=-b}var k=d>>>1;f(x,k);for(var A=0,y=0;k>y;++y){var M=0|x[2*y+1];if(0>M){var b=-M;if(b>=h)p[A++]=b-h;else{b-=1;var L=c[b],E=g*b,C=u[E+e+1],j=u[E+e+1+t];t:for(var S=0;A>S;++S){var T=p[S],z=o[T];if(z===L)break;var P=g*T;if(!(j<a[P+e+1]||a[P+e+1+t]<C)){for(var I=e+2;t>I;++I)if(u[E+I+t]<a[P+I]||a[P+I+t]<u[E+I])continue t;var O=r(z,L);if(void 0!==O)return O}}}}else{for(var b=M-h,S=A-1;S>=0;--S)if(p[S]===b){for(var I=S+1;A>I;++I)p[I-1]=p[I];break}--A}}}e.exports={init:r,sweepBipartite:a,sweepComplete:o,scanBipartite:s,scanComplete:l};var u=t(\"typedarray-pool\"),c=t(\"bit-twiddle\"),f=t(\"./sort\"),h=1<<28,d=1024,p=u.mallocInt32(d),g=u.mallocInt32(d),v=u.mallocInt32(d),m=u.mallocInt32(d),y=u.mallocInt32(d),b=u.mallocInt32(d),x=u.mallocDouble(8*d)},{\"./sort\":272,\"bit-twiddle\":213,\"typedarray-pool\":274}],274:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":213,buffer:1,dup:99}],275:[function(t,e,r){arguments[4][50][0].apply(r,arguments)},{dup:50}],276:[function(t,e){\"use strict\";function r(t,e){if(isNaN(t)||isNaN(e))return 0/0;if(t===e)return t;if(0===t)return 0>e?-i:i;var r=n.hi(t),o=n.lo(t);return e>t==t>0?o===a?(r+=1,o=0):o+=1:0===o?(o=a,r-=1):o-=1,n.pack(o,r)}var n=t(\"double-bits\"),i=Math.pow(2,-1074),a=-1>>>0;e.exports=r},{\"double-bits\":277}],277:[function(t,e,r){arguments[4][263][0].apply(r,arguments)},{buffer:1,dup:263}],278:[function(t,e){\"use strict\";function r(t,e){for(var r=t.length,i=new Array(r),a=0;r>a;++a)i[a]=n(t[a],e[a]);return i}var n=t(\"big-rat/add\");e.exports=r},{\"big-rat/add\":249}],279:[function(t,e){\"use strict\";function r(t){for(var e=new Array(t.length),r=0;r<t.length;++r)e[r]=n(t[r]);return e}e.exports=r;var n=t(\"big-rat\")},{\"big-rat\":252}],280:[function(t,e){\"use strict\";function r(t,e){for(var r=n(e),a=t.length,o=new Array(a),s=0;a>s;++s)o[s]=i(t[s],r);return o}var n=t(\"big-rat\"),i=t(\"big-rat/mul\");e.exports=r},{\"big-rat\":252,\"big-rat/mul\":261}],281:[function(t,e){\"use strict\";function r(t,e){for(var r=t.length,i=new Array(r),a=0;r>a;++a)i[a]=n(t[a],e[a]);return i}var n=t(\"big-rat/sub\");e.exports=r},{\"big-rat/sub\":265}],282:[function(t,e){\"use strict\";function r(t,e,r,n){for(var i=0;2>i;++i){var a=t[i],o=e[i],s=Math.min(a,o),l=Math.max(a,o),u=r[i],c=n[i],f=Math.min(u,c),h=Math.max(u,c);if(s>h||f>l)return!1}return!0}function n(t,e,n,a){var o=i(t,n,a),s=i(e,n,a);if(o>0&&s>0||0>o&&0>s)return!1;var l=i(n,t,e),u=i(a,t,e);return l>0&&u>0||0>l&&0>u?!1:0===o&&0===s&&0===l&&0===u?r(t,e,n,a):!0}e.exports=n;var i=t(\"robust-orientation\")[3]},{\"robust-orientation\":228}],283:[function(t,e,r){arguments[4][73][0].apply(r,arguments)},{dup:73}],284:[function(t,e){\"use strict\";function r(t,e){for(var r=n(t,e.length),i=new Array(e.length),a=new Array(e.length),o=[],s=0;s<e.length;++s){var l=r[s].length;a[s]=l,i[s]=!0,1>=l&&o.push(s)}for(;o.length>0;){var u=o.pop();i[u]=!1;for(var c=r[u],s=0;s<c.length;++s){var f=c[s];0===--a[f]&&o.push(f)}}for(var h=new Array(e.length),d=[],s=0;s<e.length;++s)if(i[s]){var u=d.length;h[s]=u,d.push(e[s])}else h[s]=-1;for(var p=[],s=0;s<t.length;++s){var g=t[s];i[g[0]]&&i[g[1]]&&p.push([h[g[0]],h[g[1]]])}return[p,d]}e.exports=r;var n=t(\"edges-to-adjacency-list\")},{\"edges-to-adjacency-list\":285}],285:[function(t,e){\"use strict\";function r(t,e){var r=t.length;if(\"number\"!=typeof e){e=0;for(var i=0;r>i;++i){var a=t[i];e=Math.max(e,a[0],a[1])}e=(0|e)+1}e=0|e;for(var o=new Array(e),i=0;e>i;++i)o[i]=[];for(var i=0;r>i;++i){var a=t[i];o[a[0]].push(a[1]),o[a[1]].push(a[0])}for(var s=0;e>s;++s)n(o[s],function(t,e){return t-e});return o}e.exports=r;var n=t(\"uniq\")},{uniq:300}],286:[function(t,e){\"use strict\";function r(t,e){function r(t,e){var r=u[e][t[e]];r.splice(r.indexOf(t),1)}function i(t,i,a){for(var o,s,l,c=0;2>c;++c)if(u[c][i].length>0){o=u[c][i][0],l=c;break}s=o[1^l];for(var f=0;2>f;++f)for(var h=u[f][i],d=0;d<h.length;++d){var p=h[d],g=p[1^f],v=n(e[t],e[i],e[s],e[g]);v>0&&(o=p,s=g,l=f)}return a?s:(o&&r(o,l),s)}function a(t,a){var o=u[a][t][0],s=[t];r(o,a);for(var l=o[1^a];;){for(;l!==t;)s.push(l),l=i(s[s.length-2],l,!1);if(u[0][t].length+u[1][t].length===0)break;var c=s[s.length-1],f=t,h=s[1],d=i(c,f,!0);if(n(e[c],e[f],e[h],e[d])<0)break;s.push(t),l=i(c,f)}return s}function o(t,e){return e[1]===e[e.length-1]}for(var s=0|e.length,l=t.length,u=[new Array(s),new Array(s)],c=0;s>c;++c)u[0][c]=[],u[1][c]=[];for(var c=0;l>c;++c){var f=t[c];u[0][f[0]].push(f),u[1][f[1]].push(f)}for(var h=[],c=0;s>c;++c)u[0][c].length+u[1][c].length===0&&h.push([c]);for(var c=0;s>c;++c)for(var d=0;2>d;++d){for(var p=[];u[d][c].length>0;){var g=(u[0][c].length,a(c,d));o(p,g)?p.push.apply(p,g):(p.length>0&&h.push(p),p=g)}p.length>0&&h.push(p)}return h}e.exports=r;var n=t(\"compare-angle\")},{\"compare-angle\":287}],287:[function(t,e){\"use strict\";function r(t,e,r){var n=o(t[0],-e[0]),i=o(t[1],-e[1]),a=o(r[0],-e[0]),u=o(r[1],-e[1]),c=l(s(n,a),s(i,u));return c[c.length-1]>=0}function n(t,e,n,o){var s=i(e,n,o);if(0===s){var l=a(i(t,e,n)),u=a(i(t,e,o));if(l===u){if(0===l){var c=r(t,e,n),f=r(t,e,o);return c===f?0:c?1:-1}return 0}return 0===u?l>0?-1:r(t,e,o)?-1:1:0===l?u>0?1:r(t,e,n)?1:-1:a(u-l)}var h=i(t,e,n);if(h>0)return s>0&&i(t,e,o)>0?1:-1;if(0>h)return s>0||i(t,e,o)>0?1:-1;var d=i(t,e,o);return d>0?1:r(t,e,n)?1:-1}e.exports=n;var i=t(\"robust-orientation\"),a=t(\"signum\"),o=t(\"two-sum\"),s=t(\"robust-product\"),l=t(\"robust-sum\")},{\"robust-orientation\":228,\"robust-product\":289,\"robust-sum\":298,signum:290,\"two-sum\":291}],288:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":299,\"two-sum\":291}],289:[function(t,e){\"use strict\";function r(t,e){if(1===t.length)return i(e,t[0]);if(1===e.length)return i(t,e[0]);if(0===t.length||0===e.length)return[0];var r=[0];if(t.length<e.length)for(var a=0;a<t.length;++a)r=n(r,i(e,t[a]));else for(var a=0;a<e.length;++a)r=n(r,i(t,e[a]));return r}var n=t(\"robust-sum\"),i=t(\"robust-scale\");e.exports=r},{\"robust-scale\":288,\"robust-sum\":298}],290:[function(t,e){\"use strict\";e.exports=function(t){return 0>t?-1:t>0?1:0}},{}],291:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],292:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],293:[function(t,e){\"use strict\";function r(t,e,r,n,i){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=i,this.count=(e?e.count:0)+(r?r.count:0)+n.length}function n(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function i(t,e){var r=d(e);t.mid=r.mid,t.left=r.left,t.right=r.right,t.leftPoints=r.leftPoints,t.rightPoints=r.rightPoints,t.count=r.count}function a(t,e){var r=t.intervals([]);r.push(e),i(t,r)}function o(t,e){var r=t.intervals([]),n=r.indexOf(e);return 0>n?m:(r.splice(n,1),i(t,r),y)}function s(t,e,r){for(var n=0;n<t.length&&t[n][0]<=e;++n){var i=r(t[n]);if(i)return i}}function l(t,e,r){for(var n=t.length-1;n>=0&&t[n][1]>=e;--n){var i=r(t[n]);if(i)return i}}function u(t,e){for(var r=0;r<t.length;++r){var n=e(t[r]);if(n)return n}}function c(t,e){return t-e}function f(t,e){var r=t[0]-e[0];return r?r:t[1]-e[1]}function h(t,e){var r=t[1]-e[1];return r?r:t[0]-e[0]}function d(t){if(0===t.length)return null;for(var e=[],n=0;n<t.length;++n)e.push(t[n][0],t[n][1]);e.sort(c);for(var i=e[e.length>>1],a=[],o=[],s=[],n=0;n<t.length;++n){var l=t[n];l[1]<i?a.push(l):i<l[0]?o.push(l):s.push(l)}var u=s,p=s.slice();return u.sort(f),p.sort(h),new r(i,d(a),d(o),u,p)}function p(t){this.root=t}function g(t){return new p(t&&0!==t.length?d(t):null)}var v=t(\"binary-search-bounds\"),m=0,y=1,b=2;e.exports=g;var x=r.prototype;x.intervals=function(t){return t.push.apply(t,this.leftPoints),this.left&&this.left.intervals(t),this.right&&this.right.intervals(t),t},x.insert=function(t){var e=this.count-this.leftPoints.length;if(this.count+=1,t[1]<this.mid)this.left?4*(this.left.count+1)>3*(e+1)?a(this,t):this.left.insert(t):this.left=d([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?a(this,t):this.right.insert(t):this.right=d([t]);else{var r=v.ge(this.leftPoints,t,f),n=v.ge(this.rightPoints,t,h);this.leftPoints.splice(r,0,t),this.rightPoints.splice(n,0,t)}},x.remove=function(t){var e=this.count-this.leftPoints;if(t[1]<this.mid){if(!this.left)return m;var r=this.right?this.right.count:0;if(4*r>3*(e-1))return o(this,t);var i=this.left.remove(t);return i===b?(this.left=null,this.count-=1,y):(i===y&&(this.count-=1),i)}if(t[0]>this.mid){if(!this.right)return m;var a=this.left?this.left.count:0;if(4*a>3*(e-1))return o(this,t);var i=this.right.remove(t);return i===b?(this.right=null,this.count-=1,y):(i===y&&(this.count-=1),i)}if(1===this.count)return this.leftPoints[0]===t?b:m;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var s=this,l=this.left;l.right;)s=l,l=l.right;if(s===this)l.right=this.right;else{var u=this.left,i=this.right;s.count-=l.count,s.right=l.left,l.left=u,l.right=i}n(this,l),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?n(this,this.left):n(this,this.right);return y}for(var u=v.ge(this.leftPoints,t,f);u<this.leftPoints.length&&this.leftPoints[u][0]===t[0];++u)if(this.leftPoints[u]===t){this.count-=1,this.leftPoints.splice(u,1);for(var i=v.ge(this.rightPoints,t,h);i<this.rightPoints.length&&this.rightPoints[i][1]===t[1];++i)if(this.rightPoints[i]===t)return this.rightPoints.splice(i,1),y}return m},x.queryPoint=function(t,e){if(t<this.mid){if(this.left){var r=this.left.queryPoint(t,e);if(r)return r}return s(this.leftPoints,t,e)}if(t>this.mid){if(this.right){var r=this.right.queryPoint(t,e);if(r)return r}return l(this.rightPoints,t,e)}return u(this.leftPoints,e)},x.queryInterval=function(t,e,r){if(t<this.mid&&this.left){var n=this.left.queryInterval(t,e,r);if(n)return n}if(e>this.mid&&this.right){var n=this.right.queryInterval(t,e,r);if(n)return n}return e<this.mid?s(this.leftPoints,e,r):t>this.mid?l(this.rightPoints,t,r):u(this.leftPoints,r)};var _=p.prototype;_.insert=function(t){this.root?this.root.insert(t):this.root=new r(t[0],null,null,[t],[t])},_.remove=function(t){if(this.root){var e=this.root.remove(t);return e===b&&(this.root=null),e!==m}return!1},_.queryPoint=function(t,e){return this.root?this.root.queryPoint(t,e):void 0},_.queryInterval=function(t,e,r){return e>=t&&this.root?this.root.queryInterval(t,e,r):void 0},Object.defineProperty(_,\"count\",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(_,\"intervals\",{get:function(){return this.root?this.root.intervals([]):[]}})},{\"binary-search-bounds\":292}],294:[function(t,e){\"use strict\";function r(t,e){var r,n;if(e[0][0]<e[1][0])r=e[0],n=e[1];else{if(!(e[0][0]>e[1][0])){var a=Math.min(t[0][1],t[1][1]),o=Math.max(t[0][1],t[1][1]),s=Math.min(e[0][1],e[1][1]),l=Math.max(e[0][1],e[1][1]);return s>o?o-s:a>l?a-l:o-l}r=e[1],n=e[0]}var u,c;t[0][1]<t[1][1]?(u=t[0],c=t[1]):(u=t[1],c=t[0]);var f=i(n,r,u);return f?f:(f=i(n,r,c),f?f:c-n)}function n(t,e){var n,a;if(e[0][0]<e[1][0])n=e[0],a=e[1];else{if(!(e[0][0]>e[1][0]))return r(e,t);n=e[1],a=e[0]}var o,s;if(t[0][0]<t[1][0])o=t[0],s=t[1];else{if(!(t[0][0]>t[1][0]))return-r(t,e);o=t[1],s=t[0]}var l=i(n,a,s),u=i(n,a,o);if(0>l){if(0>=u)return l}else if(l>0){if(u>=0)return l}else if(u)return u;if(l=i(s,o,a),u=i(s,o,n),0>l){if(0>=u)return l}else if(l>0){if(u>=0)return l}else if(u)return u;return a[0]-s[0]}e.exports=n;var i=t(\"robust-orientation\")},{\"robust-orientation\":228}],295:[function(t,e){\"use strict\";function r(t,e,r,n,i,a){this._color=t,this.key=e,this.value=r,this.left=n,this.right=i,this._count=a}function n(t){return new r(t._color,t.key,t.value,t.left,t.right,t._count)}function i(t,e){return new r(t,e.key,e.value,e.left,e.right,e._count)}function a(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function o(t,e){this._compare=t,this.root=e}function s(t,e){if(e.left){var r=s(t,e.left);if(r)return r}var r=t(e.key,e.value);return r?r:e.right?s(t,e.right):void 0}function l(t,e,r,n){var i=e(t,n.key);if(0>=i){if(n.left){var a=l(t,e,r,n.left);if(a)return a}var a=r(n.key,n.value);if(a)return a}return n.right?l(t,e,r,n.right):void 0}function u(t,e,r,n,i){var a,o=r(t,i.key),s=r(e,i.key);if(0>=o){if(i.left&&(a=u(t,e,r,n,i.left)))return a;if(s>0&&(a=n(i.key,i.value)))return a}return s>0&&i.right?u(t,e,r,n,i.right):void 0}function c(t,e){this.tree=t,this._stack=e}function f(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count\n",
"}function h(t){for(var e,r,o,s,l=t.length-1;l>=0;--l){if(e=t[l],0===l)return void(e._color=v);if(r=t[l-1],r.left===e){if(o=r.right,o.right&&o.right._color===g){if(o=r.right=n(o),s=o.right=n(o.right),r.right=o.left,o.left=r,o.right=s,o._color=r._color,e._color=v,r._color=v,s._color=v,a(r),a(o),l>1){var u=t[l-2];u.left===r?u.left=o:u.right=o}return void(t[l-1]=o)}if(o.left&&o.left._color===g){if(o=r.right=n(o),s=o.left=n(o.left),r.right=s.left,o.left=s.right,s.left=r,s.right=o,s._color=r._color,r._color=v,o._color=v,e._color=v,a(r),a(o),a(s),l>1){var u=t[l-2];u.left===r?u.left=s:u.right=s}return void(t[l-1]=s)}if(o._color===v){if(r._color===g)return r._color=v,void(r.right=i(g,o));r.right=i(g,o);continue}if(o=n(o),r.right=o.left,o.left=r,o._color=r._color,r._color=g,a(r),a(o),l>1){var u=t[l-2];u.left===r?u.left=o:u.right=o}t[l-1]=o,t[l]=r,l+1<t.length?t[l+1]=e:t.push(e),l+=2}else{if(o=r.left,o.left&&o.left._color===g){if(o=r.left=n(o),s=o.left=n(o.left),r.left=o.right,o.right=r,o.left=s,o._color=r._color,e._color=v,r._color=v,s._color=v,a(r),a(o),l>1){var u=t[l-2];u.right===r?u.right=o:u.left=o}return void(t[l-1]=o)}if(o.right&&o.right._color===g){if(o=r.left=n(o),s=o.right=n(o.right),r.left=s.right,o.right=s.left,s.right=r,s.left=o,s._color=r._color,r._color=v,o._color=v,e._color=v,a(r),a(o),a(s),l>1){var u=t[l-2];u.right===r?u.right=s:u.left=s}return void(t[l-1]=s)}if(o._color===v){if(r._color===g)return r._color=v,void(r.left=i(g,o));r.left=i(g,o);continue}if(o=n(o),r.left=o.right,o.right=r,o._color=r._color,r._color=g,a(r),a(o),l>1){var u=t[l-2];u.right===r?u.right=o:u.left=o}t[l-1]=o,t[l]=r,l+1<t.length?t[l+1]=e:t.push(e),l+=2}}}function d(t,e){return e>t?-1:t>e?1:0}function p(t){return new o(t||d,null)}e.exports=p;var g=0,v=1,m=o.prototype;Object.defineProperty(m,\"keys\",{get:function(){var t=[];return this.forEach(function(e){t.push(e)}),t}}),Object.defineProperty(m,\"values\",{get:function(){var t=[];return this.forEach(function(e,r){t.push(r)}),t}}),Object.defineProperty(m,\"length\",{get:function(){return this.root?this.root._count:0}}),m.insert=function(t,e){for(var n=this._compare,s=this.root,l=[],u=[];s;){var c=n(t,s.key);l.push(s),u.push(c),s=0>=c?s.left:s.right}l.push(new r(g,t,e,null,null,1));for(var f=l.length-2;f>=0;--f){var s=l[f];l[f]=u[f]<=0?new r(s._color,s.key,s.value,l[f+1],s.right,s._count+1):new r(s._color,s.key,s.value,s.left,l[f+1],s._count+1)}for(var f=l.length-1;f>1;--f){var h=l[f-1],s=l[f];if(h._color===v||s._color===v)break;var d=l[f-2];if(d.left===h)if(h.left===s){var p=d.right;if(!p||p._color!==g){if(d._color=g,d.left=h.right,h._color=v,h.right=d,l[f-2]=h,l[f-1]=s,a(d),a(h),f>=3){var m=l[f-3];m.left===d?m.left=h:m.right=h}break}h._color=v,d.right=i(v,p),d._color=g,f-=1}else{var p=d.right;if(!p||p._color!==g){if(h.right=s.left,d._color=g,d.left=s.right,s._color=v,s.left=h,s.right=d,l[f-2]=s,l[f-1]=h,a(d),a(h),a(s),f>=3){var m=l[f-3];m.left===d?m.left=s:m.right=s}break}h._color=v,d.right=i(v,p),d._color=g,f-=1}else if(h.right===s){var p=d.left;if(!p||p._color!==g){if(d._color=g,d.right=h.left,h._color=v,h.left=d,l[f-2]=h,l[f-1]=s,a(d),a(h),f>=3){var m=l[f-3];m.right===d?m.right=h:m.left=h}break}h._color=v,d.left=i(v,p),d._color=g,f-=1}else{var p=d.left;if(!p||p._color!==g){if(h.left=s.right,d._color=g,d.right=s.left,s._color=v,s.right=h,s.left=d,l[f-2]=s,l[f-1]=h,a(d),a(h),a(s),f>=3){var m=l[f-3];m.right===d?m.right=s:m.left=s}break}h._color=v,d.left=i(v,p),d._color=g,f-=1}}return l[0]._color=v,new o(n,l[0])},m.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return s(t,this.root);case 2:return l(e,this._compare,t,this.root);case 3:if(this._compare(e,r)>=0)return;return u(e,r,this._compare,t,this.root)}},Object.defineProperty(m,\"begin\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new c(this,t)}}),Object.defineProperty(m,\"end\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new c(this,t)}}),m.at=function(t){if(0>t)return new c(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t<e.left._count){e=e.left;continue}t-=e.left._count}if(!t)return new c(this,r);if(t-=1,!e.right)break;if(t>=e.right._count)break;e=e.right}return new c(this,[])},m.ge=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),0>=a&&(i=n.length),r=0>=a?r.left:r.right}return n.length=i,new c(this,n)},m.gt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),0>a&&(i=n.length),r=0>a?r.left:r.right}return n.length=i,new c(this,n)},m.lt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>0&&(i=n.length),r=0>=a?r.left:r.right}return n.length=i,new c(this,n)},m.le=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>=0&&(i=n.length),r=0>a?r.left:r.right}return n.length=i,new c(this,n)},m.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var i=e(t,r.key);if(n.push(r),0===i)return new c(this,n);r=0>=i?r.left:r.right}return new c(this,[])},m.remove=function(t){var e=this.find(t);return e?e.remove():this},m.get=function(t){for(var e=this._compare,r=this.root;r;){var n=e(t,r.key);if(0===n)return r.value;r=0>=n?r.left:r.right}};var y=c.prototype;Object.defineProperty(y,\"valid\",{get:function(){return this._stack.length>0}}),Object.defineProperty(y,\"node\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),y.clone=function(){return new c(this.tree,this._stack.slice())},y.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var e=new Array(t.length),n=t[t.length-1];e[e.length-1]=new r(n._color,n.key,n.value,n.left,n.right,n._count);for(var i=t.length-2;i>=0;--i){var n=t[i];e[i]=n.left===t[i+1]?new r(n._color,n.key,n.value,e[i+1],n.right,n._count):new r(n._color,n.key,n.value,n.left,e[i+1],n._count)}if(n=e[e.length-1],n.left&&n.right){var a=e.length;for(n=n.left;n.right;)e.push(n),n=n.right;var s=e[a-1];e.push(new r(n._color,s.key,s.value,n.left,n.right,n._count)),e[a-1].key=n.key,e[a-1].value=n.value;for(var i=e.length-2;i>=a;--i)n=e[i],e[i]=new r(n._color,n.key,n.value,n.left,e[i+1],n._count);e[a-1].left=e[a]}if(n=e[e.length-1],n._color===g){var l=e[e.length-2];l.left===n?l.left=null:l.right===n&&(l.right=null),e.pop();for(var i=0;i<e.length;++i)e[i]._count--;return new o(this.tree._compare,e[0])}if(n.left||n.right){n.left?f(n,n.left):n.right&&f(n,n.right),n._color=v;for(var i=0;i<e.length-1;++i)e[i]._count--;return new o(this.tree._compare,e[0])}if(1===e.length)return new o(this.tree._compare,null);for(var i=0;i<e.length;++i)e[i]._count--;var u=e[e.length-2];return h(e),u.left===n?u.left=null:u.right=null,new o(this.tree._compare,e[0])},Object.defineProperty(y,\"key\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1].key:void 0},enumerable:!0}),Object.defineProperty(y,\"value\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1].value:void 0},enumerable:!0}),Object.defineProperty(y,\"index\",{get:function(){var t=0,e=this._stack;if(0===e.length){var r=this.tree.root;return r?r._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var n=e.length-2;n>=0;--n)e[n+1]===e[n].right&&(++t,e[n].left&&(t+=e[n].left._count));return t},enumerable:!0}),y.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(y,\"hasNext\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),y.update=function(t){var e=this._stack;if(0===e.length)throw new Error(\"Can't update empty node!\");var n=new Array(e.length),i=e[e.length-1];n[n.length-1]=new r(i._color,i.key,t,i.left,i.right,i._count);for(var a=e.length-2;a>=0;--a)i=e[a],n[a]=i.left===e[a+1]?new r(i._color,i.key,i.value,n[a+1],i.right,i._count):new r(i._color,i.key,i.value,i.left,n[a+1],i._count);return new o(this.tree._compare,n[0])},y.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(y,\"hasPrev\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},{}],296:[function(t,e){\"use strict\";function r(t,e,r){this.slabs=t,this.coordinates=e,this.horizontal=r}function n(t,e){return t.y-e}function i(t,e){for(var r=null;t;){var n,a,o=t.key;o[0][0]<o[1][0]?(n=o[0],a=o[1]):(n=o[1],a=o[0]);var s=c(n,a,e);if(0>s)t=t.left;else if(s>0)if(e[0]!==o[1][0])r=t,t=t.right;else{var l=i(t.right,e);if(l)return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l=i(t.right,e);if(l)return l;t=t.left}}return r}function a(t,e,r,n){this.y=t,this.index=e,this.start=r,this.closed=n}function o(t,e,r,n){this.x=t,this.segment=e,this.create=r,this.index=n}function s(t){for(var e=t.length,n=2*e,i=new Array(n),s=0;e>s;++s){var l=t[s],c=l[0][0]<l[1][0];i[2*s]=new o(l[0][0],l,c,s),i[2*s+1]=new o(l[1][0],l,!c,s)}i.sort(function(t,e){var r=t.x-e.x;return r?r:(r=t.create-e.create,r?r:Math.min(t.segment[0][1],t.segment[1][1])-Math.min(e.segment[0][1],e.segment[1][1]))});for(var h=u(f),d=[],p=[],g=[],s=0;n>s;){for(var v=i[s].x,m=[];n>s;){var y=i[s];if(y.x!==v)break;s+=1,y.segment[0][0]===y.x&&y.segment[1][0]===y.x?y.create&&(y.segment[0][1]<y.segment[1][1]?(m.push(new a(y.segment[0][1],y.index,!0,!0)),m.push(new a(y.segment[1][1],y.index,!1,!1))):(m.push(new a(y.segment[1][1],y.index,!0,!1)),m.push(new a(y.segment[0][1],y.index,!1,!0)))):h=y.create?h.insert(y.segment,y.index):h.remove(y.segment)}d.push(h.root),p.push(v),g.push(m)}return new r(d,p,g)}e.exports=s;var l=t(\"binary-search-bounds\"),u=t(\"functional-red-black-tree\"),c=t(\"robust-orientation\"),f=t(\"./lib/order-segments\"),h=r.prototype;h.castUp=function(t){var e=l.le(this.coordinates,t[0]);if(0>e)return-1;var r=(this.slabs[e],i(this.slabs[e],t)),a=-1;if(r&&(a=r.value),this.coordinates[e]===t[0]){var o=null;if(r&&(o=r.key),e>0){var s=i(this.slabs[e-1],t);s&&(o?f(s.key,o)>0&&(o=s.key,a=s.value):(a=s.value,o=s.key))}var u=this.horizontal[e];if(u.length>0){var h=l.ge(u,t[1],n);if(h<u.length){var d=u[h];if(t[1]===d.y){if(d.closed)return d.index;for(;h<u.length-1&&u[h+1].y===t[1];)if(h+=1,d=u[h],d.closed)return d.index;if(d.y===t[1]&&!d.start){if(h+=1,h>=u.length)return a;d=u[h]}}if(d.start)if(o){var p=c(o[0],o[1],[t[0],d.y]);o[0][0]>o[1][0]&&(p=-p),p>0&&(a=d.index)}else a=d.index;else d.y!==t[1]&&(a=d.index)}}}return a}},{\"./lib/order-segments\":294,\"binary-search-bounds\":292,\"functional-red-black-tree\":295,\"robust-orientation\":228}],297:[function(t,e){function r(){return!0}function n(t){return function(e,n){var i=t[e];return i?!!i.queryPoint(n,r):!1}}function i(t){for(var e={},r=0;r<t.length;++r){var i=t[r],a=i[0][0],o=i[0][1],s=i[1][1],l=[Math.min(o,s),Math.max(o,s)];a in e?e[a].push(l):e[a]=[l]}for(var u={},c=Object.keys(e),r=0;r<c.length;++r){var f=e[c[r]];u[c[r]]=h(f)}return n(u)}function a(t,e){return function(r){var n=d.le(e,r[0]);if(0>n)return 1;var i=t[n];if(!i){if(!(n>0&&e[n]===r[0]))return 1;i=t[n-1]}for(var a=1;i;){var o=i.key,s=c(r,o[0],o[1]);if(o[0][0]<o[1][0])if(0>s)i=i.left;else{if(!(s>0))return 0;a=-1,i=i.right}else if(s>0)i=i.left;else{if(!(0>s))return 0;a=1,i=i.right}}return a}}function o(){return 1}function s(t){return function(e){return t(e[0],e[1])?0:1}}function l(t,e){return function(r){return t(r[0],r[1])?0:e(r)}}function u(t){for(var e=t.length,r=[],n=[],u=0;e>u;++u)for(var c=t[u],h=c.length,d=h-1,p=0;h>p;d=p++){var g=c[d],v=c[p];g[0]===v[0]?n.push([g,v]):r.push([g,v])}if(0===r.length)return 0===n.length?o:s(i(n));var m=f(r),y=a(m.slabs,m.coordinates);return 0===n.length?y:l(i(n),y)}e.exports=u;var c=t(\"robust-orientation\")[3],f=t(\"slab-decomposition\"),h=t(\"interval-tree-1d\"),d=t(\"binary-search-bounds\")},{\"binary-search-bounds\":292,\"interval-tree-1d\":293,\"robust-orientation\":228,\"slab-decomposition\":296}],298:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],299:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],300:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],301:[function(t,e){\"use strict\";function r(t,e){for(var r=new Array(t),n=0;t>n;++n)r[n]=e;return r}function n(t){for(var e=new Array(t),r=0;t>r;++r)e[r]=[];return e}function i(t,e){function i(t){for(var r=t.length,n=[0],i=0;r>i;++i){var a=e[t[i]],o=e[t[(i+1)%r]],s=l(-a[0],a[1]),c=l(-a[0],o[1]),f=l(o[0],a[1]),h=l(o[0],o[1]);n=u(n,u(u(s,c),u(f,h)))}return n[n.length-1]>0}function h(t){for(var e=t.length,r=0;e>r;++r)if(!I[t[r]])return!1;return!0}var d=f(t,e);t=d[0],e=d[1];for(var p=e.length,g=(t.length,a(t,e.length)),v=0;p>v;++v)if(g[v].length%2===1)throw new Error(\"planar-graph-to-polyline: graph must be manifold\");var m=o(t,e);m=m.filter(i);for(var y=m.length,b=new Array(y),x=new Array(y),v=0;y>v;++v){b[v]=v;var _=new Array(y),w=m[v].map(function(t){return e[t]}),k=s([w]),A=0;t:for(var M=0;y>M;++M)if(_[M]=0,v!==M){for(var L=m[M],E=L.length,C=0;E>C;++C){var j=k(e[L[C]]);if(0!==j){0>j&&(_[M]=1,A+=1);continue t}}_[M]=1,A+=1}x[v]=[A,v,_]}x.sort(function(t,e){return e[0]-t[0]});for(var v=0;y>v;++v)for(var _=x[v],S=_[1],T=_[2],M=0;y>M;++M)T[M]&&(b[M]=S);for(var z=n(y),v=0;y>v;++v)z[v].push(b[v]),z[b[v]].push(v);for(var P={},I=r(p,!1),v=0;y>v;++v)for(var L=m[v],E=L.length,M=0;E>M;++M){var O=L[M],D=L[(M+1)%E],R=Math.min(O,D)+\":\"+Math.max(O,D);if(R in P){var N=P[R];z[N].push(v),z[v].push(N),I[O]=I[D]=!0}else P[R]=v}for(var B=[],F=r(y,-1),v=0;y>v;++v)b[v]!==v||h(m[v])?F[v]=-1:(B.push(v),F[v]=0);for(var d=[];B.length>0;){var U=B.pop(),V=z[U];c(V,function(t,e){return t-e});var H,q=V.length,G=F[U];if(0===G){var L=m[U];H=[L]}for(var v=0;q>v;++v){var Y=V[v];if(!(F[Y]>=0)&&(F[Y]=1^G,B.push(Y),0===G)){var L=m[Y];h(L)||(L.reverse(),H.push(L))}}0===G&&d.push(H)}return d}e.exports=i;var a=t(\"edges-to-adjacency-list\"),o=t(\"planar-dual\"),s=t(\"point-in-big-polygon\"),l=t(\"two-product\"),u=t(\"robust-sum\"),c=t(\"uniq\"),f=t(\"./lib/trim-leaves\")},{\"./lib/trim-leaves\":284,\"edges-to-adjacency-list\":285,\"planar-dual\":286,\"point-in-big-polygon\":297,\"robust-sum\":298,\"two-product\":299,uniq:300}],302:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],303:[function(t,e){\"use strict\";\"use restrict\";function r(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;t>e;++e)this.roots[e]=e,this.ranks[e]=0}e.exports=r,r.prototype.length=function(){return this.roots.length},r.prototype.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},r.prototype.find=function(t){for(var e=this.roots;e[t]!==t;){var r=e[t];e[t]=e[r],t=r}return t},r.prototype.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var i=this.ranks,a=this.roots,o=i[r],s=i[n];s>o?a[r]=n:o>s?a[n]=r:(a[n]=r,++i[r])}}},{}],304:[function(t,e,r){arguments[4][74][0].apply(r,arguments)},{\"bit-twiddle\":302,dup:74,\"union-find\":303}],305:[function(t,e){\"use strict\";function r(t,e,r){var n=Math.abs(i(t,e,r)),a=Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2));return n/a}function n(t,e,n){function i(t){if(x[t])return 1/0;var n=m[t],i=y[t];return 0>n||0>i?1/0:r(e[t],e[n],e[i])}function o(t,e){var r=M[t],n=M[e];M[t]=n,M[e]=r,L[r]=e,L[n]=t}function s(t){return b[M[t]]}function l(t){return 1&t?t-1>>1:(t>>1)-1}function u(t){for(var e=s(t);;){var r=e,n=2*t+1,i=2*(t+1),a=t;if(C>n){var l=s(n);r>l&&(a=n,r=l)}if(C>i){var u=s(i);r>u&&(a=i)}if(a===t)return t;o(t,a),t=a}}function c(t){for(var e=s(t);t>0;){var r=l(t);if(r>=0){var n=s(r);if(n>e){o(t,r),t=r;continue}}return t}}function f(){if(C>0){var t=M[0];return o(0,C-1),C-=1,u(0),t}return-1}function h(t,e){var r=M[t];return b[r]===e?t:(b[r]=-1/0,c(t),f(),b[r]=e,C+=1,c(C-1))}function d(t){if(!x[t]){x[t]=!0;var e=m[t],r=y[t];m[r]>=0&&(m[r]=e),y[e]>=0&&(y[e]=r),L[e]>=0&&h(L[e],i(e)),L[r]>=0&&h(L[r],i(r))}}function p(t,e){if(t[e]<0)return e;var r=e,n=e;do{var i=t[n];if(!x[n]||0>i||i===n)break;if(n=i,i=t[n],!x[n]||0>i||i===n)break;n=i,r=t[r]}while(r!==n);for(var a=e;a!==n;a=t[a])t[a]=n;return n}for(var g=e.length,v=t.length,m=new Array(g),y=new Array(g),b=new Array(g),x=new Array(g),_=0;g>_;++_)m[_]=y[_]=-1,b[_]=1/0,x[_]=!1;for(var _=0;v>_;++_){var w=t[_];if(2!==w.length)throw new Error(\"Input must be a graph\");var k=w[1],A=w[0];y[A]=-1!==y[A]?-2:k,m[k]=-1!==m[k]?-2:A}for(var M=[],L=new Array(g),_=0;g>_;++_){var E=b[_]=i(_);1/0>E?(L[_]=M.length,M.push(_)):L[_]=-1}for(var C=M.length,_=C>>1;_>=0;--_)u(_);for(;;){var j=f();if(0>j||b[j]>n)break;d(j)}for(var S=[],_=0;g>_;++_)x[_]||(L[_]=S.length,S.push(e[_].slice()));var T=(S.length,[]);return t.forEach(function(t){var e=p(m,t[0]),r=p(y,t[1]);if(e>=0&&r>=0&&e!==r){var n=L[e],i=L[r];n!==i&&T.push([n,i])}}),a.unique(a.normalize(T)),{positions:S,edges:T}}e.exports=n;var i=t(\"robust-orientation\"),a=t(\"simplicial-complex\")},{\"robust-orientation\":228,\"simplicial-complex\":304}],306:[function(t,e){\"use strict\";function r(t){return\"a\"+t}function n(t){return\"d\"+t}function i(t,e){return\"c\"+t+\"_\"+e}function a(t){return\"s\"+t}function o(t,e){return\"t\"+t+\"_\"+e}function s(t){return\"o\"+t}function l(t){return\"x\"+t}function u(t){return\"p\"+t}function c(t,e){return\"d\"+t+\"_\"+e}function f(t){return\"i\"+t}function h(t,e){return\"u\"+t+\"_\"+e}function d(t){return\"b\"+t}function p(t){return\"y\"+t}function g(t){return\"e\"+t}function v(t){return\"v\"+t}function m(t,e,r){for(var n=0,i=0;t>i;++i)e&1<<i&&(n|=1<<r[i]);return n}function y(t,e,y,b,E,C){function j(t,e){N.push(\"for(\",f(E[t]),\"=\",e,\";\",f(E[t]),\"<\",a(E[t]),\";\",\"++\",f(E[t]),\"){\")}function S(t){for(var e=0;O>e;++e)N.push(u(e),\"+=\",h(e,E[t]),\";\");N.push(\"}\")}function T(t){for(var e=t-1;e>=0;--e)j(e,0);for(var r=[],e=0;O>e;++e)r.push(C[e]?n(e)+\".get(\"+u(e)+\")\":n(e)+\"[\"+u(e)+\"]\");for(var e=0;b>e;++e)r.push(l(e));N.push(w,\"[\",M,\"++]=phase(\",r.join(),\");\");for(var e=0;t>e;++e)S(e);for(var i=0;O>i;++i)N.push(u(i),\"+=\",h(i,E[t]),\";\")}function z(t){for(var e=0;O>e;++e)C[e]?N.push(i(e,0),\"=\",n(e),\".get(\",u(e),\");\"):N.push(i(e,0),\"=\",n(e),\"[\",u(e),\"];\");for(var r=[],e=0;O>e;++e)r.push(i(e,0));for(var e=0;b>e;++e)r.push(l(e));N.push(d(0),\"=\",w,\"[\",M,\"]=phase(\",r.join(),\");\");for(var a=1;1<<D>a;++a)N.push(d(a),\"=\",w,\"[\",M,\"+\",g(a),\"];\");for(var o=[],a=1;1<<D>a;++a)o.push(\"(\"+d(0)+\"!==\"+d(a)+\")\");N.push(\"if(\",o.join(\"||\"),\"){\");for(var s=[],e=0;D>e;++e)s.push(f(e));for(var e=0;O>e;++e){s.push(i(e,0));for(var a=1;1<<D>a;++a)C[e]?N.push(i(e,a),\"=\",n(e),\".get(\",u(e),\"+\",c(e,a),\");\"):N.push(i(e,a),\"=\",n(e),\"[\",u(e),\"+\",c(e,a),\"];\"),s.push(i(e,a))}for(var e=0;1<<D>e;++e)s.push(d(e));for(var e=0;b>e;++e)s.push(l(e));N.push(\"vertex(\",s.join(),\");\",v(0),\"=\",_,\"[\",M,\"]=\",k,\"++;\");for(var h=(1<<D)-1,p=d(h),a=0;D>a;++a)if(0===(t&~(1<<a))){for(var m=h^1<<a,y=d(m),x=[],A=m;A>0;A=A-1&m)x.push(_+\"[\"+M+\"+\"+g(A)+\"]\");x.push(v(0));for(var A=0;O>A;++A)1&a?x.push(i(A,h),i(A,m)):x.push(i(A,m),i(A,h));1&a?x.push(p,y):x.push(y,p);for(var A=0;b>A;++A)x.push(l(A));N.push(\"if(\",p,\"!==\",y,\"){\",\"face(\",x.join(),\")}\")}N.push(\"}\",M,\"+=1;\")}function P(){for(var t=1;1<<D>t;++t)N.push(L,\"=\",g(t),\";\",g(t),\"=\",p(t),\";\",p(t),\"=\",L,\";\")}function I(t,e){if(0>t)return void z(e);T(t),N.push(\"if(\",a(E[t]),\">0){\",f(E[t]),\"=1;\"),I(t-1,e|1<<E[t]);for(var r=0;O>r;++r)N.push(u(r),\"+=\",h(r,E[t]),\";\");t===D-1&&(N.push(M,\"=0;\"),P()),j(t,2),I(t-1,e),t===D-1&&(N.push(\"if(\",f(E[D-1]),\"&1){\",M,\"=0;}\"),P()),S(t),N.push(\"}\")}var O=C.length,D=E.length;if(2>D)throw new Error(\"ndarray-extract-contour: Dimension must be at least 2\");for(var R=\"extractContour\"+E.join(\"_\"),N=[],B=[],F=[],U=0;O>U;++U)F.push(r(U));for(var U=0;b>U;++U)F.push(l(U));for(var U=0;D>U;++U)B.push(a(U)+\"=\"+r(0)+\".shape[\"+U+\"]|0\");for(var U=0;O>U;++U){B.push(n(U)+\"=\"+r(U)+\".data\",s(U)+\"=\"+r(U)+\".offset|0\");for(var V=0;D>V;++V)B.push(o(U,V)+\"=\"+r(U)+\".stride[\"+V+\"]|0\")}for(var U=0;O>U;++U){B.push(u(U)+\"=\"+s(U)),B.push(i(U,0));for(var V=1;1<<D>V;++V){for(var H=[],q=0;D>q;++q)V&1<<q&&H.push(\"-\"+o(U,q));B.push(c(U,V)+\"=(\"+H.join(\"\")+\")|0\"),B.push(i(U,V)+\"=0\")}}for(var U=0;O>U;++U)for(var V=0;D>V;++V){var G=[o(U,E[V])];V>0&&G.push(o(U,E[V-1])+\"*\"+a(E[V-1])),B.push(h(U,E[V])+\"=(\"+G.join(\"-\")+\")|0\")}for(var U=0;D>U;++U)B.push(f(U)+\"=0\");B.push(k+\"=0\");for(var Y=[\"2\"],U=D-2;U>=0;--U)Y.push(a(E[U]));B.push(A+\"=(\"+Y.join(\"*\")+\")|0\",w+\"=mallocUint32(\"+A+\")\",_+\"=mallocUint32(\"+A+\")\",M+\"=0\"),B.push(d(0)+\"=0\");for(var V=1;1<<D>V;++V){for(var W=[],X=[],q=0;D>q;++q)V&1<<q&&(0===X.length?W.push(\"1\"):W.unshift(X.join(\"*\"))),X.push(a(E[q]));var Z=\"\";W[0].indexOf(a(E[D-2]))<0&&(Z=\"-\");var $=m(D,V,E);B.push(g($)+\"=(-\"+W.join(\"-\")+\")|0\",p($)+\"=(\"+Z+W.join(\"-\")+\")|0\",d($)+\"=0\")}B.push(v(0)+\"=0\",L+\"=0\"),I(D-1,0),N.push(\"freeUint32(\",_,\");freeUint32(\",w,\");\");var K=[\"'use strict';\",\"function \",R,\"(\",F.join(),\"){\",\"var \",B.join(),\";\",N.join(\"\"),\"}\",\"return \",R].join(\"\"),J=new Function(\"vertex\",\"face\",\"phase\",\"mallocUint32\",\"freeUint32\",K);return J(t,e,y,x.mallocUint32,x.freeUint32)}function b(t){function e(t){throw new Error(\"ndarray-extract-contour: \"+t)}\"object\"!=typeof t&&e(\"Must specify arguments\");var r=t.order;Array.isArray(r)||e(\"Must specify order\");var n=t.arrayArguments||1;1>n&&e(\"Must have at least one array argument\");var i=t.scalarArguments||0;0>i&&e(\"Scalar arg count must be > 0\"),\"function\"!=typeof t.vertex&&e(\"Must specify vertex creation function\"),\"function\"!=typeof t.cell&&e(\"Must specify cell creation function\"),\"function\"!=typeof t.phase&&e(\"Must specify phase function\");for(var a=t.getters||[],o=new Array(n),s=0;n>s;++s)o[s]=a.indexOf(s)>=0?!0:!1;return y(t.vertex,t.cell,t.phase,i,r,o)}var x=t(\"typedarray-pool\");e.exports=b;var _=\"V\",w=\"P\",k=\"N\",A=\"Q\",M=\"X\",L=\"T\"},{\"typedarray-pool\":307}],307:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":213,buffer:1,dup:99}],308:[function(t,e){function r(t){if(0>t)return Number(\"0/0\");for(var e=o[0],r=o.length-1;r>0;--r)e+=o[r]/(t+r);var n=t+a+.5;return.5*Math.log(2*Math.PI)+(t+.5)*Math.log(n)-n+Math.log(e)-Math.log(t)}var n=7,i=[.9999999999998099,676.5203681218851,-1259.1392167224028,771.3234287776531,-176.6150291621406,12.507343278686905,-.13857109526572012,9984369578019572e-21,1.5056327351493116e-7],a=607/128,o=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];e.exports=function t(e){if(.5>e)return Math.PI/(Math.sin(Math.PI*e)*t(1-e));if(e>100)return Math.exp(r(e));e-=1;for(var a=i[0],o=1;n+2>o;o++)a+=i[o]/(e+o);var s=e+n+.5;return Math.sqrt(2*Math.PI)*Math.pow(s,e+.5)*Math.exp(-s)*a},e.exports.log=r},{}],309:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":213,buffer:1,dup:99}],310:[function(t,e){\"use strict\";function r(t){var e=t.length;if(n>e){for(var r=1,a=0;e>a;++a)for(var o=0;a>o;++o)if(t[a]<t[o])r=-r;else if(t[a]===t[o])return 0;return r}for(var s=i.mallocUint8(e),a=0;e>a;++a)s[a]=0;for(var r=1,a=0;e>a;++a)if(!s[a]){var l=1;s[a]=1;for(var o=t[a];o!==a;o=t[o]){if(s[o])return i.freeUint8(s),0;l+=1,s[o]=1}1&l||(r=-r)}return i.freeUint8(s),r}e.exports=r;var n=32,i=t(\"typedarray-pool\")},{\"typedarray-pool\":309}],311:[function(t,e,r){\"use strict\";function n(t){var e=t.length;switch(e){case 0:case 1:return 0;case 2:return t[1]}var r,n,i,s=a.mallocUint32(e),l=a.mallocUint32(e),u=0;for(o(t,l),i=0;e>i;++i)s[i]=t[i];for(i=e-1;i>0;--i)n=l[i],r=s[i],s[i]=s[n],s[n]=r,l[i]=l[r],l[r]=n,u=(u+r)*i;return a.freeUint32(l),a.freeUint32(s),u}function i(t,e,r){switch(t){case 0:return r?r:[];case 1:return r?(r[0]=0,r):[0];case 2:return r?(e?(r[0]=0,r[1]=1):(r[0]=1,r[1]=0),r):e?[0,1]:[1,0]}r=r||new Array(t);var n,i,a,o=1;for(r[0]=0,a=1;t>a;++a)r[a]=a,o=o*a|0;for(a=t-1;a>0;--a)n=e/o|0,e=e-n*o|0,o=o/a|0,i=0|r[a],r[a]=0|r[n],r[n]=0|i;return r}var a=t(\"typedarray-pool\"),o=t(\"invert-permutation\");r.rank=n,r.unrank=i},{\"invert-permutation\":312,\"typedarray-pool\":313}],312:[function(t,e){\"use strict\";function r(t,e){e=e||new Array(t.length);for(var r=0;r<t.length;++r)e[t[r]]=r;return e}e.exports=r},{}],313:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":213,buffer:1,dup:99}],314:[function(t,e){\"use strict\";function r(t){if(0>t)return[];if(0===t)return[[0]];for(var e=0|Math.round(a(t+1)),r=[],o=0;e>o;++o){for(var s=n.unrank(t,o),l=[0],u=0,c=0;c<s.length;++c)u+=1<<s[c],l.push(u);i(s)<1&&(l[0]=u,l[t]=0),r.push(l)}return r}e.exports=r;var n=t(\"permutation-rank\"),i=t(\"permutation-parity\"),a=t(\"gamma\")},{gamma:308,\"permutation-parity\":310,\"permutation-rank\":311}],315:[function(t,e){e.exports=t(\"cwise-compiler\")({args:[\"array\",{offset:[1],array:0},\"scalar\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\n var _inline_1_da = _inline_1_arg0_ - _inline_1_arg3_\\n var _inline_1_db = _inline_1_arg1_ - _inline_1_arg3_\\n if((_inline_1_da >= 0) !== (_inline_1_db >= 0)) {\\n _inline_1_arg2_.push(_inline_1_arg4_[0] + 0.5 + 0.5 * (_inline_1_da + _inline_1_db) / (_inline_1_da - _inline_1_db))\\n }\\n }\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg3_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[],localVars:[\"_inline_1_da\",\"_inline_1_db\"]},funcName:\"zeroCrossings\"})},{\"cwise-compiler\":316}],316:[function(t,e){\"use strict\";function r(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName=\"\",this.pre=null,this.body=null,this.post=null,this.debug=!1}function n(t){var e=new r;e.pre=t.pre,e.body=t.body,e.post=t.post;var n=t.args.slice(0);e.argTypes=n;for(var a=0;a<n.length;++a){var o=n[a];if(\"array\"===o||\"object\"==typeof o&&o.blockIndices){if(e.argTypes[a]=\"array\",e.arrayArgs.push(a),e.arrayBlockIndices.push(o.blockIndices?o.blockIndices:0),e.shimArgs.push(\"array\"+a),a<e.pre.args.length&&e.pre.args[a].count>0)throw new Error(\"cwise: pre() block may not reference array args\");if(a<e.post.args.length&&e.post.args[a].count>0)throw new Error(\"cwise: post() block may not reference array args\")}else if(\"scalar\"===o)e.scalarArgs.push(a),e.shimArgs.push(\"scalar\"+a);else if(\"index\"===o){if(e.indexArgs.push(a),a<e.pre.args.length&&e.pre.args[a].count>0)throw new Error(\"cwise: pre() block may not reference array index\");if(a<e.body.args.length&&e.body.args[a].lvalue)throw new Error(\"cwise: body() block may not write to array index\");if(a<e.post.args.length&&e.post.args[a].count>0)throw new Error(\"cwise: post() block may not reference array index\")}else if(\"shape\"===o){if(e.shapeArgs.push(a),a<e.pre.args.length&&e.pre.args[a].lvalue)throw new Error(\"cwise: pre() block may not write to array shape\");if(a<e.body.args.length&&e.body.args[a].lvalue)throw new Error(\"cwise: body() block may not write to array shape\");if(a<e.post.args.length&&e.post.args[a].lvalue)throw new Error(\"cwise: post() block may not write to array shape\")}else{if(\"object\"!=typeof o||!o.offset)throw new Error(\"cwise: Unknown argument type \"+n[a]);e.argTypes[a]=\"offset\",e.offsetArgs.push({array:o.array,offset:o.offset}),e.offsetArgIndex.push(a)}}if(e.arrayArgs.length<=0)throw new Error(\"cwise: No array arguments specified\");if(e.pre.args.length>n.length)throw new Error(\"cwise: Too many arguments in pre() block\");if(e.body.args.length>n.length)throw new Error(\"cwise: Too many arguments in body() block\");if(e.post.args.length>n.length)throw new Error(\"cwise: Too many arguments in post() block\");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||\"cwise\",e.blockSize=t.blockSize||64,i(e)}var i=t(\"./lib/thunk.js\");e.exports=n},{\"./lib/thunk.js\":318}],317:[function(t,e){\"use strict\";function r(t,e,r){var n,i,a=t.length,o=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],u=[],c=0,f=0;for(n=0;a>n;++n)u.push([\"i\",n,\"=0\"].join(\"\"));for(i=0;o>i;++i)for(n=0;a>n;++n)f=c,c=t[n],u.push(0===n?[\"d\",i,\"s\",n,\"=t\",i,\"p\",c].join(\"\"):[\"d\",i,\"s\",n,\"=(t\",i,\"p\",c,\"-s\",f,\"*t\",i,\"p\",f,\")\"].join(\"\"));for(l.push(\"var \"+u.join(\",\")),n=a-1;n>=0;--n)c=t[n],l.push([\"for(i\",n,\"=0;i\",n,\"<s\",c,\";++i\",n,\"){\"].join(\"\"));for(l.push(r),n=0;a>n;++n){for(f=c,c=t[n],i=0;o>i;++i)l.push([\"p\",i,\"+=d\",i,\"s\",n].join(\"\"));s&&(n>0&&l.push([\"index[\",f,\"]-=s\",f].join(\"\")),l.push([\"++index[\",c,\"]\"].join(\"\"))),l.push(\"}\")}return l.join(\"\\n\")}function n(t,e,n,i){for(var a=e.length,o=n.arrayArgs.length,s=n.blockSize,l=n.indexArgs.length>0,u=[],c=0;o>c;++c)u.push([\"var offset\",c,\"=p\",c].join(\"\"));for(var c=t;a>c;++c)u.push([\"for(var j\"+c+\"=SS[\",e[c],\"]|0;j\",c,\">0;){\"].join(\"\")),u.push([\"if(j\",c,\"<\",s,\"){\"].join(\"\")),u.push([\"s\",e[c],\"=j\",c].join(\"\")),u.push([\"j\",c,\"=0\"].join(\"\")),u.push([\"}else{s\",e[c],\"=\",s].join(\"\")),u.push([\"j\",c,\"-=\",s,\"}\"].join(\"\")),l&&u.push([\"index[\",e[c],\"]=j\",c].join(\"\"));for(var c=0;o>c;++c){for(var f=[\"offset\"+c],h=t;a>h;++h)f.push([\"j\",h,\"*t\",c,\"p\",e[h]].join(\"\"));u.push([\"p\",c,\"=(\",f.join(\"+\"),\")\"].join(\"\"))}u.push(r(e,n,i));for(var c=t;a>c;++c)u.push(\"}\");return u.join(\"\\n\")}function i(t){for(var e=0,r=t[0].length;r>e;){for(var n=1;n<t.length;++n)if(t[n][e]!==t[0][e])return e;++e}return e}function a(t,e,r){for(var n=t.body,i=[],a=[],o=0;o<t.args.length;++o){var s=t.args[o];if(!(s.count<=0)){var l=new RegExp(s.name,\"g\"),u=\"\",c=e.arrayArgs.indexOf(o);switch(e.argTypes[o]){case\"offset\":var f=e.offsetArgIndex.indexOf(o),h=e.offsetArgs[f];c=h.array,u=\"+q\"+f;case\"array\":u=\"p\"+c+u;var d=\"l\"+o,p=\"a\"+c;if(0===e.arrayBlockIndices[c])1===s.count?\"generic\"===r[c]?s.lvalue?(i.push([\"var \",d,\"=\",p,\".get(\",u,\")\"].join(\"\")),n=n.replace(l,d),a.push([p,\".set(\",u,\",\",d,\")\"].join(\"\"))):n=n.replace(l,[p,\".get(\",u,\")\"].join(\"\")):n=n.replace(l,[p,\"[\",u,\"]\"].join(\"\")):\"generic\"===r[c]?(i.push([\"var \",d,\"=\",p,\".get(\",u,\")\"].join(\"\")),n=n.replace(l,d),s.lvalue&&a.push([p,\".set(\",u,\",\",d,\")\"].join(\"\"))):(i.push([\"var \",d,\"=\",p,\"[\",u,\"]\"].join(\"\")),n=n.replace(l,d),s.lvalue&&a.push([p,\"[\",u,\"]=\",d].join(\"\")));else{for(var g=[s.name],v=[u],m=0;m<Math.abs(e.arrayBlockIndices[c]);m++)g.push(\"\\\\s*\\\\[([^\\\\]]+)\\\\]\"),v.push(\"$\"+(m+1)+\"*t\"+c+\"b\"+m);if(l=new RegExp(g.join(\"\"),\"g\"),u=v.join(\"+\"),\"generic\"===r[c])throw new Error(\"cwise: Generic arrays not supported in combination with blocks!\");n=n.replace(l,[p,\"[\",u,\"]\"].join(\"\"))}break;case\"scalar\":n=n.replace(l,\"Y\"+e.scalarArgs.indexOf(o));break;case\"index\":n=n.replace(l,\"index\");break;case\"shape\":n=n.replace(l,\"shape\")}}}return[i.join(\"\\n\"),n,a.join(\"\\n\")].join(\"\\n\").trim()}function o(t){for(var e=new Array(t.length),r=!0,n=0;n<t.length;++n){var i=t[n],a=i.match(/\\d+/);a=a?a[0]:\"\",e[n]=0===i.charAt(0)?\"u\"+i.charAt(1)+a:i.charAt(0)+a,n>0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join(\"\")}function s(t,e){for(var s=e[1].length-Math.abs(t.arrayBlockIndices[0])|0,u=new Array(t.arrayArgs.length),c=new Array(t.arrayArgs.length),f=0;f<t.arrayArgs.length;++f)c[f]=e[2*f],u[f]=e[2*f+1];for(var h=[],d=[],p=[],g=[],v=[],f=0;f<t.arrayArgs.length;++f){t.arrayBlockIndices[f]<0?(p.push(0),g.push(s),h.push(s),d.push(s+t.arrayBlockIndices[f])):(p.push(t.arrayBlockIndices[f]),g.push(t.arrayBlockIndices[f]+s),h.push(0),d.push(t.arrayBlockIndices[f]));for(var m=[],y=0;y<u[f].length;y++)p[f]<=u[f][y]&&u[f][y]<g[f]&&m.push(u[f][y]-p[f]);v.push(m)}for(var b=[\"SS\"],x=[\"'use strict'\"],_=[],y=0;s>y;++y)_.push([\"s\",y,\"=SS[\",y,\"]\"].join(\"\"));for(var f=0;f<t.arrayArgs.length;++f){b.push(\"a\"+f),b.push(\"t\"+f),b.push(\"p\"+f);for(var y=0;s>y;++y)_.push([\"t\",f,\"p\",y,\"=t\",f,\"[\",p[f]+y,\"]\"].join(\"\"));for(var y=0;y<Math.abs(t.arrayBlockIndices[f]);++y)_.push([\"t\",f,\"b\",y,\"=t\",f,\"[\",h[f]+y,\"]\"].join(\"\"))}for(var f=0;f<t.scalarArgs.length;++f)b.push(\"Y\"+f);\n",
"if(t.shapeArgs.length>0&&_.push(\"shape=SS.slice(0)\"),t.indexArgs.length>0){for(var w=new Array(s),f=0;s>f;++f)w[f]=\"0\";_.push([\"index=[\",w.join(\",\"),\"]\"].join(\"\"))}for(var f=0;f<t.offsetArgs.length;++f){for(var k=t.offsetArgs[f],A=[],y=0;y<k.offset.length;++y)0!==k.offset[y]&&A.push(1===k.offset[y]?[\"t\",k.array,\"p\",y].join(\"\"):[k.offset[y],\"*t\",k.array,\"p\",y].join(\"\"));_.push(0===A.length?\"q\"+f+\"=0\":[\"q\",f,\"=\",A.join(\"+\")].join(\"\"))}var M=l([].concat(t.pre.thisVars).concat(t.body.thisVars).concat(t.post.thisVars));_=_.concat(M),x.push(\"var \"+_.join(\",\"));for(var f=0;f<t.arrayArgs.length;++f)x.push(\"p\"+f+\"|=0\");t.pre.body.length>3&&x.push(a(t.pre,t,c));var L=a(t.body,t,c),E=i(v);x.push(s>E?n(E,v[0],t,L):r(v[0],t,L)),t.post.body.length>3&&x.push(a(t.post,t,c)),t.debug&&console.log(\"-----Generated cwise routine for \",e,\":\\n\"+x.join(\"\\n\")+\"\\n----------\");var C=[t.funcName||\"unnamed\",\"_cwise_loop_\",u[0].join(\"s\"),\"m\",E,o(c)].join(\"\"),j=new Function([\"function \",C,\"(\",b.join(\",\"),\"){\",x.join(\"\\n\"),\"} return \",C].join(\"\"));return j()}var l=t(\"uniq\");e.exports=s},{uniq:319}],318:[function(t,e){\"use strict\";function r(t){var e=[\"'use strict'\",\"var CACHED={}\"],r=[],i=t.funcName+\"_cwise_thunk\";e.push([\"return function \",i,\"(\",t.shimArgs.join(\",\"),\"){\"].join(\"\"));for(var a=[],o=[],s=[[\"array\",t.arrayArgs[0],\".shape.slice(\",Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?\",\"+t.arrayBlockIndices[0]+\")\":\")\"].join(\"\")],l=[],u=[],c=0;c<t.arrayArgs.length;++c){var f=t.arrayArgs[c];r.push([\"t\",f,\"=array\",f,\".dtype,\",\"r\",f,\"=array\",f,\".order\"].join(\"\")),a.push(\"t\"+f),a.push(\"r\"+f),o.push(\"t\"+f),o.push(\"r\"+f+\".join()\"),s.push(\"array\"+f+\".data\"),s.push(\"array\"+f+\".stride\"),s.push(\"array\"+f+\".offset|0\"),c>0&&(l.push(\"array\"+t.arrayArgs[0]+\".shape.length===array\"+f+\".shape.length+\"+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[c]))),u.push(\"array\"+t.arrayArgs[0]+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[0])+\"]===array\"+f+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[c])+\"]\"))}t.arrayArgs.length>1&&(e.push(\"if (!(\"+l.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same dimensionality!')\"),e.push(\"for(var shapeIndex=array\"+t.arrayArgs[0]+\".shape.length-\"+Math.abs(t.arrayBlockIndices[0])+\"; shapeIndex-->0;) {\"),e.push(\"if (!(\"+u.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same shape!')\"),e.push(\"}\"));for(var c=0;c<t.scalarArgs.length;++c)s.push(\"scalar\"+t.scalarArgs[c]);r.push([\"type=[\",o.join(\",\"),\"].join()\"].join(\"\")),r.push(\"proc=CACHED[type]\"),e.push(\"var \"+r.join(\",\")),e.push([\"if(!proc){\",\"CACHED[type]=proc=compile([\",a.join(\",\"),\"])}\",\"return proc(\",s.join(\",\"),\")}\"].join(\"\")),t.debug&&console.log(\"-----Generated thunk:\\n\"+e.join(\"\\n\")+\"\\n----------\");var h=new Function(\"compile\",e.join(\"\\n\"));return h(n.bind(void 0,t))}var n=t(\"./compile.js\");e.exports=r},{\"./compile.js\":317}],319:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],320:[function(t,e){\"use strict\";function r(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r}e.exports=r;var n=t(\"./lib/zc-core\")},{\"./lib/zc-core\":315}],321:[function(t,e){\"use strict\";function r(t,e){var r=t.length,n=[\"'use strict';\"],i=\"surfaceNets\"+t.join(\"_\")+\"d\"+e;n.push(\"var contour=genContour({\",\"order:[\",t.join(),\"],\",\"scalarArguments: 3,\",\"phase:function phaseFunc(p,a,b,c) { return (p > c)|0 },\"),\"generic\"===e&&n.push(\"getters:[0],\");for(var s=[],l=[],u=0;r>u;++u)s.push(\"d\"+u),l.push(\"d\"+u);for(var u=0;1<<r>u;++u)s.push(\"v\"+u),l.push(\"v\"+u);for(var u=0;1<<r>u;++u)s.push(\"p\"+u),l.push(\"p\"+u);s.push(\"a\",\"b\",\"c\"),l.push(\"a\",\"c\"),n.push(\"vertex:function vertexFunc(\",s.join(),\"){\");for(var c=[],u=0;1<<r>u;++u)c.push(\"(p\"+u+\"<<\"+u+\")\");n.push(\"var m=(\",c.join(\"+\"),\")|0;if(m===0||m===\",(1<<(1<<r))-1,\"){return}\");var f=[],h=[];128>=1<<(1<<r)?(n.push(\"switch(m){\"),h=n):n.push(\"switch(m>>>7){\");for(var u=0;1<<(1<<r)>u;++u){if(1<<(1<<r)>128&&u%128===0){f.length>0&&h.push(\"}}\");var d=\"vExtra\"+f.length;n.push(\"case \",u>>>7,\":\",d,\"(m&0x7f,\",l.join(),\");break;\"),h=[\"function \",d,\"(m,\",l.join(),\"){switch(m){\"],f.push(h)}h.push(\"case \",127&u,\":\");for(var p=new Array(r),g=new Array(r),v=new Array(r),m=new Array(r),y=0,b=0;r>b;++b)p[b]=[],g[b]=[],v[b]=0,m[b]=0;for(var b=0;1<<r>b;++b)for(var x=0;r>x;++x){var _=b^1<<x;if(!(_>b)&&!(u&1<<_)!=!(u&1<<b)){var w=1;u&1<<_?g[x].push(\"v\"+_+\"-v\"+b):(g[x].push(\"v\"+b+\"-v\"+_),w=-w),0>w?(p[x].push(\"-v\"+b+\"-v\"+_),v[x]+=2):(p[x].push(\"v\"+b+\"+v\"+_),v[x]-=2),y+=1;for(var k=0;r>k;++k)k!==x&&(_&1<<k?m[k]+=1:m[k]-=1)}}for(var A=[],x=0;r>x;++x)if(0===p[x].length)A.push(\"d\"+x+\"-0.5\");else{var M=\"\";v[x]<0?M=v[x]+\"*c\":v[x]>0&&(M=\"+\"+v[x]+\"*c\");var L=.5*(p[x].length/y),E=.5+.5*(m[x]/y);A.push(\"d\"+x+\"-\"+E+\"-\"+L+\"*(\"+p[x].join(\"+\")+M+\")/(\"+g[x].join(\"+\")+\")\")}h.push(\"a.push([\",A.join(),\"]);\",\"break;\")}n.push(\"}},\"),f.length>0&&h.push(\"}}\");for(var C=[],u=0;1<<r-1>u;++u)C.push(\"v\"+u);C.push(\"c0\",\"c1\",\"p0\",\"p1\",\"a\",\"b\",\"c\"),n.push(\"cell:function cellFunc(\",C.join(),\"){\");var j=o(r-1);n.push(\"if(p0){b.push(\",j.map(function(t){return\"[\"+t.map(function(t){return\"v\"+t})+\"]\"}).join(),\")}else{b.push(\",j.map(function(t){var e=t.slice();return e.reverse(),\"[\"+e.map(function(t){return\"v\"+t})+\"]\"}).join(),\")}}});function \",i,\"(array,level){var verts=[],cells=[];contour(array,verts,cells,level);return {positions:verts,cells:cells};} return \",i,\";\");for(var u=0;u<f.length;++u)n.push(f[u].join(\"\"));var S=new Function(\"genContour\",n.join(\"\"));return S(a)}function n(t,e){for(var r=s(t,e),n=r.length,i=new Array(n),a=new Array(n),o=0;n>o;++o)i[o]=[r[o]],a[o]=[o];return{positions:i,cells:a}}function i(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return n(t,e);var i=t.order.join()+\"-\"+t.dtype,a=l[i],e=+e||0;return a||(a=l[i]=r(t.order,t.dtype)),a(t,e)}e.exports=i;var a=t(\"ndarray-extract-contour\"),o=t(\"triangulate-hypercube\"),s=t(\"zero-crossings\"),l={}},{\"ndarray-extract-contour\":306,\"triangulate-hypercube\":314,\"zero-crossings\":320}],322:[function(t,e){\"use strict\";function r(t,e,r){this.lo=t,this.hi=e,this.pixelsPerDataUnit=r}function n(t,e,r,n,i){for(var a=0;3>a;++a){for(var o=d,s=p,l=0;3>l;++l)s[l]=o[l]=r[l];s[3]=o[3]=1,s[a]+=1,c(s,s,e),s[3]<0&&(t[a]=1/0),o[a]-=1,c(o,o,e),o[3]<0&&(t[a]=1/0);var u=(o[0]/o[3]-s[0]/s[3])*n,f=(o[1]/o[3]-s[1]/s[3])*i;t[a]=.25*Math.sqrt(u*u+f*f)}return t}function i(t,e,r,i,c){{var d=e.model||f,p=e.view||f,m=e.projection||f,y=t.bounds,c=c||s(d,p,m,y),b=c.axis;c.edges}l(h,p,d),l(h,m,h);for(var x=g,_=0;3>_;++_)x[_].lo=1/0,x[_].hi=-1/0,x[_].pixelsPerDataUnit=1/0;var w=a(u(h,h));u(h,h);for(var k=0;3>k;++k){var A=(k+1)%3,M=(k+2)%3,L=v;t:for(var _=0;2>_;++_){var E=[];if(b[k]<0!=!!_){L[k]=y[_][k];for(var C=0;2>C;++C){L[A]=y[C^_][A];for(var j=0;2>j;++j)L[M]=y[j^C^_][M],E.push(L.slice())}for(var C=0;C<w.length;++C){if(0===E.length)continue t;E=o.positive(E,w[C])}for(var C=0;C<E.length;++C)for(var M=E[C],S=n(v,h,M,r,i),j=0;3>j;++j)x[j].lo=Math.min(x[j].lo,M[j]),x[j].hi=Math.max(x[j].hi,M[j]),j!==k&&(x[j].pixelsPerDataUnit=Math.min(x[j].pixelsPerDataUnit,Math.abs(S[j])))}}}return x}e.exports=i;var a=t(\"extract-frustum-planes\"),o=t(\"split-polygon\"),s=t(\"./lib/cube.js\"),l=t(\"gl-mat4/multiply\"),u=t(\"gl-mat4/transpose\"),c=t(\"gl-vec4/transformMat4\"),f=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=new Float32Array(16),d=[0,0,0,1],p=[0,0,0,1],g=[new r(1/0,-1/0,1/0),new r(1/0,-1/0,1/0),new r(1/0,-1/0,1/0)],v=[0,0,0]},{\"./lib/cube.js\":208,\"extract-frustum-planes\":215,\"gl-mat4/multiply\":147,\"gl-mat4/transpose\":155,\"gl-vec4/transformMat4\":222,\"split-polygon\":229}],323:[function(t,e){\"use strict\";function r(t){var e=t.getParameter(t.FRAMEBUFFER_BINDING),r=t.getParameter(t.RENDERBUFFER_BINDING),n=t.getParameter(t.TEXTURE_BINDING_2D);return[e,r,n]}function n(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function i(t,e){var r=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);m=new Array(r+1);for(var n=0;r>=n;++n){for(var i=new Array(r),a=0;n>a;++a)i[a]=t.COLOR_ATTACHMENT0+a;for(var a=n;r>a;++a)i[a]=t.NONE;m[n]=i}}function a(t){switch(t){case d:throw new Error(\"gl-fbo: Framebuffer unsupported\");case p:throw new Error(\"gl-fbo: Framebuffer incomplete attachment\");case g:throw new Error(\"gl-fbo: Framebuffer incomplete dimensions\");case v:throw new Error(\"gl-fbo: Framebuffer incomplete missing attachment\");default:throw new Error(\"gl-fbo: Framebuffer failed for unspecified reason\")}}function o(t,e,r,n,i,a){if(!n)return null;var o=h(t,e,r,i,n);return o.magFilter=t.NEAREST,o.minFilter=t.NEAREST,o.mipSamples=1,o.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,a,t.TEXTURE_2D,o.handle,0),o}function s(t,e,r,n,i){var a=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,a),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,i,t.RENDERBUFFER,a),a}function l(t){var e=r(t.gl),i=t.gl,l=t.handle=i.createFramebuffer(),u=t._shape[0],c=t._shape[1],f=t.color.length,h=t._ext,d=t._useStencil,p=t._useDepth,g=t._colorType;i.bindFramebuffer(i.FRAMEBUFFER,l);for(var v=0;f>v;++v)t.color[v]=o(i,u,c,g,i.RGBA,i.COLOR_ATTACHMENT0+v);0===f?(t._color_rb=s(i,u,c,i.RGBA4,i.COLOR_ATTACHMENT0),h&&h.drawBuffersWEBGL(m[0])):f>1&&h.drawBuffersWEBGL(m[f]);var y=i.getExtension(\"WEBGL_depth_texture\");y?d?t.depth=o(i,u,c,y.UNSIGNED_INT_24_8_WEBGL,i.DEPTH_STENCIL,i.DEPTH_STENCIL_ATTACHMENT):p&&(t.depth=o(i,u,c,i.UNSIGNED_SHORT,i.DEPTH_COMPONENT,i.DEPTH_ATTACHMENT)):p&&d?t._depth_rb=s(i,u,c,i.DEPTH_STENCIL,i.DEPTH_STENCIL_ATTACHMENT):p?t._depth_rb=s(i,u,c,i.DEPTH_COMPONENT16,i.DEPTH_ATTACHMENT):d&&(t._depth_rb=s(i,u,c,i.STENCIL_INDEX,i.STENCIL_ATTACHMENT));var b=i.checkFramebufferStatus(i.FRAMEBUFFER);if(b!==i.FRAMEBUFFER_COMPLETE){t._destroyed=!0,i.bindFramebuffer(i.FRAMEBUFFER,null),i.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(i.deleteRenderbuffer(t._depth_rb),t._depth_rb=null);for(var v=0;v<t.color.length;++v)t.color[v].dispose(),t.color[v]=null;t._color_rb&&(i.deleteRenderbuffer(t._color_rb),t._color_rb=null),n(i,e),a(b)}n(i,e)}function u(t,e,r,n,i,a,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var u=0;i>u;++u)this.color[u]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=n,this._useDepth=a,this._useStencil=o;var c=this,f=[0|e,0|r];Object.defineProperties(f,{0:{get:function(){return c._shape[0]},set:function(t){return c.width=t}},1:{get:function(){return c._shape[1]},set:function(t){return c.height=t}}}),this._shapeVector=f,l(this)}function c(t,e,i){if(t._destroyed)throw new Error(\"gl-fbo: Can't resize destroyed FBO\");if(t._shape[0]!==e||t._shape[1]!==i){var o=t.gl,s=o.getParameter(o.MAX_RENDERBUFFER_SIZE);if(0>e||e>s||0>i||i>s)throw new Error(\"gl-fbo: Can't resize FBO, invalid dimensions\");t._shape[0]=e,t._shape[1]=i;for(var l=r(o),u=0;u<t.color.length;++u)t.color[u].shape=t._shape;t._color_rb&&(o.bindRenderbuffer(o.RENDERBUFFER,t._color_rb),o.renderbufferStorage(o.RENDERBUFFER,o.RGBA4,t._shape[0],t._shape[1])),t.depth&&(t.depth.shape=t._shape),t._depth_rb&&(o.bindRenderbuffer(o.RENDERBUFFER,t._depth_rb),t._useDepth&&t._useStencil?o.renderbufferStorage(o.RENDERBUFFER,o.DEPTH_STENCIL,t._shape[0],t._shape[1]):t._useDepth?o.renderbufferStorage(o.RENDERBUFFER,o.DEPTH_COMPONENT16,t._shape[0],t._shape[1]):t._useStencil&&o.renderbufferStorage(o.RENDERBUFFER,o.STENCIL_INDEX,t._shape[0],t._shape[1])),o.bindFramebuffer(o.FRAMEBUFFER,t.handle);var c=o.checkFramebufferStatus(o.FRAMEBUFFER);c!==o.FRAMEBUFFER_COMPLETE&&(t.dispose(),n(o,l),a(c)),n(o,l)}}function f(t,e,r,n){d||(d=t.FRAMEBUFFER_UNSUPPORTED,p=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,g=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,v=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var a=t.getExtension(\"WEBGL_draw_buffers\");if(!m&&a&&i(t,a),Array.isArray(e)&&(n=r,r=0|e[1],e=0|e[0]),\"number\"!=typeof e)throw new Error(\"gl-fbo: Missing shape parameter\");var o=t.getParameter(t.MAX_RENDERBUFFER_SIZE);if(0>e||e>o||0>r||r>o)throw new Error(\"gl-fbo: Parameters are too large for FBO\");n=n||{};var s=1;if(\"color\"in n){if(s=Math.max(0|n.color,0),0>s)throw new Error(\"gl-fbo: Must specify a nonnegative number of colors\");if(s>1){if(!a)throw new Error(\"gl-fbo: Multiple draw buffer extension not supported\");if(s>t.getParameter(a.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error(\"gl-fbo: Context does not support \"+s+\" draw buffers\")}}var l=t.UNSIGNED_BYTE,c=t.getExtension(\"OES_texture_float\");if(n.float&&s>0){if(!c)throw new Error(\"gl-fbo: Context does not support floating point textures\");l=t.FLOAT}else n.preferFloat&&s>0&&c&&(l=t.FLOAT);var f=!0;\"depth\"in n&&(f=!!n.depth);var h=!1;return\"stencil\"in n&&(h=!!n.stencil),new u(t,e,r,l,s,f,h,a)}var h=t(\"gl-texture2d\");e.exports=f;var d,p,g,v,m=null,y=u.prototype;Object.defineProperties(y,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(t){if(Array.isArray(t)||(t=[0|t,0|t]),2!==t.length)throw new Error(\"gl-fbo: Shape vector must be length 2\");var e=0|t[0],r=0|t[1];return c(this,e,r),[e,r]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(t){return t=0|t,c(this,t,this._shape[1]),t},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(t){return t=0|t,c(this,this._shape[0],t),t},enumerable:!1}}),y.bind=function(){if(!this._destroyed){var t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,this.handle),t.viewport(0,0,this._shape[0],this._shape[1])}},y.dispose=function(){if(!this._destroyed){this._destroyed=!0;var t=this.gl;t.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(t.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var e=0;e<this.color.length;++e)this.color[e].dispose(),this.color[e]=null;this._color_rb&&(t.deleteRenderbuffer(this._color_rb),this._color_rb=null)}}},{\"gl-texture2d\":327}],324:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],325:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],326:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":324,buffer:1,dup:99}],327:[function(t,e,r){arguments[4][133][0].apply(r,arguments)},{dup:133,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":326}],328:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],329:[function(t,e){e.exports=t(\"cwise-compiler\")},{\"cwise-compiler\":330}],330:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":332,dup:316}],331:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:333}],332:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":331,dup:318}],333:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],334:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],335:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":328,buffer:1,dup:99}],336:[function(t,e){\"use strict\";function r(t,e,r,n,i){this.coord=[t,e],this.id=r,this.value=n,this.distance=i}function n(t,e,r){this.gl=t,this.fbo=e,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}function i(t,e){var r=a(t,e),i=o.mallocUint8(e[0]*e[1]*4);return new n(t,r,i)}e.exports=i;var a=t(\"gl-fbo\"),o=t(\"typedarray-pool\"),s=t(\"ndarray\"),l=t(\"bit-twiddle\").nextPow2,u=t(\"cwise/lib/wrapper\")({args:[\"array\",{offset:[0,0,1],array:0},{offset:[0,0,2],array:0},{offset:[0,0,3],array:0},\"scalar\",\"scalar\",\"index\"],pre:{body:\"{this_closestD2=1e8,this_closestX=-1,this_closestY=-1}\",args:[],thisVars:[\"this_closestD2\",\"this_closestX\",\"this_closestY\"],localVars:[]},body:{body:\"{if(255>_inline_1_arg0_||255>_inline_1_arg1_||255>_inline_1_arg2_||255>_inline_1_arg3_){var _inline_1_l=_inline_1_arg4_-_inline_1_arg6_[0],_inline_1_a=_inline_1_arg5_-_inline_1_arg6_[1],_inline_1_f=_inline_1_l*_inline_1_l+_inline_1_a*_inline_1_a;_inline_1_f<this_closestD2&&(this_closestD2=_inline_1_f,this_closestX=_inline_1_arg6_[0],this_closestY=_inline_1_arg6_[1])}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg3_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg4_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg5_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg6_\",lvalue:!1,rvalue:!0,count:4}],thisVars:[\"this_closestD2\",\"this_closestX\",\"this_closestY\"],localVars:[\"_inline_1_a\",\"_inline_1_f\",\"_inline_1_l\"]},post:{body:\"{return[this_closestX,this_closestY,this_closestD2]}\",args:[],thisVars:[\"this_closestD2\",\"this_closestX\",\"this_closestY\"],localVars:[]},debug:!1,funcName:\"cwise\",blockSize:64}),c=n.prototype;Object.defineProperty(c,\"shape\",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],r=this.fbo.shape[1];if(r*e*4>this.buffer.length){o.free(this.buffer);for(var n=this.buffer=o.mallocUint8(l(r*e*4)),i=0;r*e*4>i;++i)n[i]=255}return t}}}),c.begin=function(){{var t=this.gl;this.shape}t&&(this.fbo.bind(),t.clearColor(1,1,1,1),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT))},c.end=function(){var t=this.gl;t&&(t.bindFramebuffer(t.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},c.query=function(t,e,n){if(!this.gl)return null;var i=this.fbo.shape.slice();t=0|t,e=0|e,\"number\"!=typeof n&&(n=1);var a=0|Math.min(Math.max(t-n,0),i[0]),o=0|Math.min(Math.max(t+n,0),i[0]),l=0|Math.min(Math.max(e-n,0),i[1]),c=0|Math.min(Math.max(e+n,0),i[1]);if(a>=o||l>=c)return null;var f=[o-a,c-l],h=s(this.buffer,[f[0],f[1],4],[4,4*i[0],1],4*(a+i[0]*l)),d=u(h.hi(f[0],f[1],1),n,n),p=d[0],g=d[1];if(0>p||Math.pow(this.radius,2)<d[2])return null;var v=h.get(p,g,0),m=h.get(p,g,1),y=h.get(p,g,2),b=h.get(p,g,3);return new r(p+a|0,g+l|0,v,[m,y,b],Math.sqrt(d[2]))},c.dispose=function(){this.gl&&(this.fbo.dispose(),o.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))}},{\"bit-twiddle\":328,\"cwise/lib/wrapper\":329,\"gl-fbo\":323,ndarray:560,\"typedarray-pool\":335}],337:[function(t,e,r){arguments[4][100][0].apply(r,arguments)},{\"./lib/create-attributes\":338,\"./lib/create-uniforms\":339,\"./lib/reflect\":340,\"./lib/runtime-reflect\":341,\"./lib/shader-cache\":342,dup:100}],338:[function(t,e,r){arguments[4][101][0].apply(r,arguments)},{dup:101}],339:[function(t,e,r){arguments[4][102][0].apply(r,arguments)},{\"./reflect\":340,dup:102}],340:[function(t,e,r){arguments[4][103][0].apply(r,arguments)},{dup:103}],341:[function(t,e,r){arguments[4][104][0].apply(r,arguments)},{dup:104}],342:[function(t,e,r){arguments[4][105][0].apply(r,arguments)},{dup:105,\"weakmap-shim\":345}],343:[function(t,e,r){arguments[4][106][0].apply(r,arguments)},{\"./hidden-store.js\":344,dup:106}],344:[function(t,e,r){arguments[4][107][0].apply(r,arguments)},{dup:107}],345:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{\"./create-store.js\":343,dup:108}],346:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":349}],347:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],348:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],349:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":347,buffer:1,dup:99}],350:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],351:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":350,dup:110}],352:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":350,dup:111}],353:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":351,\"./lib/vao-native.js\":352,dup:112}],354:[function(t,e){\"use strict\";var r=t(\"gl-shader\"),n=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position, color;\\nattribute float weight;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 coordinates[3];\\nuniform vec4 colors[3];\\nuniform vec2 screenShape;\\nuniform float lineWidth;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n vec3 vertexPosition = mix(coordinates[0],\\n mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));\\n\\n vec4 clipPos = projection * view * model * vec4(vertexPosition, 1.0);\\n vec2 clipOffset = (projection * view * model * vec4(color, 0.0)).xy;\\n vec2 delta = weight * clipOffset * screenShape;\\n vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;\\n\\n gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);\\n fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];\\n}\\n\",i=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n gl_FragColor = fragColor;\\n}\";e.exports=function(t){return r(t,n,i,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec3\"},{name:\"weight\",type:\"float\"}])}},{\"gl-shader\":337}],355:[function(t,e){\"use strict\";function r(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}function n(t,e){function n(t,e,r,n,i,a){var o=[t,e,r,0,0,0,1];o[n+3]=1,o[n]=i,s.push.apply(s,o),o[6]=-1,s.push.apply(s,o),o[n]=a,s.push.apply(s,o),s.push.apply(s,o),o[6]=1,s.push.apply(s,o),o[n]=i,s.push.apply(s,o)}var s=[];n(0,0,0,0,0,1),n(0,0,0,1,0,1),n(0,0,0,2,0,1),n(1,0,0,1,-1,1),n(1,0,0,2,-1,1),n(0,1,0,0,-1,1),n(0,1,0,2,-1,1),n(0,0,1,0,-1,1),n(0,0,1,1,-1,1);var l=i(t,s),u=a(t,[{type:t.FLOAT,buffer:l,size:3,offset:0,stride:28},{type:t.FLOAT,buffer:l,size:3,offset:12,stride:28},{type:t.FLOAT,buffer:l,size:1,offset:24,stride:28}]),c=o(t);c.attributes.position.location=0,c.attributes.color.location=1,c.attributes.weight.location=2;var f=new r(t,l,u,c);return f.update(e),f}var i=t(\"gl-buffer\"),a=t(\"gl-vao\"),o=t(\"./shaders/index\");e.exports=n;var s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],l=r.prototype,u=[0,0,0],c=[0,0,0],f=[0,0];l.isTransparent=function(){return!1},l.drawTransparent=function(){},l.draw=function(t){var e=this.gl,r=this.vao,n=this.shader;r.bind(),n.bind();var i,a=t.model||s,o=t.view||s,l=t.projection||s;this.axes&&(i=this.axes.lastCubeProps.axis);for(var h=u,d=c,p=0;3>p;++p)i&&i[p]<0?(h[p]=this.bounds[0][p],d[p]=this.bounds[1][p]):(h[p]=this.bounds[1][p],d[p]=this.bounds[0][p]);f[0]=e.drawingBufferWidth,f[1]=e.drawingBufferHeight,n.uniforms.model=a,n.uniforms.view=o,n.uniforms.projection=l,n.uniforms.coordinates=[this.position,h,d],n.uniforms.colors=this.colors,n.uniforms.screenShape=f;for(var p=0;3>p;++p)n.uniforms.lineWidth=this.lineWidth[p]*this.pixelRatio,this.enabled[p]&&(r.draw(e.TRIANGLES,6,6*p),this.drawSides[p]&&r.draw(e.TRIANGLES,12,18+12*p));r.unbind()},l.update=function(t){t&&(\"bounds\"in t&&(this.bounds=t.bounds),\"position\"in t&&(this.position=t.position),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"colors\"in t&&(this.colors=t.colors),\"enabled\"in t&&(this.enabled=t.enabled),\"drawSides\"in t&&(this.drawSides=t.drawSides))},l.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{\"./shaders/index\":354,\"gl-buffer\":346,\"gl-vao\":353}],356:[function(t,e){\"use strict\";function r(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function n(t,e){var r=null;try{r=t.getContext(\"webgl\",e),r||(r=t.getContext(\"experimental-webgl\",e))}catch(t){return null}return r}function i(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(0>e){var r=Math.round(Math.pow(10,-e));return Math.ceil(t*r)/r}if(e>0){var r=Math.round(Math.pow(10,e));return Math.ceil(t/r)*r}return Math.ceil(t)}function a(t){return\"boolean\"==typeof t?t:!0}function o(t){function e(){if(!_&&q.autoResize){var t=w.parentNode,e=1,r=1;t&&t!==document.body?(e=t.clientWidth,r=t.clientHeight):(e=window.innerWidth,r=window.innerHeight);var n=0|Math.ceil(e*q.pixelRatio),i=0|Math.ceil(r*q.pixelRatio);if(n!==w.width||i!==w.height){w.width=n,w.height=i;var a=w.style;a.position=a.position||\"absolute\",a.left=\"0px\",a.top=\"0px\",a.width=e+\"px\",a.height=r+\"px\",N=!0}}}function o(){for(var t=I.length,e=R.length,r=0;e>r;++r)D[r]=0;t:for(var r=0;t>r;++r){var n=I[r],i=n.pickSlots;if(i){for(var a=0;e>a;++a)if(D[a]+i<255){O[r]=a,n.setPickBase(D[a]+1),D[a]+=i;continue t}var o=f(A,H);O[r]=e,R.push(o),D.push(i),n.setPickBase(1),e+=1}else O[r]=-1}for(;e>0&&0===D[e-1];)D.pop(),R.pop().dispose()}function m(){return q.contextLost?!0:void(A.isContextLost()&&(q.contextLost=!0,q.mouseListener.enabled=!1,q.selection.object=null,q.oncontextloss&&q.oncontextloss()))}function y(){if(!m()){A.colorMask(!0,!0,!0,!0),A.depthMask(!0),A.disable(A.BLEND),A.enable(A.DEPTH_TEST);for(var t=I.length,e=R.length,r=0;e>r;++r){var n=R[r];n.shape=G,n.begin();for(var i=0;t>i;++i)if(O[i]===r){var a=I[i];a.drawPick&&(a.pixelRatio=1,a.drawPick(V))}n.end()}}}function b(){if(!m()){e();var t=q.camera.tick();V.view=q.camera.matrix,N=N||t,B=B||t,T.pixelRatio=q.pixelRatio,P.pixelRatio=q.pixelRatio;var r=I.length,n=X[0],a=X[1];n[0]=n[1]=n[2]=1/0,a[0]=a[1]=a[2]=-1/0;for(var o=0;r>o;++o){var s=I[o];s.pixelRatio=q.pixelRatio,s.axes=q.axes,N=N||!!s.dirty,B=B||!!s.dirty;var l=s.bounds;if(l)for(var c=l[0],f=l[1],h=0;3>h;++h)n[h]=Math.min(n[h],c[h]),a[h]=Math.max(a[h],f[h])}var p=q.bounds;if(q.autoBounds)for(var h=0;3>h;++h){if(a[h]<n[h])n[h]=-1,a[h]=1;else{n[h]===a[h]&&(n[h]-=1,a[h]+=1);var v=.05*(a[h]-n[h]);n[h]=n[h]-v,a[h]=a[h]+v}p[0][h]=n[h],p[1][h]=a[h]}for(var b=!1,h=0;3>h;++h)b=b||Z[0][h]!==p[0][h]||Z[1][h]!==p[1][h],Z[0][h]=p[0][h],Z[1][h]=p[1][h];if(b){for(var x=[0,0,0],o=0;3>o;++o)x[o]=i((p[1][o]-p[0][o])/10);T.update(T.autoTicks?{bounds:p,tickSpacing:x}:{bounds:p})}B=B||b,N=N||b;var _=A.drawingBufferWidth,w=A.drawingBufferHeight;H[0]=_,H[1]=w,G[0]=0|Math.max(_/q.pixelRatio,1),G[1]=0|Math.max(w/q.pixelRatio,1),g(F,q.fovy,_/w,q.zNear,q.zFar);for(var o=0;16>o;++o)U[o]=0;U[15]=1;for(var k=0,o=0;3>o;++o)k=Math.max(k,p[1][o]-p[0][o]);for(var o=0;3>o;++o)U[5*o]=q.autoScale?q.aspect[o]/(p[1][o]-p[0][o]):1/k,q.autoCenter&&(U[12+o]=.5*-U[5*o]*(p[0][o]+p[1][o]));for(var o=0;r>o;++o){var s=I[o];s.axesBounds=p,q.clipToBounds&&(s.clipBounds=p)}if(L.object&&(P.position=q.snapToData?L.dataCoordinate:L.dataPosition,P.bounds=p),B&&(B=!1,y()),N){q.axesPixels=u(q.axes,V,_,w),q.onrender&&q.onrender(),A.bindFramebuffer(A.FRAMEBUFFER,null),A.viewport(0,0,_,w);var M=q.clearColor;A.clearColor(M[0],M[1],M[2],M[3]),A.clear(A.COLOR_BUFFER_BIT|A.DEPTH_BUFFER_BIT),A.depthMask(!0),A.colorMask(!0,!0,!0,!0),A.enable(A.DEPTH_TEST),A.depthFunc(A.LEQUAL),A.disable(A.BLEND),A.disable(A.CULL_FACE);var j=!1;T.enable&&(j=j||T.isTransparent(),T.draw(V)),P.axes=T,L.object&&P.draw(V),A.disable(A.CULL_FACE);for(var o=0;r>o;++o){var s=I[o];s.axes=T,s.pixelRatio=q.pixelRatio,s.isOpaque&&s.isOpaque()&&s.draw(V),s.isTransparent&&s.isTransparent()&&(j=!0)}if(j){E.shape=H,E.bind(),A.clear(A.DEPTH_BUFFER_BIT),A.colorMask(!1,!1,!1,!1),A.depthMask(!0),A.depthFunc(A.LESS),T.enable&&T.isTransparent()&&T.drawTransparent(V);for(var o=0;r>o;++o){var s=I[o];s.isOpaque&&s.isOpaque()&&s.draw(V)}A.enable(A.BLEND),A.blendEquation(A.FUNC_ADD),A.blendFunc(A.ONE,A.ONE_MINUS_SRC_ALPHA),A.colorMask(!0,!0,!0,!0),A.depthMask(!1),A.clearColor(0,0,0,0),A.clear(A.COLOR_BUFFER_BIT),T.isTransparent()&&T.drawTransparent(V);for(var o=0;r>o;++o){var s=I[o];s.isTransparent&&s.isTransparent()&&s.drawTransparent(V)}A.bindFramebuffer(A.FRAMEBUFFER,null),A.blendFunc(A.ONE,A.ONE_MINUS_SRC_ALPHA),A.disable(A.DEPTH_TEST),C.bind(),E.color[0].bind(0),C.uniforms.accumBuffer=0,d(A),A.disable(A.BLEND)}N=!1;for(var o=0;r>o;++o)I[o].dirty=!1}}}function x(){_||q.contextLost||(requestAnimationFrame(x),b())}t=t||{};var _=!1,w=(t.pixelRatio||parseFloat(window.devicePixelRatio),t.canvas);if(!w)if(w=document.createElement(\"canvas\"),t.container){var k=t.container;k.appendChild(w)}else document.body.appendChild(w);var A=t.gl;if(A||(A=n(w,t.glOptions||{premultipliedAlpha:!0,antialias:!0})),!A)throw new Error(\"webgl not supported\");var M=t.bounds||[[-10,-10,-10],[10,10,10]],L=new r,E=h(A,[A.drawingBufferWidth,A.drawingBufferHeight],{preferFloat:!0}),C=v(A),j=t.camera||{eye:[2,0,0],center:[0,0,0],up:[0,1,0],zoomMin:.1,zoomMax:100,mode:\"turntable\"},S=t.axes||{},T=l(A,S);T.enable=!S.disable;var z=t.spikes||{},P=c(A,z),I=[],O=[],D=[],R=[],N=!0,B=!0,F=new Array(16),U=new Array(16),V={view:null,projection:F,model:U},B=!0,H=[A.drawingBufferWidth,A.drawingBufferHeight],q={gl:A,contextLost:!1,pixelRatio:t.pixelRatio||parseFloat(window.devicePixelRatio),canvas:w,selection:L,camera:s(w,j),axes:T,axesPixels:null,spikes:P,bounds:M,objects:I,shape:H,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:a(t.autoResize),autoBounds:a(t.autoBounds),autoScale:!!t.autoScale,autoCenter:a(t.autoCenter),clipToBounds:a(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:V,oncontextloss:null,mouseListener:null},G=[A.drawingBufferWidth/q.pixelRatio|0,A.drawingBufferHeight/q.pixelRatio|0];q.autoResize&&e(),window.addEventListener(\"resize\",e),q.update=function(t){_||(t=t||{},N=!0,B=!0)},q.add=function(t){_||(t.axes=T,I.push(t),O.push(-1),N=!0,B=!0,o())},q.remove=function(t){if(!_){var e=I.indexOf(t);0>e||(I.splice(e,1),O.pop(),N=!0,B=!0,o())}},q.dispose=function(){if(!_&&(_=!0,window.removeEventListener(\"resize\",e),w.removeEventListener(\"webglcontextlost\",m),q.mouseListener.enabled=!1,!q.contextLost)){T.dispose(),P.dispose();for(var t=0;t<I.length;++t)I[t].dispose();E.dispose();for(var t=0;t<R.length;++t)R[t].dispose();C.dispose(),A=null,T=null,P=null,I=[]}};var Y=!1,W=0;q.mouseListener=p(w,function(t,e,r){if(!_){var n=R.length,i=I.length,a=L.object;L.distance=1/0,L.mouse[0]=e,L.mouse[1]=r,L.object=null,L.screen=null,L.dataCoordinate=L.dataPosition=null;var o=!1;if(t)Y=!0;else{Y&&(B=!0),Y=!1;for(var s=0;n>s;++s){var l=R[s].query(e,G[1]-r-1,q.pickRadius);if(l){if(l.distance>L.distance)continue;for(var u=0;i>u;++u){var c=I[u];if(O[u]===s){var f=c.pick(l);f&&(L.screen=l.coord,L.distance=l.distance,L.object=c,L.index=f.distance,L.dataPosition=f.position,L.dataCoordinate=f.dataCoordinate,L.data=f,o=!0)}}}}}a&&a!==L.object&&(a.highlight&&a.highlight(null),N=!0),L.object&&(L.object.highlight&&L.object.highlight(L.data),N=!0),o=o||L.object!==a,o&&q.onselect&&q.onselect(L),1&t&&!(1&W)&&q.onclick&&q.onclick(L),W=t}}),w.addEventListener(\"webglcontextlost\",m);var X=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],Z=[X[0].slice(),X[1].slice()];return x(),q.redraw=function(){_||(N=!0,b())},q}e.exports=o;var s=t(\"3d-view-controls\"),l=t(\"gl-axes3d\"),u=t(\"gl-axes3d/properties\"),c=t(\"gl-spikes3d\"),f=t(\"gl-select-static\"),h=t(\"gl-fbo\"),d=t(\"a-big-triangle\"),p=t(\"mouse-change\"),g=t(\"gl-mat4/perspective\"),v=t(\"./lib/shader\")},{\"./lib/shader\":194,\"3d-view-controls\":195,\"a-big-triangle\":205,\"gl-axes3d\":206,\"gl-axes3d/properties\":322,\"gl-fbo\":323,\"gl-mat4/perspective\":148,\"gl-select-static\":336,\"gl-spikes3d\":355,\"mouse-change\":533}],357:[function(t,e){\"use strict\";function r(t,e){var r=i[e];if(r||(r=i[e]={}),t in r)return r[t];for(var a=n(t,{textAlign:\"center\",textBaseline:\"middle\",lineHeight:1,font:e}),o=n(t,{triangles:!0,textAlign:\"center\",textBaseline:\"middle\",lineHeight:1,font:e}),s=[[1/0,1/0],[-1/0,-1/0]],l=0;l<a.positions.length;++l)for(var u=a.positions[l],c=0;2>c;++c)s[0][c]=Math.min(s[0][c],u[c]),s[1][c]=Math.max(s[1][c],u[c]);return r[t]=[o,a,s]}var n=t(\"vectorize-text\");e.exports=r;var i={}},{\"vectorize-text\":376}],358:[function(t,e,r){function n(t,e){var r=i(t,e),n=r.attributes;return n.position.location=0,n.color.location=1,n.glyph.location=2,n.id.location=3,r\n",
"}var i=t(\"gl-shader\"),a=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\n\\nuniform vec4 highlightId;\\nuniform float highlightScale;\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if(any(lessThan(position, clipBounds[0])) || \\n any(greaterThan(position, clipBounds[1])) ) {\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float scale = 1.0;\\n if(distance(highlightId, id) < 0.0001) {\\n scale = highlightScale;\\n }\\n\\n vec4 worldPosition = model * vec4(position, 1);\\n vec4 viewPosition = view * worldPosition;\\n viewPosition = viewPosition / viewPosition.w;\\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\\n \\n gl_Position = clipPosition;\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = position;\\n }\\n}\",o=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float highlightScale, pixelRatio;\\nuniform vec4 highlightId;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if(any(lessThan(position, clipBounds[0])) || any(greaterThan(position, clipBounds[1]))) {\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float scale = pixelRatio;\\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\\n scale *= highlightScale;\\n }\\n\\n vec4 worldPosition = model * vec4(position, 1.0);\\n vec4 viewPosition = view * worldPosition;\\n vec4 clipPosition = projection * viewPosition;\\n clipPosition /= clipPosition.w;\\n \\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = position;\\n }\\n}\",s=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform float highlightScale;\\nuniform vec4 highlightId;\\nuniform vec3 axes[2];\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float scale, pixelRatio;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if(any(lessThan(position, clipBounds[0])) ||\\n any(greaterThan(position, clipBounds[1])) ) {\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float lscale = pixelRatio * scale;\\n if(distance(highlightId, id) < 0.0001) {\\n lscale *= highlightScale;\\n }\\n\\n vec4 clipCenter = projection * view * model * vec4(position, 1);\\n vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\\n vec4 clipPosition = projection * view * model * vec4(dataPosition, 1);\\n\\n gl_Position = clipPosition;\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = dataPosition;\\n }\\n}\\n\",l=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float opacity;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if(any(lessThan(dataCoordinate, fragClipBounds[0])) ||\\n any(greaterThan(dataCoordinate, fragClipBounds[1])) ) {\\n discard;\\n } else {\\n gl_FragColor = interpColor * opacity;\\n }\\n}\\n\",u=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float pickGroup;\\n\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if(any(lessThan(dataCoordinate, fragClipBounds[0])) || \\n any(greaterThan(dataCoordinate, fragClipBounds[1])) ) {\\n discard;\\n } else {\\n gl_FragColor = vec4(pickGroup, pickId.bgr);\\n }\\n}\",c=[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"glyph\",type:\"vec2\"},{name:\"id\",type:\"vec4\"}],f={vertex:a,fragment:l,attributes:c},h={vertex:o,fragment:l,attributes:c},d={vertex:s,fragment:l,attributes:c},p={vertex:a,fragment:u,attributes:c},g={vertex:o,fragment:u,attributes:c},v={vertex:s,fragment:u,attributes:c};r.createPerspective=function(t){return n(t,f)},r.createOrtho=function(t){return n(t,h)},r.createProject=function(t){return n(t,d)},r.createPickPerspective=function(t){return n(t,p)},r.createPickOrtho=function(t){return n(t,g)},r.createPickProject=function(t){return n(t,v)}},{\"gl-shader\":360}],359:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":375}],360:[function(t,e,r){arguments[4][100][0].apply(r,arguments)},{\"./lib/create-attributes\":361,\"./lib/create-uniforms\":362,\"./lib/reflect\":363,\"./lib/runtime-reflect\":364,\"./lib/shader-cache\":365,dup:100}],361:[function(t,e,r){arguments[4][101][0].apply(r,arguments)},{dup:101}],362:[function(t,e,r){arguments[4][102][0].apply(r,arguments)},{\"./reflect\":363,dup:102}],363:[function(t,e,r){arguments[4][103][0].apply(r,arguments)},{dup:103}],364:[function(t,e,r){arguments[4][104][0].apply(r,arguments)},{dup:104}],365:[function(t,e,r){arguments[4][105][0].apply(r,arguments)},{dup:105,\"weakmap-shim\":368}],366:[function(t,e,r){arguments[4][106][0].apply(r,arguments)},{\"./hidden-store.js\":367,dup:106}],367:[function(t,e,r){arguments[4][107][0].apply(r,arguments)},{dup:107}],368:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{\"./create-store.js\":366,dup:108}],369:[function(t,e,r){arguments[4][109][0].apply(r,arguments)},{dup:109}],370:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":369,dup:110}],371:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":369,dup:111}],372:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":370,\"./lib/vao-native.js\":371,dup:112}],373:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],374:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],375:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":373,buffer:1,dup:99}],376:[function(t,e,r){arguments[4][233][0].apply(r,arguments)},{\"./lib/vtext\":377,dup:233}],377:[function(t,e,r){arguments[4][234][0].apply(r,arguments)},{cdt2d:378,\"clean-pslg\":396,dup:234,ndarray:560,\"planar-graph-to-polyline\":461,\"simplify-planar-graph\":471,\"surface-nets\":484}],378:[function(t,e,r){arguments[4][235][0].apply(r,arguments)},{\"./lib/delaunay\":379,\"./lib/filter\":380,\"./lib/monotone\":381,\"./lib/triangulation\":382,dup:235}],379:[function(t,e,r){arguments[4][236][0].apply(r,arguments)},{\"binary-search-bounds\":383,dup:236,\"robust-in-sphere\":384}],380:[function(t,e,r){arguments[4][237][0].apply(r,arguments)},{\"binary-search-bounds\":383,dup:237}],381:[function(t,e,r){arguments[4][238][0].apply(r,arguments)},{\"binary-search-bounds\":383,dup:238,\"robust-orientation\":395}],382:[function(t,e,r){arguments[4][239][0].apply(r,arguments)},{\"binary-search-bounds\":383,dup:239}],383:[function(t,e,r){arguments[4][240][0].apply(r,arguments)},{dup:240}],384:[function(t,e,r){arguments[4][241][0].apply(r,arguments)},{dup:241,\"robust-scale\":386,\"robust-subtract\":387,\"robust-sum\":388,\"two-product\":389}],385:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],386:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":389,\"two-sum\":385}],387:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],388:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],389:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],390:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],391:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":394,\"two-sum\":390}],392:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],393:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],394:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],395:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":391,\"robust-subtract\":392,\"robust-sum\":393,\"two-product\":394}],396:[function(t,e,r){arguments[4][247][0].apply(r,arguments)},{\"./lib/rat-seg-intersect\":397,\"big-rat\":401,\"big-rat/cmp\":399,\"big-rat/to-float\":416,\"box-intersect\":417,\"compare-cell\":425,dup:247,nextafter:426,\"rat-vec\":429,\"robust-segment-intersect\":438,\"union-find\":439}],397:[function(t,e,r){arguments[4][248][0].apply(r,arguments)},{\"big-rat/div\":400,\"big-rat/mul\":410,\"big-rat/sign\":414,\"big-rat/sub\":415,\"big-rat/to-float\":416,dup:248,\"rat-vec/add\":428,\"rat-vec/muls\":430,\"rat-vec/sub\":431}],398:[function(t,e,r){arguments[4][249][0].apply(r,arguments)},{\"./lib/rationalize\":408,dup:249}],399:[function(t,e,r){arguments[4][250][0].apply(r,arguments)},{dup:250}],400:[function(t,e,r){arguments[4][251][0].apply(r,arguments)},{\"./lib/rationalize\":408,dup:251}],401:[function(t,e,r){arguments[4][252][0].apply(r,arguments)},{\"./div\":400,\"./is-rat\":402,\"./lib/is-bn\":406,\"./lib/num-to-bn\":407,\"./lib/rationalize\":408,\"./lib/str-to-bn\":409,dup:252}],402:[function(t,e,r){arguments[4][253][0].apply(r,arguments)},{\"./lib/is-bn\":406,dup:253}],403:[function(t,e,r){arguments[4][254][0].apply(r,arguments)},{\"bn.js\":412,dup:254}],404:[function(t,e,r){arguments[4][255][0].apply(r,arguments)},{dup:255}],405:[function(t,e,r){arguments[4][256][0].apply(r,arguments)},{\"bit-twiddle\":411,\"double-bits\":413,dup:256}],406:[function(t,e,r){arguments[4][257][0].apply(r,arguments)},{\"bn.js\":412,dup:257}],407:[function(t,e,r){arguments[4][258][0].apply(r,arguments)},{\"bn.js\":412,\"double-bits\":413,dup:258}],408:[function(t,e,r){arguments[4][259][0].apply(r,arguments)},{\"./bn-sign\":403,\"./num-to-bn\":407,dup:259}],409:[function(t,e,r){arguments[4][260][0].apply(r,arguments)},{\"bn.js\":412,dup:260}],410:[function(t,e,r){arguments[4][261][0].apply(r,arguments)},{\"./lib/rationalize\":408,dup:261}],411:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],412:[function(t,e,r){arguments[4][262][0].apply(r,arguments)},{dup:262}],413:[function(t,e,r){arguments[4][263][0].apply(r,arguments)},{buffer:1,dup:263}],414:[function(t,e,r){arguments[4][264][0].apply(r,arguments)},{\"./lib/bn-sign\":403,dup:264}],415:[function(t,e,r){arguments[4][265][0].apply(r,arguments)},{\"./lib/rationalize\":408,dup:265}],416:[function(t,e,r){arguments[4][266][0].apply(r,arguments)},{\"./lib/bn-to-num\":404,\"./lib/ctz\":405,dup:266}],417:[function(t,e,r){arguments[4][267][0].apply(r,arguments)},{\"./lib/intersect\":419,\"./lib/sweep\":423,dup:267,\"typedarray-pool\":375}],418:[function(t,e,r){arguments[4][268][0].apply(r,arguments)},{dup:268}],419:[function(t,e,r){arguments[4][269][0].apply(r,arguments)},{\"./brute\":418,\"./median\":420,\"./partition\":421,\"./sweep\":423,\"bit-twiddle\":424,dup:269,\"typedarray-pool\":375}],420:[function(t,e,r){arguments[4][270][0].apply(r,arguments)},{\"./partition\":421,dup:270}],421:[function(t,e,r){arguments[4][271][0].apply(r,arguments)},{dup:271}],422:[function(t,e,r){arguments[4][272][0].apply(r,arguments)},{dup:272}],423:[function(t,e,r){arguments[4][273][0].apply(r,arguments)},{\"./sort\":422,\"bit-twiddle\":424,dup:273,\"typedarray-pool\":375}],424:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],425:[function(t,e,r){arguments[4][50][0].apply(r,arguments)},{dup:50}],426:[function(t,e,r){arguments[4][276][0].apply(r,arguments)},{\"double-bits\":427,dup:276}],427:[function(t,e,r){arguments[4][263][0].apply(r,arguments)},{buffer:1,dup:263}],428:[function(t,e,r){arguments[4][278][0].apply(r,arguments)},{\"big-rat/add\":398,dup:278}],429:[function(t,e,r){arguments[4][279][0].apply(r,arguments)},{\"big-rat\":401,dup:279}],430:[function(t,e,r){arguments[4][280][0].apply(r,arguments)},{\"big-rat\":401,\"big-rat/mul\":410,dup:280}],431:[function(t,e,r){arguments[4][281][0].apply(r,arguments)},{\"big-rat/sub\":415,dup:281}],432:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],433:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":436,\"two-sum\":432}],434:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],435:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],436:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],437:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":433,\"robust-subtract\":434,\"robust-sum\":435,\"two-product\":436}],438:[function(t,e,r){arguments[4][282][0].apply(r,arguments)},{dup:282,\"robust-orientation\":437}],439:[function(t,e,r){arguments[4][73][0].apply(r,arguments)},{dup:73}],440:[function(t,e,r){arguments[4][284][0].apply(r,arguments)},{dup:284,\"edges-to-adjacency-list\":441}],441:[function(t,e,r){arguments[4][285][0].apply(r,arguments)},{dup:285,uniq:460}],442:[function(t,e,r){arguments[4][286][0].apply(r,arguments)},{\"compare-angle\":443,dup:286}],443:[function(t,e,r){arguments[4][287][0].apply(r,arguments)},{dup:287,\"robust-orientation\":457,\"robust-product\":445,\"robust-sum\":458,signum:446,\"two-sum\":447}],444:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":459,\"two-sum\":447}],445:[function(t,e,r){arguments[4][289][0].apply(r,arguments)},{dup:289,\"robust-scale\":444,\"robust-sum\":458}],446:[function(t,e,r){arguments[4][290][0].apply(r,arguments)},{dup:290}],447:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],448:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],449:[function(t,e,r){arguments[4][293][0].apply(r,arguments)},{\"binary-search-bounds\":448,dup:293}],450:[function(t,e,r){arguments[4][294][0].apply(r,arguments)},{dup:294,\"robust-orientation\":457}],451:[function(t,e,r){arguments[4][295][0].apply(r,arguments)},{dup:295}],452:[function(t,e,r){arguments[4][296][0].apply(r,arguments)},{\"./lib/order-segments\":450,\"binary-search-bounds\":448,dup:296,\"functional-red-black-tree\":451,\"robust-orientation\":457}],453:[function(t,e,r){arguments[4][297][0].apply(r,arguments)},{\"binary-search-bounds\":448,dup:297,\"interval-tree-1d\":449,\"robust-orientation\":457,\"slab-decomposition\":452}],454:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],455:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":459,\"two-sum\":454}],456:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],457:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":455,\"robust-subtract\":456,\"robust-sum\":458,\"two-product\":459}],458:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],459:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],460:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],461:[function(t,e,r){arguments[4][301][0].apply(r,arguments)},{\"./lib/trim-leaves\":440,dup:301,\"edges-to-adjacency-list\":441,\"planar-dual\":442,\"point-in-big-polygon\":453,\"robust-sum\":458,\"two-product\":459,uniq:460}],462:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],463:[function(t,e,r){arguments[4][43][0].apply(r,arguments)},{dup:43,\"two-product\":466,\"two-sum\":462}],464:[function(t,e,r){arguments[4][61][0].apply(r,arguments)},{dup:61}],465:[function(t,e,r){arguments[4][44][0].apply(r,arguments)},{dup:44}],466:[function(t,e,r){arguments[4][45][0].apply(r,arguments)},{dup:45}],467:[function(t,e,r){arguments[4][64][0].apply(r,arguments)},{dup:64,\"robust-scale\":463,\"robust-subtract\":464,\"robust-sum\":465,\"two-product\":466}],468:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],469:[function(t,e,r){arguments[4][303][0].apply(r,arguments)},{dup:303}],470:[function(t,e,r){arguments[4][74][0].apply(r,arguments)},{\"bit-twiddle\":468,dup:74,\"union-find\":469}],471:[function(t,e,r){arguments[4][305][0].apply(r,arguments)},{dup:305,\"robust-orientation\":467,\"simplicial-complex\":470}],472:[function(t,e,r){arguments[4][306][0].apply(r,arguments)},{dup:306,\"typedarray-pool\":375}],473:[function(t,e,r){arguments[4][308][0].apply(r,arguments)},{dup:308}],474:[function(t,e,r){arguments[4][310][0].apply(r,arguments)},{dup:310,\"typedarray-pool\":375}],475:[function(t,e,r){arguments[4][311][0].apply(r,arguments)},{dup:311,\"invert-permutation\":476,\"typedarray-pool\":375}],476:[function(t,e,r){arguments[4][312][0].apply(r,arguments)},{dup:312}],477:[function(t,e,r){arguments[4][314][0].apply(r,arguments)},{dup:314,gamma:473,\"permutation-parity\":474,\"permutation-rank\":475}],478:[function(t,e,r){arguments[4][315][0].apply(r,arguments)},{\"cwise-compiler\":479,dup:315}],479:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":481,dup:316}],480:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:482}],481:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":480,dup:318}],482:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],483:[function(t,e,r){arguments[4][320][0].apply(r,arguments)},{\"./lib/zc-core\":478,dup:320}],484:[function(t,e,r){arguments[4][321][0].apply(r,arguments)},{dup:321,\"ndarray-extract-contour\":472,\"triangulate-hypercube\":477,\"zero-crossings\":483}],485:[function(t,e){\"use strict\";function r(t,e){var r=t[0],n=t[1],i=t[2],a=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*i+e[12]*a,t[1]=e[1]*r+e[5]*n+e[9]*i+e[13]*a,t[2]=e[2]*r+e[6]*n+e[10]*i+e[14]*a,t[3]=e[3]*r+e[7]*n+e[11]*i+e[15]*a,t}function n(t,e,n,i){return r(i,i,n),r(i,i,e),r(i,i,t)}function i(t,e){this.index=t,this.dataCoordinate=this.position=e}function a(t,e,r,n,a,o,s,l,u,c,f,h){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=r,this.projectShader=n,this.pointBuffer=a,this.colorBuffer=o,this.glyphBuffer=s,this.idBuffer=l,this.vao=u,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.lineWidth=0,this.projectScale=[2/3,2/3,2/3],this.projectOpacity=[1,1,1],this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=f,this.pickProjectShader=h,this.points=[],this._selectResult=new i(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}function o(t){return t[0]=t[1]=t[2]=0,t}function s(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function l(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}function u(t){for(var e=C,r=0;2>r;++r)for(var n=0;3>n;++n)e[r][n]=Math.max(Math.min(t[r][n],1e8),-1e8);return e}function c(t,e,r,i){var a,c=e.axesProject,f=e.gl,h=t.uniforms,d=r.model||b,p=r.view||b,g=r.projection||b,m=e.axesBounds,y=u(e.clipBounds);a=e.axes?e.axes.lastCubeProps.axis:[1,1,1],_[0]=2/f.drawingBufferWidth,_[1]=2/f.drawingBufferHeight,t.bind(),h.view=p,h.projection=g,h.screenSize=_,h.highlightId=e.highlightId,h.highlightScale=e.highlightScale,h.clipBounds=y,h.pickGroup=e.pickId/255,h.pixelRatio=e.pixelRatio;for(var x=0;3>x;++x)if(c[x]&&e.projectOpacity[x]<1===i){h.scale=e.projectScale[x],h.opacity=e.projectOpacity[x];for(var C=L,j=0;16>j;++j)C[j]=0;for(var j=0;4>j;++j)C[5*j]=1;C[5*x]=0,C[12+x]=a[x]<0?m[0][x]:m[1][x],v(C,d,C),h.model=C;var S=(x+1)%3,T=(x+2)%3,z=o(w),P=o(k);z[S]=1,P[T]=1;var I=n(g,p,d,s(A,z)),O=n(g,p,d,s(M,P));if(Math.abs(I[1])>Math.abs(O[1])){var D=I;I=O,O=D,D=z,z=P,P=D;var R=S;S=T,T=R}I[0]<0&&(z[S]=-1),O[1]>0&&(P[T]=-1);for(var N=0,B=0,j=0;4>j;++j)N+=Math.pow(d[4*S+j],2),B+=Math.pow(d[4*T+j],2);z[S]/=Math.sqrt(N),P[T]/=Math.sqrt(B),h.axes[0]=z,h.axes[1]=P,h.fragClipBounds[0]=l(E,y[0],x,-1e8),h.fragClipBounds[1]=l(E,y[1],x,1e8),e.vao.draw(f.TRIANGLES,e.vertexCount),e.lineWidth>0&&(f.lineWidth(e.lineWidth),e.vao.draw(f.LINES,e.lineVertexCount,e.vertexCount))}}function f(t,e,r,n,i,a){var o=r.gl;if(r.vao.bind(),i===r.opacity<1||a){t.bind();var s=t.uniforms;s.model=n.model||b,s.view=n.view||b,s.projection=n.projection||b,_[0]=2/o.drawingBufferWidth,_[1]=2/o.drawingBufferHeight,s.screenSize=_,s.highlightId=r.highlightId,s.highlightScale=r.highlightScale,s.fragClipBounds=T,s.clipBounds=r.axes.bounds,s.opacity=r.opacity,s.pickGroup=r.pickId/255,s.pixelRatio=r.pixelRatio,r.vao.draw(o.TRIANGLES,r.vertexCount),r.lineWidth>0&&(o.lineWidth(r.lineWidth),r.vao.draw(o.LINES,r.lineVertexCount,r.vertexCount))}c(e,r,n,i,a),r.vao.unbind()}function h(t){var e=t.gl,r=m.createPerspective(e),n=m.createOrtho(e),i=m.createProject(e),o=m.createPickPerspective(e),s=m.createPickOrtho(e),l=m.createPickProject(e),u=d(e),c=d(e),f=d(e),h=d(e),g=p(e,[{buffer:u,size:3,type:e.FLOAT},{buffer:c,size:4,type:e.FLOAT},{buffer:f,size:2,type:e.FLOAT},{buffer:h,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),v=new a(e,r,n,i,u,c,f,h,g,o,s,l);return v.update(t),v}var d=t(\"gl-buffer\"),p=t(\"gl-vao\"),g=t(\"typedarray-pool\"),v=t(\"gl-mat4/multiply\"),m=t(\"./lib/shaders\"),y=t(\"./lib/glyphs\"),b=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];e.exports=h;var x=a.prototype;x.pickSlots=1,x.setPickBase=function(t){this.pickId=t},x.isTransparent=function(){if(this.opacity<1)return!0;for(var t=0;3>t;++t)if(this.axesProject[t]&&this.projectOpacity[t]<1)return!0;return!1},x.isOpaque=function(){if(this.opacity>=1)return!0;for(var t=0;3>t;++t)if(this.axesProject[t]&&this.projectOpacity[t]>=1)return!0;return!1};var _=[0,0],w=[0,0,0],k=[0,0,0],A=[0,0,0,1],M=[0,0,0,1],L=b.slice(),E=[0,0,0],C=[[0,0,0],[0,0,0]],j=[-1e8,-1e8,-1e8],S=[1e8,1e8,1e8],T=[j,S];x.draw=function(t){var e=this.useOrtho?this.orthoShader:this.shader;f(e,this.projectShader,this,t,!1,!1)},x.drawTransparent=function(t){var e=this.useOrtho?this.orthoShader:this.shader;f(e,this.projectShader,this,t,!0,!1)},x.drawPick=function(t){var e=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;f(e,this.pickProjectShader,this,t,!1,!0)},x.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[2]+(t.value[1]<<8)+(t.value[0]<<16);if(e>=this.pointCount||0>e)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var i=0;3>i;++i)n.position[i]=n.dataCoordinate[i]=r[i];return n},x.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,i=e>>16&255;this.highlightId=[r/255,n/255,i/255,0]}else this.highlightId=[1,1,1,1]},x.update=function(t){if(t=t||{},\"perspective\"in t&&(this.useOrtho=!t.perspective),\"orthographic\"in t&&(this.useOrtho=!!t.orthographic),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"project\"in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if(\"projectScale\"in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(\"projectOpacity\"in t)if(Array.isArray(t.projectOpacity))this.projectOpacity=t.projectOpacity.slice();else{var r=+t.projectOpacity;this.projectOpacity=[r,r,r]}\"opacity\"in t&&(this.opacity=t.opacity),this.dirty=!0;var n=t.position;if(n){var i=t.font||\"normal\",a=t.alignment||[0,0],o=[1/0,1/0,1/0],s=[-1/0,-1/0,-1/0],l=t.glyph,u=t.color,c=t.size,f=t.angle,h=t.lineColor,d=0,p=0,v=0,m=n.length;t:for(var b=0;m>b;++b){for(var x=n[b],_=0;3>_;++_)if(isNaN(x[_])||!isFinite(x[_]))continue t;var w;w=Array.isArray(l)?y(l[b],i):l?y(l,i):y(\"\\u25cf\",i);var k=w[0],A=w[1],M=w[2];p+=3*k.cells.length,v+=2*A.edges.length}var L=p+v,E=g.mallocFloat(3*L),C=g.mallocFloat(4*L),j=g.mallocFloat(2*L),S=g.mallocUint32(L),T=[0,a[1]],z=0,P=p,I=[0,0,0,1],O=[0,0,0,1],D=Array.isArray(u)&&Array.isArray(u[0]),R=Array.isArray(h)&&Array.isArray(h[0]);t:for(var b=0;m>b;++b){for(var x=n[b],_=0;3>_;++_){if(isNaN(x[_])||!isFinite(x[_])){d+=1;continue t}s[_]=Math.max(s[_],x[_]),o[_]=Math.min(o[_],x[_])}var w;w=Array.isArray(l)?y(l[b],i):l?y(l,i):y(\"\\u25cf\",i);var k=w[0],A=w[1],M=w[2];if(Array.isArray(u)){var N;if(N=D?u[b]:u,3===N.length){for(var _=0;3>_;++_)I[_]=N[_];I[3]=1}else if(4===N.length)for(var _=0;4>_;++_)I[_]=N[_]}else I[0]=I[1]=I[2]=0,I[3]=1;if(Array.isArray(h)){var N;if(N=R?h[b]:h,3===N.length){for(var _=0;3>_;++_)O[_]=N[_];O[_]=1}else if(4===N.length)for(var _=0;4>_;++_)O[_]=N[_]}else O[0]=O[1]=O[2]=0,O[3]=1;var B=.5;Array.isArray(c)?B=+c[b]:c?B=+c:this.useOrtho&&(B=12);var F=0;Array.isArray(f)?F=+f[b]:f&&(F=+f);for(var U=Math.cos(F),V=Math.sin(F),x=n[b],_=0;3>_;++_)s[_]=Math.max(s[_],x[_]),o[_]=Math.min(o[_],x[_]);a[0]<0?T[0]=a[0]*(1+M[1][0]):a[0]>0&&(T[0]=-a[0]*(1+M[0][0]));for(var H=k.cells,q=k.positions,_=0;_<H.length;++_)for(var G=H[_],Y=0;3>Y;++Y){for(var W=0;3>W;++W)E[3*z+W]=x[W];for(var W=0;4>W;++W)C[4*z+W]=I[W];S[z]=d;var X=q[G[Y]];j[2*z]=B*(U*X[0]-V*X[1]+T[0]),j[2*z+1]=B*(V*X[0]+U*X[1]+T[1]),z+=1}for(var H=A.edges,q=A.positions,_=0;_<H.length;++_)for(var G=H[_],Y=0;2>Y;++Y){for(var W=0;3>W;++W)E[3*P+W]=x[W];for(var W=0;4>W;++W)C[4*P+W]=O[W];S[P]=d;var X=q[G[Y]];j[2*P]=B*(U*X[0]-V*X[1]+T[0]),j[2*P+1]=B*(V*X[0]+U*X[1]+T[1]),P+=1}d+=1}this.vertexCount=p,this.lineVertexCount=v,this.pointBuffer.update(E),this.colorBuffer.update(C),this.glyphBuffer.update(j),this.idBuffer.update(new Uint32Array(S)),g.free(E),g.free(C),g.free(j),g.free(S),this.bounds=[o,s],this.points=n,this.pointCount=n.length}},x.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()}},{\"./lib/glyphs\":357,\"./lib/shaders\":358,\"gl-buffer\":359,\"gl-mat4/multiply\":147,\"gl-vao\":372,\"typedarray-pool\":375}],486:[function(t,e,r){var n=t(\"gl-shader\"),i=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec4 uv;\\nattribute vec2 f;\\nattribute vec3 normal;\\n\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 lightPosition, eyePosition;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\n\\nvoid main() {\\n worldCoordinate = vec3(uv.zw, f.x);\\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\\n vec4 clipPosition = projection * view * worldPosition;\\n gl_Position = clipPosition;\\n value = f.x;\\n kill = f.y;\\n planeCoordinate = uv.xy;\\n \\n //Lighting geometry parameters\\n vec4 cameraCoordinate = view * worldPosition;\\n cameraCoordinate.xyz /= cameraCoordinate.w;\\n lightDirection = lightPosition - cameraCoordinate.xyz;\\n eyeDirection = eyePosition - cameraCoordinate.xyz;\\n surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);\\n}\",a=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nfloat beckmannDistribution_2_0(float x, float roughness) {\\n float NdotH = max(x, 0.0001);\\n float cos2Alpha = NdotH * NdotH;\\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n float roughness2 = roughness * roughness;\\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\n\\n\\nfloat beckmannSpecular_1_1(\\n vec3 lightDirection,\\n vec3 viewDirection,\\n vec3 surfaceNormal,\\n float roughness) {\\n return beckmannDistribution_2_0(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\\n}\\n\\n\\n\\nuniform vec3 lowerBound, upperBound;\\nuniform float contourTint;\\nuniform vec4 contourColor;\\nuniform sampler2D colormap;\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\n\\nvoid main() {\\n if(kill > 0.0 ||\\n any(lessThan(worldCoordinate, clipBounds[0])) || any(greaterThan(worldCoordinate, clipBounds[1]))) {\\n discard;\\n }\\n\\n vec3 N = normalize(surfaceNormal);\\n vec3 V = normalize(eyeDirection);\\n vec3 L = normalize(lightDirection);\\n\\n if(gl_FrontFacing) {\\n N = -N;\\n }\\n\\n float specular = beckmannSpecular_1_1(L, V, N, roughness);\\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n float interpValue = (value - lowerBound.z) / (upperBound.z - lowerBound.z);\\n vec4 surfaceColor = texture2D(colormap, vec2(interpValue, interpValue));\\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\\n\\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\\n}\\n\",o=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nattribute vec4 uv;\\n\\nuniform mat3 permutation;\\nuniform mat4 model, view, projection;\\nuniform float height, zOffset;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\n\\nvoid main() {\\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\\n vec4 worldPosition = model * vec4(dataCoordinate, 1.0);\\n\\n vec4 clipPosition = projection * view * worldPosition;\\n clipPosition.z = clipPosition.z + zOffset;\\n\\n gl_Position = clipPosition;\\n value = dataCoordinate.z;\\n kill = -1.0;\\n worldCoordinate = dataCoordinate;\\n planeCoordinate = uv.zw;\\n\\n //Don't do lighting for contours\\n surfaceNormal = vec3(1,0,0);\\n eyeDirection = vec3(0,1,0);\\n lightDirection = vec3(0,0,1);\\n}\\n\",s=\"#define GLSLIFY 1\\nprecision mediump float;\\n\\nuniform vec2 shape;\\nuniform vec3 clipBounds[2];\\nuniform float pickId;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 surfaceNormal;\\n\\nvec2 splitFloat(float v) {\\n float vh = 255.0 * v;\\n float upper = floor(vh);\\n float lower = fract(vh);\\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\\n}\\n\\nvoid main() {\\n if(kill > 0.0 || \\n any(lessThan(worldCoordinate, clipBounds[0])) || any(greaterThan(worldCoordinate, clipBounds[1]))) {\\n discard;\\n }\\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\\n gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\\n}\";r.createShader=function(t){var e=n(t,i,a,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec2\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createPickShader=function(t){var e=n(t,i,s,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec2\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createContourShader=function(t){var e=n(t,o,a,null,[{name:\"uv\",type:\"vec4\"}]);return e.attributes.uv.location=0,e},r.createPickContourShader=function(t){var e=n(t,o,s,null,[{name:\"uv\",type:\"vec4\"}]);return e.attributes.uv.location=0,e}},{\"gl-shader\":493}],487:[function(t,e,r){arguments[4][10][0].apply(r,arguments)},{dup:10}],488:[function(t,e,r){arguments[4][72][0].apply(r,arguments)},{dup:72}],489:[function(t,e,r){arguments[4][167][0].apply(r,arguments)},{dup:167}],490:[function(t,e,r){arguments[4][168][0].apply(r,arguments)},{\"./colorScales.json\":489,arraytools:53,dup:168}],491:[function(t,e,r){arguments[4][39][0].apply(r,arguments)},{dup:39}],492:[function(t,e,r){arguments[4][96][0].apply(r,arguments)},{dup:96,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":531}],493:[function(t,e,r){arguments[4][100][0].apply(r,arguments)},{\"./lib/create-attributes\":494,\"./lib/create-uniforms\":495,\"./lib/reflect\":496,\"./lib/runtime-reflect\":497,\"./lib/shader-cache\":498,dup:100}],494:[function(t,e,r){arguments[4][101][0].apply(r,arguments)},{dup:101}],495:[function(t,e,r){arguments[4][102][0].apply(r,arguments)},{\"./reflect\":496,dup:102}],496:[function(t,e,r){arguments[4][103][0].apply(r,arguments)},{dup:103}],497:[function(t,e,r){arguments[4][104][0].apply(r,arguments)},{dup:104}],498:[function(t,e,r){arguments[4][105][0].apply(r,arguments)},{dup:105,\"weakmap-shim\":501}],499:[function(t,e,r){arguments[4][106][0].apply(r,arguments)},{\"./hidden-store.js\":500,dup:106}],500:[function(t,e,r){arguments[4][107][0].apply(r,arguments)},{dup:107}],501:[function(t,e,r){arguments[4][108][0].apply(r,arguments)},{\"./create-store.js\":499,dup:108}],502:[function(t,e,r){arguments[4][133][0].apply(r,arguments)},{dup:133,ndarray:560,\"ndarray-ops\":555,\"typedarray-pool\":531}],503:[function(t,e,r){arguments[4][109][0].apply(r,arguments)\n",
"},{dup:109}],504:[function(t,e,r){arguments[4][110][0].apply(r,arguments)},{\"./do-bind.js\":503,dup:110}],505:[function(t,e,r){arguments[4][111][0].apply(r,arguments)},{\"./do-bind.js\":503,dup:111}],506:[function(t,e,r){arguments[4][112][0].apply(r,arguments)},{\"./lib/vao-emulated.js\":504,\"./lib/vao-native.js\":505,dup:112}],507:[function(t,e){\"use strict\";function r(t){if(t in s)return s[t];for(var e=[],r=0;t>r;++r)e.push(\"out\",r,\"s=0.5*(inp\",r,\"l-inp\",r,\"r);\");for(var n=[\"array\"],i=[\"junk\"],r=0;t>r;++r){n.push(\"array\"),i.push(\"out\"+r+\"s\");var l=a(t);l[r]=-1,n.push({array:0,offset:l.slice()}),l[r]=1,n.push({array:0,offset:l.slice()}),i.push(\"inp\"+r+\"l\",\"inp\"+r+\"r\")}return s[t]=o({args:n,pre:u,post:u,body:{body:e.join(\"\"),args:i.map(function(t){return{name:t,lvalue:0===t.indexOf(\"out\"),rvalue:0===t.indexOf(\"inp\"),count:\"junk\"!==t|0}}),thisVars:[],localVars:[]},funcName:\"fdTemplate\"+t})}function n(t){function e(e){for(var r=a-e.length,n=[],i=[],s=[],l=0;a>l;++l)e.indexOf(l+1)>=0?s.push(\"0\"):e.indexOf(-(l+1))>=0?s.push(\"s[\"+l+\"]-1\"):(s.push(\"-1\"),n.push(\"1\"),i.push(\"s[\"+l+\"]-2\"));var u=\".lo(\"+n.join()+\").hi(\"+i.join()+\")\";if(0===n.length&&(u=\"\"),r>0){o.push(\"if(1\");for(var l=0;a>l;++l)e.indexOf(l+1)>=0||e.indexOf(-(l+1))>=0||o.push(\"&&s[\",l,\"]>2\");o.push(\"){grad\",r,\"(src.pick(\",s.join(),\")\",u);for(var l=0;a>l;++l)e.indexOf(l+1)>=0||e.indexOf(-(l+1))>=0||o.push(\",dst.pick(\",s.join(),\",\",l,\")\",u);o.push(\");\")}for(var l=0;l<e.length;++l){var c=Math.abs(e[l])-1,f=\"dst.pick(\"+s.join()+\",\"+c+\")\"+u;switch(t[c]){case\"clamp\":var h=s.slice(),d=s.slice();e[l]<0?h[c]=\"s[\"+c+\"]-2\":d[c]=\"1\",0===r?o.push(\"if(s[\",c,\"]>1){dst.set(\",s.join(),\",\",c,\",0.5*(src.get(\",h.join(),\")-src.get(\",d.join(),\")))}else{dst.set(\",s.join(),\",\",c,\",0)};\"):o.push(\"if(s[\",c,\"]>1){diff(\",f,\",src.pick(\",h.join(),\")\",u,\",src.pick(\",d.join(),\")\",u,\");}else{zero(\",f,\");};\");break;case\"mirror\":0===r?o.push(\"dst.set(\",s.join(),\",\",c,\",0);\"):o.push(\"zero(\",f,\");\");break;case\"wrap\":var p=s.slice(),g=s.slice();e[l]<0?(p[c]=\"s[\"+c+\"]-2\",g[c]=\"0\"):(p[c]=\"s[\"+c+\"]-1\",g[c]=\"1\"),0===r?o.push(\"if(s[\",c,\"]>2){dst.set(\",s.join(),\",\",c,\",0.5*(src.get(\",p.join(),\")-src.get(\",g.join(),\")))}else{dst.set(\",s.join(),\",\",c,\",0)};\"):o.push(\"if(s[\",c,\"]>2){diff(\",f,\",src.pick(\",p.join(),\")\",u,\",src.pick(\",g.join(),\")\",u,\");}else{zero(\",f,\");};\");break;default:throw new Error(\"ndarray-gradient: Invalid boundary condition\")}}r>0&&o.push(\"};\")}var n=t.join(),i=l[n];if(i)return i;for(var a=t.length,o=[\"function gradient(dst,src){var s=src.shape.slice();\"],u=0;1<<a>u;++u){for(var h=[],d=0;a>d;++d)u&1<<d&&h.push(d+1);for(var p=0;p<1<<h.length;++p){for(var g=h.slice(),d=0;d<h.length;++d)p&1<<d&&(g[d]=-g[d]);e(g)}}o.push(\"return dst;};return gradient\");for(var v=[\"diff\",\"zero\"],m=[c,f],u=1;a>=u;++u)v.push(\"grad\"+u),m.push(r(u));v.push(o.join(\"\"));var y=Function.apply(void 0,v),i=y.apply(void 0,m);return s[n]=i,i}function i(t,e,r){if(Array.isArray(r)){if(r.length!==e.dimension)throw new Error(\"ndarray-gradient: invalid boundary conditions\")}else r=\"string\"==typeof r?a(e.dimension,r):a(e.dimension,\"clamp\");if(t.dimension!==e.dimension+1)throw new Error(\"ndarray-gradient: output dimension must be +1 input dimension\");if(t.shape[e.dimension]!==e.dimension)throw new Error(\"ndarray-gradient: output shape must match input shape\");for(var i=0;i<e.dimension;++i)if(t.shape[i]!==e.shape[i])throw new Error(\"ndarray-gradient: shape mismatch\");if(0===e.size)return t;if(e.dimension<=0)return t.set(0),t;var o=n(r);return o(t,e)}e.exports=i;var a=t(\"dup\"),o=t(\"cwise-compiler\"),s={},l={},u={body:\"\",args:[],thisVars:[],localVars:[]},c=o({args:[\"array\",\"array\",\"array\"],pre:u,post:u,body:{args:[{name:\"out\",lvalue:!0,rvalue:!1,count:1},{name:\"left\",lvalue:!1,rvalue:!0,count:1},{name:\"right\",lvalue:!1,rvalue:!0,count:1}],body:\"out=0.5*(left-right)\",thisVars:[],localVars:[]},funcName:\"cdiff\"}),f=o({args:[\"array\"],pre:u,post:u,body:{args:[{name:\"out\",lvalue:!0,rvalue:!1,count:1}],body:\"out=0\",thisVars:[],localVars:[]},funcName:\"zero\"})},{\"cwise-compiler\":508,dup:491}],508:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":510,dup:316}],509:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:511}],510:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":509,dup:318}],511:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],512:[function(t,e){\"use strict\";var r=t(\"ndarray\"),n=t(\"./doConvert.js\");e.exports=function(t,e){for(var i=[],a=t,o=1;a instanceof Array;)i.push(a.length),o*=a.length,a=a[0];return 0===i.length?r():(e||(e=r(new Float64Array(o),i)),n(e,t),e)}},{\"./doConvert.js\":513,ndarray:560}],513:[function(t,e){e.exports=t(\"cwise-compiler\")({args:[\"array\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\nvar _inline_1_v=_inline_1_arg1_,_inline_1_i\\nfor(_inline_1_i=0;_inline_1_i<_inline_1_arg2_.length-1;++_inline_1_i) {\\n_inline_1_v=_inline_1_v[_inline_1_arg2_[_inline_1_i]]\\n}\\n_inline_1_arg0_=_inline_1_v[_inline_1_arg2_[_inline_1_arg2_.length-1]]\\n}\",args:[{name:\"_inline_1_arg0_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:[\"_inline_1_i\",\"_inline_1_v\"]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},funcName:\"convert\",blockSize:64})},{\"cwise-compiler\":514}],514:[function(t,e){\"use strict\";function r(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName=\"\",this.pre=null,this.body=null,this.post=null,this.debug=!1}function n(t){var e=new r;e.pre=t.pre,e.body=t.body,e.post=t.post;var n=t.args.slice(0);e.argTypes=n.slice(0);for(var a=0;a<n.length;++a){var o=n[a];if(\"array\"===o){if(e.arrayArgs.push(a),e.shimArgs.push(\"array\"+a),a<e.pre.args.length&&e.pre.args[a].count>0)throw new Error(\"cwise: pre() block may not reference array args\");if(a<e.post.args.length&&e.post.args[a].count>0)throw new Error(\"cwise: post() block may not reference array args\")}else if(\"scalar\"===o)e.scalarArgs.push(a),e.shimArgs.push(\"scalar\"+a);else if(\"index\"===o){if(e.indexArgs.push(a),a<e.pre.args.length&&e.pre.args[a].count>0)throw new Error(\"cwise: pre() block may not reference array index\");if(a<e.body.args.length&&e.body.args[a].lvalue)throw new Error(\"cwise: body() block may not write to array index\");if(a<e.post.args.length&&e.post.args[a].count>0)throw new Error(\"cwise: post() block may not reference array index\")}else if(\"shape\"===o){if(e.shapeArgs.push(a),a<e.pre.args.length&&e.pre.args[a].lvalue)throw new Error(\"cwise: pre() block may not write to array shape\");if(a<e.body.args.length&&e.body.args[a].lvalue)throw new Error(\"cwise: body() block may not write to array shape\");if(a<e.post.args.length&&e.post.args[a].lvalue)throw new Error(\"cwise: post() block may not write to array shape\")}else{if(\"object\"!=typeof o||!o.offset)throw new Error(\"cwise: Unknown argument type \"+n[a]);e.argTypes[a]=\"offset\",e.offsetArgs.push({array:o.array,offset:o.offset}),e.offsetArgIndex.push(a)}}if(e.arrayArgs.length<=0)throw new Error(\"cwise: No array arguments specified\");if(e.pre.args.length>n.length)throw new Error(\"cwise: Too many arguments in pre() block\");if(e.body.args.length>n.length)throw new Error(\"cwise: Too many arguments in body() block\");if(e.post.args.length>n.length)throw new Error(\"cwise: Too many arguments in post() block\");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||\"cwise\",e.blockSize=t.blockSize||64,i(e)}var i=t(\"./lib/thunk.js\");e.exports=n},{\"./lib/thunk.js\":516}],515:[function(t,e){\"use strict\";function r(t,e,r){var n,i,a=t.length,o=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],u=[],c=0,f=0;for(n=0;a>n;++n)u.push([\"i\",n,\"=0\"].join(\"\"));for(i=0;o>i;++i)for(n=0;a>n;++n)f=c,c=t[n],u.push(0===n?[\"d\",i,\"s\",n,\"=t\",i,\"[\",c,\"]\"].join(\"\"):[\"d\",i,\"s\",n,\"=(t\",i,\"[\",c,\"]-s\",f,\"*t\",i,\"[\",f,\"])\"].join(\"\"));for(l.push(\"var \"+u.join(\",\")),n=a-1;n>=0;--n)c=t[n],l.push([\"for(i\",n,\"=0;i\",n,\"<s\",c,\";++i\",n,\"){\"].join(\"\"));for(l.push(r),n=0;a>n;++n){for(f=c,c=t[n],i=0;o>i;++i)l.push([\"p\",i,\"+=d\",i,\"s\",n].join(\"\"));s&&(n>0&&l.push([\"index[\",f,\"]-=s\",f].join(\"\")),l.push([\"++index[\",c,\"]\"].join(\"\"))),l.push(\"}\")}return l.join(\"\\n\")}function n(t,e,n,i){for(var a=e.length,o=n.arrayArgs.length,s=n.blockSize,l=n.indexArgs.length>0,u=[],c=0;o>c;++c)u.push([\"var offset\",c,\"=p\",c].join(\"\"));for(var c=t;a>c;++c)u.push([\"for(var j\"+c+\"=SS[\",e[c],\"]|0;j\",c,\">0;){\"].join(\"\")),u.push([\"if(j\",c,\"<\",s,\"){\"].join(\"\")),u.push([\"s\",e[c],\"=j\",c].join(\"\")),u.push([\"j\",c,\"=0\"].join(\"\")),u.push([\"}else{s\",e[c],\"=\",s].join(\"\")),u.push([\"j\",c,\"-=\",s,\"}\"].join(\"\")),l&&u.push([\"index[\",e[c],\"]=j\",c].join(\"\"));for(var c=0;o>c;++c){for(var f=[\"offset\"+c],h=t;a>h;++h)f.push([\"j\",h,\"*t\",c,\"[\",e[h],\"]\"].join(\"\"));u.push([\"p\",c,\"=(\",f.join(\"+\"),\")\"].join(\"\"))}u.push(r(e,n,i));for(var c=t;a>c;++c)u.push(\"}\");return u.join(\"\\n\")}function i(t){for(var e=0,r=t[0].length;r>e;){for(var n=1;n<t.length;++n)if(t[n][e]!==t[0][e])return e;++e}return e}function a(t,e,r){for(var n=t.body,i=[],a=[],o=0;o<t.args.length;++o){var s=t.args[o];if(!(s.count<=0)){var l=new RegExp(s.name,\"g\"),u=\"\",c=e.arrayArgs.indexOf(o);switch(e.argTypes[o]){case\"offset\":var f=e.offsetArgIndex.indexOf(o),h=e.offsetArgs[f];c=h.array,u=\"+q\"+f;case\"array\":u=\"p\"+c+u;var d=\"l\"+o,p=\"a\"+c;1===s.count?\"generic\"===r[c]?s.lvalue?(i.push([\"var \",d,\"=\",p,\".get(\",u,\")\"].join(\"\")),n=n.replace(l,d),a.push([p,\".set(\",u,\",\",d,\")\"].join(\"\"))):n=n.replace(l,[p,\".get(\",u,\")\"].join(\"\")):n=n.replace(l,[p,\"[\",u,\"]\"].join(\"\")):\"generic\"===r[c]?(i.push([\"var \",d,\"=\",p,\".get(\",u,\")\"].join(\"\")),n=n.replace(l,d),s.lvalue&&a.push([p,\".set(\",u,\",\",d,\")\"].join(\"\"))):(i.push([\"var \",d,\"=\",p,\"[\",u,\"]\"].join(\"\")),n=n.replace(l,d),s.lvalue&&a.push([p,\"[\",u,\"]=\",d].join(\"\")));break;case\"scalar\":n=n.replace(l,\"Y\"+e.scalarArgs.indexOf(o));break;case\"index\":n=n.replace(l,\"index\");break;case\"shape\":n=n.replace(l,\"shape\")}}}return[i.join(\"\\n\"),n,a.join(\"\\n\")].join(\"\\n\").trim()}function o(t){for(var e=new Array(t.length),r=!0,n=0;n<t.length;++n){var i=t[n],a=i.match(/\\d+/);a=a?a[0]:\"\",e[n]=0===i.charAt(0)?\"u\"+i.charAt(1)+a:i.charAt(0)+a,n>0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join(\"\")}function s(t,e){for(var s=0|e[1].length,u=new Array(t.arrayArgs.length),c=new Array(t.arrayArgs.length),f=[\"SS\"],h=[\"'use strict'\"],d=[],p=0;s>p;++p)d.push([\"s\",p,\"=SS[\",p,\"]\"].join(\"\"));for(var g=0;g<t.arrayArgs.length;++g)f.push(\"a\"+g),f.push(\"t\"+g),f.push(\"p\"+g),c[g]=e[2*g],u[g]=e[2*g+1];for(var g=0;g<t.scalarArgs.length;++g)f.push(\"Y\"+g);if(t.shapeArgs.length>0&&d.push(\"shape=SS.slice(0)\"),t.indexArgs.length>0){for(var v=new Array(s),g=0;s>g;++g)v[g]=\"0\";d.push([\"index=[\",v.join(\",\"),\"]\"].join(\"\"))}for(var g=0;g<t.offsetArgs.length;++g){for(var m=t.offsetArgs[g],y=[],p=0;p<m.offset.length;++p)0!==m.offset[p]&&y.push(1===m.offset[p]?[\"t\",m.array,\"[\",p,\"]\"].join(\"\"):[m.offset[p],\"*t\",m.array,\"[\",p,\"]\"].join(\"\"));d.push(0===y.length?\"q\"+g+\"=0\":[\"q\",g,\"=(\",y.join(\"+\"),\")|0\"].join(\"\"))}var b=l([].concat(t.pre.thisVars).concat(t.body.thisVars).concat(t.post.thisVars));d=d.concat(b),h.push(\"var \"+d.join(\",\"));for(var g=0;g<t.arrayArgs.length;++g)h.push(\"p\"+g+\"|=0\");t.pre.body.length>3&&h.push(a(t.pre,t,c));var x=a(t.body,t,c),_=i(u);h.push(s>_?n(_,u[0],t,x):r(u[0],t,x)),t.post.body.length>3&&h.push(a(t.post,t,c)),t.debug&&console.log(\"Generated cwise routine for \",e,\":\\n\\n\",h.join(\"\\n\"));var w=[t.funcName||\"unnamed\",\"_cwise_loop_\",u[0].join(\"s\"),\"m\",_,o(c)].join(\"\"),k=new Function([\"function \",w,\"(\",f.join(\",\"),\"){\",h.join(\"\\n\"),\"} return \",w].join(\"\"));return k()}var l=t(\"uniq\");e.exports=s},{uniq:517}],516:[function(t,e){\"use strict\";function r(t){var e=[\"'use strict'\",\"var CACHED={}\"],r=[],i=t.funcName+\"_cwise_thunk\";e.push([\"return function \",i,\"(\",t.shimArgs.join(\",\"),\"){\"].join(\"\"));for(var a=[],o=[],s=[[\"array\",t.arrayArgs[0],\".shape\"].join(\"\")],l=0;l<t.arrayArgs.length;++l){var u=t.arrayArgs[l];r.push([\"t\",u,\"=array\",u,\".dtype,\",\"r\",u,\"=array\",u,\".order\"].join(\"\")),a.push(\"t\"+u),a.push(\"r\"+u),o.push(\"t\"+u),o.push(\"r\"+u+\".join()\"),s.push(\"array\"+u+\".data\"),s.push(\"array\"+u+\".stride\"),s.push(\"array\"+u+\".offset|0\")}for(var l=0;l<t.scalarArgs.length;++l)s.push(\"scalar\"+t.scalarArgs[l]);r.push([\"type=[\",o.join(\",\"),\"].join()\"].join(\"\")),r.push(\"proc=CACHED[type]\"),e.push(\"var \"+r.join(\",\")),e.push([\"if(!proc){\",\"CACHED[type]=proc=compile([\",a.join(\",\"),\"])}\",\"return proc(\",s.join(\",\"),\")}\"].join(\"\")),t.debug&&console.log(\"Generated thunk:\",e.join(\"\\n\"));var c=new Function(\"compile\",e.join(\"\\n\"));return c(n.bind(void 0,t))}var n=t(\"./compile.js\");e.exports=r},{\"./compile.js\":515}],517:[function(t,e){\"use strict\";function r(t,e){for(var r=1,n=t.length,i=t[0],a=t[0],o=1;n>o;++o)if(a=i,i=t[o],e(i,a)){if(o===r){r++;continue}t[r++]=i}return t.length=r,t}function n(t){for(var e=1,r=t.length,n=t[0],i=t[0],a=1;r>a;++a,i=n)if(i=n,n=t[a],n!==i){if(a===e){e++;continue}t[e++]=n}return t.length=e,t}function i(t,e,i){return 0===t.length?[]:e?(i||t.sort(e),r(t,e)):(i||t.sort(),n(t))}e.exports=i},{}],518:[function(t,e,r){arguments[4][306][0].apply(r,arguments)},{dup:306,\"typedarray-pool\":531}],519:[function(t,e,r){arguments[4][308][0].apply(r,arguments)},{dup:308}],520:[function(t,e,r){arguments[4][310][0].apply(r,arguments)},{dup:310,\"typedarray-pool\":531}],521:[function(t,e,r){arguments[4][311][0].apply(r,arguments)},{dup:311,\"invert-permutation\":522,\"typedarray-pool\":531}],522:[function(t,e,r){arguments[4][312][0].apply(r,arguments)},{dup:312}],523:[function(t,e,r){arguments[4][314][0].apply(r,arguments)},{dup:314,gamma:519,\"permutation-parity\":520,\"permutation-rank\":521}],524:[function(t,e,r){arguments[4][315][0].apply(r,arguments)},{\"cwise-compiler\":525,dup:315}],525:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":527,dup:316}],526:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:528}],527:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":526,dup:318}],528:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],529:[function(t,e,r){arguments[4][320][0].apply(r,arguments)},{\"./lib/zc-core\":524,dup:320}],530:[function(t,e,r){arguments[4][321][0].apply(r,arguments)},{dup:321,\"ndarray-extract-contour\":518,\"triangulate-hypercube\":523,\"zero-crossings\":529}],531:[function(t,e,r){arguments[4][99][0].apply(r,arguments)},{\"bit-twiddle\":488,buffer:1,dup:99}],532:[function(t,e){\"use strict\";function r(t,e,r,n,i){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=i}function n(t){var e=b([m({colormap:t,nshades:256,format:\"rgba\"}).map(function(t){return[t[0],t[1],t[2],255*t[3]]})]);return y.divseq(e,255),e}function i(t,e,n,i,a,o,s,l,u,c,f,h,d,p){this.gl=t,this.shape=e,this.bounds=n,this._shader=i,this._pickShader=a,this._coordinateBuffer=o,this._vao=s,this._colorMap=l,this._contourShader=u,this._contourPickShader=c,this._contourBuffer=f,this._contourVAO=h,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new r([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=p,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[0/0,0/0,0/0],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this._field=[x(v.mallocFloat(1024),[0,0]),x(v.mallocFloat(1024),[0,0]),x(v.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.dirty=!0}function a(t,e){for(var r=e.axes&&e.axes.lastCubeProps.axis||D,n=e.showSurface,i=e.showContour,a=0;3>a;++a){n=n||e.surfaceProject[a];for(var o=0;3>o;++o)i=i||e.contourProject[a][o]}for(var a=0;3>a;++a){for(var s=R.projections[a],o=0;16>o;++o)s[o]=0;for(var o=0;4>o;++o)s[5*o]=1;s[5*a]=0,s[12+a]=e.axesBounds[+(r[a]>0)][a],w(s,t.model,s);for(var l=R.clipBounds[a],u=0;2>u;++u)for(var o=0;3>o;++o)l[u][o]=t.clipBounds[u][o];l[0][a]=-1e8,l[1][a]=1e8}return R.showSurface=n,R.showContour=i,R}function o(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=N;n.model=t.model||z,n.view=t.view||z,n.projection=t.projection||z,n.lowerBound=this.bounds[0],n.upperBound=this.bounds[1],n.contourColor=this.contourColor[0],n.inverseModel=k(n.inverseModel,n.model);for(var i=0;2>i;++i)for(var o=n.clipBounds[i],s=0;3>s;++s)o[s]=Math.min(Math.max(this.clipBounds[i][s],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.shape=n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=F;var l=B;w(l,n.view,n.model),w(l,n.projection,l),k(l,l);for(var i=0;3>i;++i)n.eyePosition[i]=l[12+i]/l[15];for(var u=l[15],i=0;3>i;++i)u+=this.lightPosition[i]*l[4*i+3];for(var i=0;3>i;++i){for(var c=l[12+i],s=0;3>s;++s)c+=l[4*s+i]*this.lightPosition[s];n.lightPosition[i]=c/u}var f=a(n,this);if(f.showSurface&&e===this.opacity<1){this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vao.draw(r.TRIANGLES,this._vertexCount);for(var i=0;3>i;++i)this.surfaceProject[i]&&(this._shader.uniforms.model=f.projections[i],this._shader.uniforms.clipBounds=f.clipBounds[i],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(f.showContour&&!e){var h=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,h.bind(),h.uniforms=n;var d=this._contourVAO;d.bind();for(var i=0;3>i;++i){h.uniforms.permutation=I[i],r.lineWidth(this.contourWidth[i]);for(var s=0;s<this.contourLevels[i].length;++s)s===this.highlightLevel[i]?(h.uniforms.contourColor=this.highlightColor[i],h.uniforms.contourTint=this.highlightTint[i]):(0===s||s-1===this.highlightLevel[i])&&(h.uniforms.contourColor=this.contourColor[i],h.uniforms.contourTint=this.contourTint[i]),h.uniforms.height=this.contourLevels[i][s],d.draw(r.LINES,this._contourCounts[i][s],this._contourOffsets[i][s])}for(var i=0;3>i;++i){h.uniforms.model=f.projections[i],h.uniforms.clipBounds=f.clipBounds[i];for(var s=0;3>s;++s)if(this.contourProject[i][s]){h.uniforms.permutation=I[s],r.lineWidth(this.contourWidth[s]);for(var p=0;p<this.contourLevels[s].length;++p)p===this.highlightLevel[s]?(h.uniforms.contourColor=this.highlightColor[s],h.uniforms.contourTint=this.highlightTint[s]):(0===p||p-1===this.highlightLevel[s])&&(h.uniforms.contourColor=this.contourColor[s],h.uniforms.contourTint=this.contourTint[s]),h.uniforms.height=this.contourLevels[s][p],d.draw(r.LINES,this._contourCounts[s][p],this._contourOffsets[s][p])}}d=this._dynamicVAO,d.bind();for(var i=0;3>i;++i)if(0!==this._dynamicCounts[i]){h.uniforms.model=n.model,h.uniforms.clipBounds=n.clipBounds,h.uniforms.permutation=I[i],r.lineWidth(this.dynamicWidth[i]),h.uniforms.contourColor=this.dynamicColor[i],h.uniforms.contourTint=this.dynamicTint[i],h.uniforms.height=this.dynamicLevel[i],d.draw(r.LINES,this._dynamicCounts[i],this._dynamicOffsets[i]);for(var s=0;3>s;++s)this.contourProject[s][i]&&(h.uniforms.model=f.projections[s],h.uniforms.clipBounds=f.clipBounds[s],d.draw(r.LINES,this._dynamicCounts[i],this._dynamicOffsets[i]))}d.unbind()}}function s(t,e){var r=e.shape.slice(),n=t.shape.slice();y.assign(t.lo(1,1).hi(r[0],r[1]),e),y.assign(t.lo(1).hi(r[0],1),e.hi(r[0],1)),y.assign(t.lo(1,n[1]-1).hi(r[0],1),e.lo(0,r[1]-1).hi(r[0],1)),y.assign(t.lo(0,1).hi(1,r[1]),e.hi(1)),y.assign(t.lo(n[0]-1,1).hi(1,r[1]),e.lo(r[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,n[1]-1,e.get(0,r[1]-1)),t.set(n[0]-1,0,e.get(r[0]-1,0)),t.set(n[0]-1,n[1]-1,e.get(r[0]-1,r[1]-1))}function l(t,e){return Array.isArray(t)?[e(t[0]),e(t[1]),e(t[2])]:[e(t),e(t),e(t)]}function u(t){return Array.isArray(t)?3===t.length?[t[0],t[1],t[2],1]:[t[0],t[1],t[2],t[3]]:[0,0,0,1]}function c(t){if(Array.isArray(t)){if(Array.isArray(t))return[u(t[0]),u(t[1]),u(t[2])];var e=u(t);return[e.slice(),e.slice(),e.slice()]}}function f(t){var e=t.gl,r=(t.field||t.coords&&t.coords[2]||x([],[0,0]),E(e)),n=j(e),a=C(e),o=S(e),s=d(e),l=p(e,[{buffer:s,size:4,stride:T,offset:0},{buffer:s,size:2,stride:T,offset:16},{buffer:s,size:3,stride:T,offset:24}]),u=d(e),c=p(e,[{buffer:u,size:4}]),f=d(e),h=p(e,[{buffer:f,size:2,type:e.FLOAT}]),v=g(e,1,256,e.RGBA,e.UNSIGNED_BYTE);v.minFilter=e.LINEAR,v.magFilter=e.LINEAR;var m=new i(e,[0,0],[[0,0,0],[0,0,0]],r,n,s,l,v,a,o,u,c,f,h),y={levels:[[],[],[]]};for(var b in t)y[b]=t[b];return y.colormap=y.colormap||\"jet\",m.update(y),m}e.exports=f;var h=t(\"bit-twiddle\"),d=t(\"gl-buffer\"),p=t(\"gl-vao\"),g=t(\"gl-texture2d\"),v=t(\"typedarray-pool\"),m=t(\"colormap\"),y=t(\"ndarray-ops\"),b=t(\"ndarray-pack\"),x=t(\"ndarray\"),_=t(\"surface-nets\"),w=t(\"gl-mat4/multiply\"),k=t(\"gl-mat4/invert\"),A=t(\"binary-search-bounds\"),M=t(\"ndarray-gradient\"),x=t(\"ndarray\"),L=t(\"./lib/shaders\"),E=L.createShader,C=L.createContourShader,j=L.createPickShader,S=L.createPickContourShader,T=36,z=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],I=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];!function(){for(var t=0;3>t;++t){var e=I[t],r=(t+1)%3,n=(t+2)%3;e[r+0]=1,e[n+3]=1,e[t+6]=1}}();var O=i.prototype;O.isTransparent=function(){return this.opacity<1},O.isOpaque=function(){if(this.opacity>=1)return!0;for(var t=0;3>t;++t)if(this._contourCounts[t].length>0||this._dynamicCounts[t]>0)return!0;return!1},O.pickSlots=1,O.setPickBase=function(t){this.pickId=t};var D=[0,0,0],R={showSurface:!1,showContour:!1,projections:[z.slice(),z.slice(),z.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]},N={model:z,view:z,projection:z,inverseModel:z.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1},B=z.slice(),F=[1,0,0,0,1,0,0,0,1];O.draw=function(t){return o.call(this,t,!1)},O.drawTransparent=function(t){return o.call(this,t,!0)};var U={model:z,view:z,projection:z,inverseModel:z,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};O.drawPick=function(t){t=t||{};var e=this.gl;e.disable(e.CULL_FACE);var r=U;r.model=t.model||z,r.view=t.view||z,r.projection=t.projection||z,r.shape=this._field[2].shape,r.pickId=this.pickId/255,r.lowerBound=this.bounds[0],r.upperBound=this.bounds[1],r.permutation=F;for(var n=0;2>n;++n)for(var i=r.clipBounds[n],o=0;3>o;++o)i[o]=Math.min(Math.max(this.clipBounds[n][o],-1e8),1e8);var s=a(r,this);if(s.showSurface){this._pickShader.bind(),this._pickShader.uniforms=r,this._vao.bind(),this._vao.draw(e.TRIANGLES,this._vertexCount);for(var n=0;3>n;++n)this.surfaceProject[n]&&(this._pickShader.uniforms.model=s.projections[n],this._pickShader.uniforms.clipBounds=s.clipBounds[n],this._vao.draw(e.TRIANGLES,this._vertexCount));this._vao.unbind()}if(s.showContour){var l=this._contourPickShader;l.bind(),l.uniforms=r;var u=this._contourVAO;u.bind();for(var o=0;3>o;++o){e.lineWidth(this.contourWidth[o]),l.uniforms.permutation=I[o];for(var n=0;n<this.contourLevels[o].length;++n)l.uniforms.height=this.contourLevels[o][n],u.draw(e.LINES,this._contourCounts[o][n],this._contourOffsets[o][n])}for(var n=0;3>n;++n){l.uniforms.model=s.projections[n],l.uniforms.clipBounds=s.clipBounds[n];for(var o=0;3>o;++o)if(this.contourProject[n][o]){l.uniforms.permutation=I[o],e.lineWidth(this.contourWidth[o]);for(var c=0;c<this.contourLevels[o].length;++c)l.uniforms.height=this.contourLevels[o][c],u.draw(e.LINES,this._contourCounts[o][c],this._contourOffsets[o][c])}}u.unbind()}},O.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=this._field[2].shape,r=this._pickResult,n=e[0]*(t.value[0]+(t.value[2]>>4)/16)/255,i=Math.floor(n),a=n-i,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var u=r.position;u[0]=u[1]=u[2]=0;for(var c=0;2>c;++c)for(var f=c?a:1-a,h=0;2>h;++h)for(var d=h?l:1-l,p=i+c,g=s+h,v=f*d,m=0;3>m;++m)u[m]+=this._field[m].get(p,g)*v;for(var y=this._pickResult.level,b=0;3>b;++b)if(y[b]=A.le(this.contourLevels[b],u[b]),y[b]<0)this.contourLevels[b].length>0&&(y[b]=0);else if(y[b]<this.contourLevels[b].length-1){var x=this.contourLevels[b][y[b]],_=this.contourLevels[b][y[b]+1];Math.abs(x-u[b])>Math.abs(_-u[b])&&(y[b]+=1)}r.index[0]=.5>a?i:i+1,r.index[1]=.5>l?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1];for(var m=0;3>m;++m)r.dataCoordinate[m]=this._field[m].get(r.index[0],r.index[1]);return r},O.update=function(t){t=t||{},this.dirty=!0,\"contourWidth\"in t&&(this.contourWidth=l(t.contourWidth,Number)),\"showContour\"in t&&(this.showContour=l(t.showContour,Boolean)),\"showSurface\"in t&&(this.showSurface=!!t.showSurface),\"contourTint\"in t&&(this.contourTint=l(t.contourTint,Boolean)),\"contourColor\"in t&&(this.contourColor=c(t.contourColor)),\"contourProject\"in t&&(this.contourProject=l(t.contourProject,function(t){return l(t,Boolean)})),\"surfaceProject\"in t&&(this.surfaceProject=t.surfaceProject),\"dynamicColor\"in t&&(this.dynamicColor=c(t.dynamicColor)),\"dynamicTint\"in t&&(this.dynamicTint=l(t.dynamicTint,Number)),\"dynamicWidth\"in t&&(this.dynamicWidth=l(t.dynamicWidth,Number)),\"opacity\"in t&&(this.opacity=t.opacity);var e=t.field||t.coords&&t.coords[2]||null;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),\"field\"in t||\"coords\"in t){var r=(e.shape[0]+2)*(e.shape[1]+2);r>this._field[2].data.length&&(v.freeFloat(this._field[2].data),this._field[2].data=v.mallocFloat(h.nextPow2(r))),this._field[2]=x(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),s(this._field[2],e),this.shape=e.shape.slice();for(var i=this.shape,a=0;2>a;++a)this._field[2].size>this._field[a].data.length&&(v.freeFloat(this._field[a].data),this._field[a].data=v.mallocFloat(this._field[2].size)),this._field[a]=x(this._field[a].data,[i[0]+2,i[1]+2]);if(t.coords){var o=t.coords;if(!Array.isArray(o)||3!==o.length)throw new Error(\"gl-surface: invalid coordinates for x/y\");for(var a=0;2>a;++a){for(var u=o[a],f=0;2>f;++f)if(u.shape[f]!==i[f])throw new Error(\"gl-surface: coords have incorrect shape\");s(this._field[a],u)}}else if(t.ticks){var d=t.ticks;if(!Array.isArray(d)||2!==d.length)throw new Error(\"gl-surface: invalid ticks\");for(var a=0;2>a;++a){var p=d[a];if((Array.isArray(p)||p.length)&&(p=x(p)),p.shape[0]!==i[a])throw new Error(\"gl-surface: invalid tick length\");var g=x(p.data,i);g.stride[a]=p.stride[0],g.stride[1^a]=0,s(this._field[a],g)}}else{for(var a=0;2>a;++a){var m=[0,0];m[a]=1,this._field[a]=x(this._field[a].data,[i[0]+2,i[1]+2],m,0)}this._field[0].set(0,0,0);for(var f=0;f<i[0];++f)this._field[0].set(f+1,0,f);this._field[0].set(i[0]+1,0,i[0]-1),this._field[1].set(0,0,0);for(var f=0;f<i[1];++f)this._field[1].set(0,f+1,f);this._field[1].set(0,i[1]+1,i[1]-1)}for(var y=this._field,b=(y[2].size,x(v.mallocFloat(3*y[2].size*2),[3,i[0]+2,i[1]+2,2])),a=0;3>a;++a)M(b.pick(a),y[a],\"mirror\");for(var w=x(v.mallocFloat(3*y[2].size),[i[0]+2,i[1]+2,3]),a=0;a<i[0]+2;++a)for(var f=0;f<i[1]+2;++f){var k=b.get(0,a,f,0),A=b.get(0,a,f,1),L=b.get(1,a,f,0),E=b.get(1,a,f,1),C=b.get(2,a,f,0),j=b.get(2,a,f,1),S=L*j-E*C,T=C*A-j*k,z=k*E-A*L,I=Math.sqrt(S*S+T*T+z*z);1e-8>I?(I=Math.max(Math.abs(S),Math.abs(T),Math.abs(z)),1e-8>I?(z=1,T=S=0,I=1):I=1/I):I=1/Math.sqrt(I),w.set(a,f,0,S*I),w.set(a,f,1,T*I),w.set(a,f,2,z*I)}v.free(b.data);for(var O=[1/0,1/0,1/0],D=[-1/0,-1/0,-1/0],R=(i[0]-1)*(i[1]-1)*6,N=v.mallocFloat(h.nextPow2(9*R)),B=0,F=0,a=0;a<i[0]-1;++a)t:for(var f=0;f<i[1]-1;++f){for(var U=0;2>U;++U)for(var V=0;2>V;++V)for(var H=0;3>H;++H){var q=this._field[H].get(1+a+U,1+f+V);if(isNaN(q)||!isFinite(q))continue t}for(var H=0;6>H;++H){var G=a+P[H][0],Y=f+P[H][1],W=this._field[0].get(G+1,Y+1),X=this._field[1].get(G+1,Y+1),q=this._field[2].get(G+1,Y+1),S=w.get(G+1,Y+1,0),T=w.get(G+1,Y+1,1),z=w.get(G+1,Y+1,2);N[B++]=G,N[B++]=Y,N[B++]=W,N[B++]=X,N[B++]=q,N[B++]=0,N[B++]=S,N[B++]=T,N[B++]=z,O[0]=Math.min(O[0],W),O[1]=Math.min(O[1],X),O[2]=Math.min(O[2],q),D[0]=Math.max(D[0],W),D[1]=Math.max(D[1],X),D[2]=Math.max(D[2],q),F+=1}}this._vertexCount=F,this._coordinateBuffer.update(N.subarray(0,B)),v.freeFloat(N),v.free(w.data),this.bounds=[O,D]}var Z=!1;if(\"levels\"in t){var $=t.levels;$=Array.isArray($[0])?$.slice():[[],[],$];for(var a=0;3>a;++a)$[a]=$[a].slice(),$.sort(function(t,e){return t-e});t:for(var a=0;3>a;++a){if($[a].length!==this.contourLevels[a].length){Z=!0;break}for(var f=0;f<$[a].length;++f)if($[a][f]!==this.contourLevels[a][f]){Z=!0;break t}}this.contourLevels=$}if(Z){for(var y=this._field,i=this.shape,K=[],J=0;3>J;++J){for(var $=this.contourLevels[J],Q=[],te=[],ee=[0,0],a=0;a<$.length;++a){var re=_(this._field[J],$[a]);Q.push(K.length/4|0);var F=0;t:for(var f=0;f<re.cells.length;++f)for(var ne=re.cells[f],H=0;2>H;++H){var ie=re.positions[ne[H]],ae=ie[0],oe=0|Math.floor(ae),se=ae-oe,le=ie[1],ue=0|Math.floor(le),ce=le-ue,fe=!1;e:for(var he=0;2>he;++he){ee[he]=0;for(var de=(J+he+1)%3,U=0;2>U;++U)for(var pe=U?se:1-se,G=0|Math.min(Math.max(oe+U,0),i[0]),V=0;2>V;++V){var ge=V?ce:1-ce,Y=0|Math.min(Math.max(ue+V,0),i[1]),q=this._field[de].get(G,Y);if(!isFinite(q)||isNaN(q)){fe=!0;break e}var ve=pe*ge;ee[he]+=ve*q}}if(fe){if(H>0){for(var me=0;4>me;++me)K.pop();F-=1}continue t}K.push(ee[0],ee[1],ie[0],ie[1]),F+=1}te.push(F)}this._contourOffsets[J]=Q,this._contourCounts[J]=te}for(var ye=v.mallocFloat(K.length),a=0;a<K.length;++a)ye[a]=K[a];this._contourBuffer.update(ye),v.freeFloat(ye)}t.colormap&&this._colorMap.setPixels(n(t.colormap))},O.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var t=0;3>t;++t)v.freeFloat(this._field[t].data)},O.highlight=function(t){if(!t)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[0/0,0/0,0/0],void(this.highlightLevel=[-1,-1,-1]);for(var e=0;3>e;++e)this.highlightLevel[e]=this.enableHighlight[e]?t.level[e]:-1;var r;if(r=this.snapToData?t.dataCoordinate:t.position,this.enableDynamic[0]&&r[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&r[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&r[2]!==this.dynamicLevel[2]){for(var n=0,i=this.shape,a=v.mallocFloat(12*i[0]*i[1]),o=0;3>o;++o)if(this.enableDynamic[o]){this.dynamicLevel[o]=r[o];var s=(o+1)%3,l=(o+2)%3,u=this._field[o],c=this._field[s],f=this._field[l],h=_(u,r[o]),d=h.cells,p=h.positions;this._dynamicOffsets[o]=n;for(var e=0;e<d.length;++e)for(var g=d[e],m=0;2>m;++m){var y=p[g[m]],b=+y[0],x=0|b,w=0|Math.min(x+1,i[0]),k=b-x,A=1-k,M=+y[1],L=0|M,E=0|Math.min(L+1,i[1]),C=M-L,j=1-C,S=A*j,T=A*C,z=k*j,P=k*C,I=S*c.get(x,L)+T*c.get(x,E)+z*c.get(w,L)+P*c.get(w,E),O=S*f.get(x,L)+T*f.get(x,E)+z*f.get(w,L)+P*f.get(w,E);if(isNaN(I)||isNaN(O)){m&&(n-=1);break}a[2*n+0]=I,a[2*n+1]=O,n+=1}this._dynamicCounts[o]=n-this._dynamicOffsets[o]}else this.dynamicLevel[o]=0/0,this._dynamicCounts[o]=0;this._dynamicBuffer.update(a.subarray(0,2*n)),v.freeFloat(a)}}},{\"./lib/shaders\":486,\"binary-search-bounds\":487,\"bit-twiddle\":488,colormap:490,\"gl-buffer\":492,\"gl-mat4/invert\":145,\"gl-mat4/multiply\":147,\"gl-texture2d\":502,\"gl-vao\":506,ndarray:560,\"ndarray-gradient\":507,\"ndarray-ops\":555,\"ndarray-pack\":512,\"surface-nets\":530,\"typedarray-pool\":531}],533:[function(t,e){\"use strict\";\n",
"function r(t,e){function r(t){var e=!1;return\"altKey\"in t&&(e=e||t.altKey!==g.alt,g.alt=!!t.altKey),\"shiftKey\"in t&&(e=e||t.shiftKey!==g.shift,g.shift=!!t.shiftKey),\"ctrlKey\"in t&&(e=e||t.ctrlKey!==g.control,g.control=!!t.ctrlKey),\"metaKey\"in t&&(e=e||t.metaKey!==g.meta,g.meta=!!t.metaKey),e}function i(t,i){var a=n.x(i),o=n.y(i);\"buttons\"in i&&(t=0|i.buttons),(t!==h||a!==d||o!==p||r(i))&&(h=0|t,d=a||0,p=o||0,e(h,d,p,g))}function a(t){i(0,t)}function o(){(h||d||p||g.shift||g.alt||g.meta||g.control)&&(d=p=0,h=0,g.shift=g.alt=g.control=g.meta=!1,e(0,0,0,g))}function s(t){r(t)&&e(h,d,p,g)}function l(t){0===n.buttons(t)?i(0,t):i(h,t)}function u(t){i(h|n.buttons(t),t)}function c(t){i(h&~n.buttons(t),t)}function f(){v||(v=!0,t.addEventListener(\"mousemove\",l),t.addEventListener(\"mousedown\",u),t.addEventListener(\"mouseup\",c),t.addEventListener(\"mouseleave\",a),t.addEventListener(\"mouseenter\",a),t.addEventListener(\"mouseout\",a),t.addEventListener(\"mouseover\",a),t.addEventListener(\"blur\",o),t.addEventListener(\"keyup\",s),t.addEventListener(\"keydown\",s),t.addEventListener(\"keypress\",s),t!==window&&(window.addEventListener(\"blur\",o),window.addEventListener(\"keyup\",s),window.addEventListener(\"keydown\",s),window.addEventListener(\"keypress\",s)))}e||(e=t,t=window);var h=0,d=0,p=0,g={shift:!1,alt:!1,control:!1,meta:!1},v=!1;f();var m={element:t};return Object.defineProperties(m,{enabled:{get:function(){return v},set:function(t){t&&f()},enumerable:!0},buttons:{get:function(){return h},enumerable:!0},x:{get:function(){return d},enumerable:!0},y:{get:function(){return p},enumerable:!0},mods:{get:function(){return g},enumerable:!0}}),m}e.exports=r;var n=t(\"mouse-event\")},{\"mouse-event\":534}],534:[function(t,e,r){\"use strict\";function n(t){if(\"object\"==typeof t){if(\"buttons\"in t)return t.buttons;if(\"which\"in t){var e=t.which;if(2===e)return 4;if(3===e)return 2;if(e>0)return 1<<e-1}else if(\"button\"in t){var e=t.button;if(1===e)return 4;if(2===e)return 2;if(e>=0)return 1<<e}}return 0}function i(t){return t.target||t.srcElement||window}function a(t){if(\"object\"==typeof t){if(\"offsetX\"in t)return t.offsetX;var e=i(t),r=e.getBoundingClientRect();return t.clientX-r.left}return 0}function o(t){if(\"object\"==typeof t){if(\"offsetY\"in t)return t.offsetY;var e=i(t),r=e.getBoundingClientRect();return t.clientY-r.top}return 0}r.buttons=n,r.element=i,r.x=a,r.y=o},{}],535:[function(t,e){e.exports=function(t,e){e||(e=[0,\"\"]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\\d.\\-\\+]*\\s*(.*)/)[1]||\"\",e}},{}],536:[function(t,e){\"use strict\";function r(t,e){var r=a(getComputedStyle(t).getPropertyValue(e));return r[0]*i(r[1],t)}function n(t,e){var n=document.createElement(\"div\");n.style[\"font-size\"]=\"128\"+t,e.appendChild(n);var i=r(n,\"font-size\")/128;return e.removeChild(n),i}function i(t,e){switch(e=e||document.body,t=(t||\"px\").trim().toLowerCase(),(e===window||e===document)&&(e=document.body),t){case\"%\":return e.clientHeight/100;case\"ch\":case\"ex\":return n(t,e);case\"em\":return r(e,\"font-size\");case\"rem\":return r(document.body,\"font-size\");case\"vw\":return window.innerWidth/100;case\"vh\":return window.innerHeight/100;case\"vmin\":return Math.min(window.innerWidth,window.innerHeight)/100;case\"vmax\":return Math.max(window.innerWidth,window.innerHeight)/100;case\"in\":return o;case\"cm\":return o/2.54;case\"mm\":return o/25.4;case\"pt\":return o/72;case\"pc\":return o/6}return 1}var a=t(\"parse-unit\");e.exports=i;var o=96},{\"parse-unit\":535}],537:[function(t,e){\"use strict\";function r(t,e,r){\"function\"==typeof t&&(r=!!e,e=t,t=window);var i=n(\"ex\",t);t.addEventListener(\"wheel\",function(t){r&&t.preventDefault();var n=t.deltaX||0,a=t.deltaY||0,o=t.deltaZ||0,s=t.deltaMode,l=1;switch(s){case 1:l=i;break;case 2:l=window.innerHeight}return n*=l,a*=l,o*=l,n||a||o?e(n,a,o):void 0})}var n=t(\"to-px\");e.exports=r},{\"to-px\":536}],538:[function(t,e){\"use strict\";var r=t(\"cwise/lib/wrapper\")({args:[\"index\",\"array\",\"scalar\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{_inline_1_arg1_=_inline_1_arg2_.apply(void 0,_inline_1_arg0_)}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},debug:!1,funcName:\"cwise\",blockSize:64});e.exports=function(t,e){return r(t,e),t}},{\"cwise/lib/wrapper\":539}],539:[function(t,e,r){arguments[4][329][0].apply(r,arguments)},{\"cwise-compiler\":540,dup:329}],540:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":542,dup:316}],541:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:543}],542:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":541,dup:318}],543:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],544:[function(t,e){\"use strict\";function r(t,e){switch(e.length){case 0:break;case 1:t[0]=1/e[0];break;case 4:n(t,e);break;case 9:i(t,e);break;case 16:a(t,e);break;default:throw new Error(\"currently supports matrices up to 4x4\")}return t}e.exports=r;var n=t(\"gl-mat2/invert\"),i=t(\"gl-mat3/invert\"),a=t(\"gl-mat4/invert\")},{\"gl-mat2/invert\":545,\"gl-mat3/invert\":546,\"gl-mat4/invert\":145}],545:[function(t,e){function r(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r*a-i*n;return o?(o=1/o,t[0]=a*o,t[1]=-n*o,t[2]=-i*o,t[3]=r*o,t):null}e.exports=r},{}],546:[function(t,e){function r(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],u=e[7],c=e[8],f=c*o-s*u,h=-c*a+s*l,d=u*a-o*l,p=r*f+n*h+i*d;return p?(p=1/p,t[0]=f*p,t[1]=(-c*n+i*u)*p,t[2]=(s*n-i*o)*p,t[3]=h*p,t[4]=(c*r-i*l)*p,t[5]=(-s*r+i*a)*p,t[6]=d*p,t[7]=(-u*r+n*l)*p,t[8]=(o*r-n*a)*p,t):null}e.exports=r},{}],547:[function(t,e,r){arguments[4][329][0].apply(r,arguments)},{\"cwise-compiler\":548,dup:329}],548:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":550,dup:316}],549:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:551}],550:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":549,dup:318}],551:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],552:[function(t,e){\"use strict\";function r(t,e){var r=Math.floor(e),n=e-r,i=r>=0&&r<t.shape[0],a=r+1>=0&&r+1<t.shape[0],o=i?+t.get(r):0,s=a?+t.get(r+1):0;return(1-n)*o+n*s}function n(t,e,r){var n=Math.floor(e),i=e-n,a=n>=0&&n<t.shape[0],o=n+1>=0&&n+1<t.shape[0],s=Math.floor(r),l=r-s,u=s>=0&&s<t.shape[1],c=s+1>=0&&s+1<t.shape[1],f=a&&u?t.get(n,s):0,h=a&&c?t.get(n,s+1):0,d=o&&u?t.get(n+1,s):0,p=o&&c?t.get(n+1,s+1):0;return(1-l)*((1-i)*f+i*d)+l*((1-i)*h+i*p)}function i(t,e,r,n){var i=Math.floor(e),a=e-i,o=i>=0&&i<t.shape[0],s=i+1>=0&&i+1<t.shape[0],l=Math.floor(r),u=r-l,c=l>=0&&l<t.shape[1],f=l+1>=0&&l+1<t.shape[1],h=Math.floor(n),d=n-h,p=h>=0&&h<t.shape[2],g=h+1>=0&&h+1<t.shape[2],v=o&&c&&p?t.get(i,l,h):0,m=o&&f&&p?t.get(i,l+1,h):0,y=s&&c&&p?t.get(i+1,l,h):0,b=s&&f&&p?t.get(i+1,l+1,h):0,x=o&&c&&g?t.get(i,l,h+1):0,_=o&&f&&g?t.get(i,l+1,h+1):0,w=s&&c&&g?t.get(i+1,l,h+1):0,k=s&&f&&g?t.get(i+1,l+1,h+1):0;return(1-d)*((1-u)*((1-a)*v+a*y)+u*((1-a)*m+a*b))+d*((1-u)*((1-a)*x+a*w)+u*((1-a)*_+a*k))}function a(t){var e,r,n=0|t.shape.length,i=new Array(n),a=new Array(n),o=new Array(n),s=new Array(n);for(e=0;n>e;++e)r=+arguments[e+1],i[e]=Math.floor(r),a[e]=r-i[e],o[e]=0<=i[e]&&i[e]<t.shape[e],s[e]=0<=i[e]+1&&i[e]+1<t.shape[e];var l,u,c,f=0;t:for(e=0;1<<n>e;++e){for(u=1,c=t.offset,l=0;n>l;++l)if(e&1<<l){if(!s[l])continue t;u*=a[l],c+=t.stride[l]*(i[l]+1)}else{if(!o[l])continue t;u*=1-a[l],c+=t.stride[l]*i[l]}f+=u*t.data[c]}return f}function o(t,e,o,s){switch(t.shape.length){case 0:return 0;case 1:return r(t,e);case 2:return n(t,e,o);case 3:return i(t,e,o,s);default:return a.apply(void 0,arguments)}}e.exports=o,e.exports.d1=r,e.exports.d2=n,e.exports.d3=i},{}],553:[function(t,e){\"use strict\";var r=t(\"ndarray-linear-interpolate\"),n=t(\"cwise/lib/wrapper\")({args:[\"index\",\"array\",\"scalar\",\"scalar\",\"scalar\"],pre:{body:\"{this_warped=new Array(_inline_0_arg4_)}\",args:[{name:\"_inline_0_arg0_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg1_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg2_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg3_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_warped\"],localVars:[]},body:{body:\"{_inline_1_arg2_(this_warped,_inline_1_arg0_),_inline_1_arg1_=_inline_1_arg3_.apply(void 0,this_warped)}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg3_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_warped\"],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},debug:!1,funcName:\"warpND\",blockSize:64}),i=t(\"cwise/lib/wrapper\")({args:[\"index\",\"array\",\"scalar\",\"scalar\",\"scalar\"],pre:{body:\"{this_warped=[0]}\",args:[],thisVars:[\"this_warped\"],localVars:[]},body:{body:\"{_inline_4_arg2_(this_warped,_inline_4_arg0_),_inline_4_arg1_=_inline_4_arg3_(_inline_4_arg4_,this_warped[0])}\",args:[{name:\"_inline_4_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_4_arg1_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_4_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_4_arg3_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_4_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_warped\"],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},debug:!1,funcName:\"warp1D\",blockSize:64}),a=t(\"cwise/lib/wrapper\")({args:[\"index\",\"array\",\"scalar\",\"scalar\",\"scalar\"],pre:{body:\"{this_warped=[0,0]}\",args:[],thisVars:[\"this_warped\"],localVars:[]},body:{body:\"{_inline_7_arg2_(this_warped,_inline_7_arg0_),_inline_7_arg1_=_inline_7_arg3_(_inline_7_arg4_,this_warped[0],this_warped[1])}\",args:[{name:\"_inline_7_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_7_arg1_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_7_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_7_arg3_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_7_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_warped\"],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},debug:!1,funcName:\"warp2D\",blockSize:64}),o=t(\"cwise/lib/wrapper\")({args:[\"index\",\"array\",\"scalar\",\"scalar\",\"scalar\"],pre:{body:\"{this_warped=[0,0,0]}\",args:[],thisVars:[\"this_warped\"],localVars:[]},body:{body:\"{_inline_10_arg2_(this_warped,_inline_10_arg0_),_inline_10_arg1_=_inline_10_arg3_(_inline_10_arg4_,this_warped[0],this_warped[1],this_warped[2])}\",args:[{name:\"_inline_10_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_10_arg1_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_10_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_10_arg3_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_10_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_warped\"],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},debug:!1,funcName:\"warp3D\",blockSize:64});e.exports=function(t,e,s){switch(e.shape.length){case 1:i(t,s,r.d1,e);break;case 2:a(t,s,r.d2,e);break;case 3:o(t,s,r.d3,e);break;default:n(t,s,r.bind(void 0,e),e.shape.length)}return t}},{\"cwise/lib/wrapper\":547,\"ndarray-linear-interpolate\":552}],554:[function(t,e){\"use strict\";function r(t,e,r){var a=e.dimension,o=i([],r);return n(t,e,function(t,e){for(var r=0;a>r;++r){t[r]=o[(a+1)*a+r];for(var n=0;a>n;++n)t[r]+=o[(a+1)*n+r]*e[n]}for(var i=o[(a+1)*(a+1)-1],n=0;a>n;++n)i+=o[(a+1)*n+a]*e[n];for(var s=1/i,r=0;a>r;++r)t[r]*=s;return t}),t}var n=t(\"ndarray-warp\"),i=t(\"gl-matrix-invert\");e.exports=r},{\"gl-matrix-invert\":544,\"ndarray-warp\":553}],555:[function(t,e,r){\"use strict\";function n(t){if(!t)return s;for(var e=0;e<t.args.length;++e){var r=t.args[e];t.args[e]=0===e?{name:r,lvalue:!0,rvalue:!!t.rvalue,count:t.count||1}:{name:r,lvalue:!1,rvalue:!0,count:1}}return t.thisVars||(t.thisVars=[]),t.localVars||(t.localVars=[]),t}function i(t){return o({args:t.args,pre:n(t.pre),body:n(t.body),post:n(t.proc),funcName:t.funcName})}function a(t){for(var e=[],r=0;r<t.args.length;++r)e.push(\"a\"+r);var n=new Function(\"P\",[\"return function \",t.funcName,\"_ndarrayops(\",e.join(\",\"),\") {P(\",e.join(\",\"),\");return a0}\"].join(\"\"));return n(i(t))}var o=t(\"cwise-compiler\"),s={body:\"\",args:[],thisVars:[],localVars:[]},l={add:\"+\",sub:\"-\",mul:\"*\",div:\"/\",mod:\"%\",band:\"&\",bor:\"|\",bxor:\"^\",lshift:\"<<\",rshift:\">>\",rrshift:\">>>\"};!function(){for(var t in l){var e=l[t];r[t]=a({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"eq\"]=a({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a\"+e+\"=b\"},rvalue:!0,funcName:t+\"eq\"}),r[t+\"s\"]=a({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"seq\"]=a({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a\"+e+\"=s\"},rvalue:!0,funcName:t+\"seq\"})}}();var u={not:\"!\",bnot:\"~\",neg:\"-\",recip:\"1.0/\"};!function(){for(var t in u){var e=u[t];r[t]=a({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=\"+e+\"b\"},funcName:t}),r[t+\"eq\"]=a({args:[\"array\"],body:{args:[\"a\"],body:\"a=\"+e+\"a\"},rvalue:!0,count:2,funcName:t+\"eq\"})}}();var c={and:\"&&\",or:\"||\",eq:\"===\",neq:\"!==\",lt:\"<\",gt:\">\",leq:\"<=\",geq:\">=\"};!function(){for(var t in c){var e=c[t];r[t]=a({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"s\"]=a({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"eq\"]=a({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=a\"+e+\"b\"},rvalue:!0,count:2,funcName:t+\"eq\"}),r[t+\"seq\"]=a({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a=a\"+e+\"s\"},rvalue:!0,count:2,funcName:t+\"seq\"})}}();var f=[\"abs\",\"acos\",\"asin\",\"atan\",\"ceil\",\"cos\",\"exp\",\"floor\",\"log\",\"round\",\"sin\",\"sqrt\",\"tan\"];!function(){for(var t=0;t<f.length;++t){var e=f[t];r[e]=a({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b)\",thisVars:[\"this_f\"]},funcName:e}),r[e+\"eq\"]=a({args:[\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\"],body:\"a=this_f(a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"eq\"})}}();var h=[\"max\",\"min\",\"atan2\",\"pow\"];!function(){for(var t=0;t<h.length;++t){var e=h[t];r[e]=a({args:[\"array\",\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(b,c)\",thisVars:[\"this_f\"]},funcName:e}),r[e+\"s\"]=a({args:[\"array\",\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(b,c)\",thisVars:[\"this_f\"]},funcName:e+\"s\"}),r[e+\"eq\"]=a({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(a,b)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"eq\"}),r[e+\"seq\"]=a({args:[\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(a,b)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"seq\"})}}();var d=[\"atan2\",\"pow\"];!function(){for(var t=0;t<d.length;++t){var e=d[t];r[e+\"op\"]=a({args:[\"array\",\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(c,b)\",thisVars:[\"this_f\"]},funcName:e+\"op\"}),r[e+\"ops\"]=a({args:[\"array\",\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\",\"c\"],body:\"a=this_f(c,b)\",thisVars:[\"this_f\"]},funcName:e+\"ops\"}),r[e+\"opeq\"]=a({args:[\"array\",\"array\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b,a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"opeq\"}),r[e+\"opseq\"]=a({args:[\"array\",\"scalar\"],pre:{args:[],body:\"this_f=Math.\"+e,thisVars:[\"this_f\"]},body:{args:[\"a\",\"b\"],body:\"a=this_f(b,a)\",thisVars:[\"this_f\"]},rvalue:!0,count:2,funcName:e+\"opseq\"})}}(),r.any=o({args:[\"array\"],pre:s,body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"if(a){return true}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return false\"},funcName:\"any\"}),r.all=o({args:[\"array\"],pre:s,body:{args:[{name:\"x\",lvalue:!1,rvalue:!0,count:1}],body:\"if(!x){return false}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return true\"},funcName:\"all\"}),r.sum=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"this_s+=a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"sum\"}),r.prod=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=1\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:1}],body:\"this_s*=a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"prod\"}),r.norm2squared=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:2}],body:\"this_s+=a*a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norm2squared\"}),r.norm2=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:2}],body:\"this_s+=a*a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return Math.sqrt(this_s)\"},funcName:\"norm2\"}),r.norminf=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:4}],body:\"if(-a>this_s){this_s=-a}else if(a>this_s){this_s=a}\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norminf\"}),r.norm1=o({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:3}],body:\"this_s+=a<0?-a:a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norm1\"}),r.sup=o({args:[\"array\"],pre:{body:\"this_h=-Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_h\"],localVars:[]},post:{body:\"return this_h\",args:[],thisVars:[\"this_h\"],localVars:[]}}),r.inf=o({args:[\"array\"],pre:{body:\"this_h=Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_<this_h)this_h=_inline_1_arg0_\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_h\"],localVars:[]},post:{body:\"return this_h\",args:[],thisVars:[\"this_h\"],localVars:[]}}),r.argmin=o({args:[\"index\",\"array\",\"shape\"],pre:{body:\"{this_v=Infinity;this_i=_inline_0_arg2_.slice(0)}\",args:[{name:\"_inline_0_arg0_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg1_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg2_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_i\",\"this_v\"],localVars:[]},body:{body:\"{if(_inline_1_arg1_<this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_i\",\"this_v\"],localVars:[\"_inline_1_k\"]},post:{body:\"{return this_i}\",args:[],thisVars:[\"this_i\"],localVars:[]}}),r.argmax=o({args:[\"index\",\"array\",\"shape\"],pre:{body:\"{this_v=-Infinity;this_i=_inline_0_arg2_.slice(0)}\",args:[{name:\"_inline_0_arg0_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg1_\",lvalue:!1,rvalue:!1,count:0},{name:\"_inline_0_arg2_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[\"this_i\",\"this_v\"],localVars:[]},body:{body:\"{if(_inline_1_arg1_>this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_i\",\"this_v\"],localVars:[\"_inline_1_k\"]},post:{body:\"{return this_i}\",args:[],thisVars:[\"this_i\"],localVars:[]}}),r.random=a({args:[\"array\"],pre:{args:[],body:\"this_f=Math.random\",thisVars:[\"this_f\"]},body:{args:[\"a\"],body:\"a=this_f()\",thisVars:[\"this_f\"]},funcName:\"random\"}),r.assign=a({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assign\"}),r.assigns=a({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assigns\"}),r.equals=o({args:[\"array\",\"array\"],pre:s,body:{args:[{name:\"x\",lvalue:!1,rvalue:!0,count:1},{name:\"y\",lvalue:!1,rvalue:!0,count:1}],body:\"if(x!==y){return false}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return true\"},funcName:\"equals\"})},{\"cwise-compiler\":556}],556:[function(t,e,r){arguments[4][316][0].apply(r,arguments)},{\"./lib/thunk.js\":558,dup:316}],557:[function(t,e,r){arguments[4][317][0].apply(r,arguments)},{dup:317,uniq:559}],558:[function(t,e,r){arguments[4][318][0].apply(r,arguments)},{\"./compile.js\":557,dup:318}],559:[function(t,e,r){arguments[4][92][0].apply(r,arguments)},{dup:92}],560:[function(t,e){function r(t,e){return t[0]-e[0]}function n(){var t,e=this.stride,n=new Array(e.length);for(t=0;t<n.length;++t)n[t]=[Math.abs(e[t]),t];n.sort(r);var i=new Array(n.length);for(t=0;t<i.length;++t)i[t]=n[t][1];return i}function i(t,e){var r=[\"View\",e,\"d\",t].join(\"\");0>e&&(r=\"View_Nil\"+t);var i=\"generic\"===t;if(-1===e){var a=\"function \"+r+\"(a){this.data=a;};var proto=\"+r+\".prototype;proto.dtype='\"+t+\"';proto.index=function(){return -1};proto.size=0;proto.dimension=-1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function(){return new \"+r+\"(this.data);};proto.get=proto.set=function(){};proto.pick=function(){return null};return function construct_\"+r+\"(a){return new \"+r+\"(a);}\",o=new Function(a);return o()}if(0===e){var a=\"function \"+r+\"(a,d) {this.data = a;this.offset = d};var proto=\"+r+\".prototype;proto.dtype='\"+t+\"';proto.index=function(){return this.offset};proto.dimension=0;proto.size=1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function \"+r+\"_copy() {return new \"+r+\"(this.data,this.offset)};proto.pick=function \"+r+\"_pick(){return TrivialArray(this.data);};proto.valueOf=proto.get=function \"+r+\"_get(){return \"+(i?\"this.data.get(this.offset)\":\"this.data[this.offset]\")+\"};proto.set=function \"+r+\"_set(v){return \"+(i?\"this.data.set(this.offset,v)\":\"this.data[this.offset]=v\")+\"};return function construct_\"+r+\"(a,b,c,d){return new \"+r+\"(a,d)}\",o=new Function(\"TrivialArray\",a);return o(c[t][0])}var a=[\"'use strict'\"],l=s(e),u=l.map(function(t){return\"i\"+t}),f=\"this.offset+\"+l.map(function(t){return\"this.stride[\"+t+\"]*i\"+t}).join(\"+\"),h=l.map(function(t){return\"b\"+t}).join(\",\"),d=l.map(function(t){return\"c\"+t}).join(\",\");a.push(\"function \"+r+\"(a,\"+h+\",\"+d+\",d){this.data=a\",\"this.shape=[\"+h+\"]\",\"this.stride=[\"+d+\"]\",\"this.offset=d|0}\",\"var proto=\"+r+\".prototype\",\"proto.dtype='\"+t+\"'\",\"proto.dimension=\"+e),a.push(\"Object.defineProperty(proto,'size',{get:function \"+r+\"_size(){return \"+l.map(function(t){return\"this.shape[\"+t+\"]\"}).join(\"*\"),\"}})\"),1===e?a.push(\"proto.order=[0]\"):(a.push(\"Object.defineProperty(proto,'order',{get:\"),4>e?(a.push(\"function \"+r+\"_order(){\"),2===e?a.push(\"return (Math.abs(this.stride[0])>Math.abs(this.stride[1]))?[1,0]:[0,1]}})\"):3===e&&a.push(\"var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})\")):a.push(\"ORDER})\")),a.push(\"proto.set=function \"+r+\"_set(\"+u.join(\",\")+\",v){\"),a.push(i?\"return this.data.set(\"+f+\",v)}\":\"return this.data[\"+f+\"]=v}\"),a.push(\"proto.get=function \"+r+\"_get(\"+u.join(\",\")+\"){\"),a.push(i?\"return this.data.get(\"+f+\")}\":\"return this.data[\"+f+\"]}\"),a.push(\"proto.index=function \"+r+\"_index(\",u.join(),\"){return \"+f+\"}\"),a.push(\"proto.hi=function \"+r+\"_hi(\"+u.join(\",\")+\"){return new \"+r+\"(this.data,\"+l.map(function(t){return[\"(typeof i\",t,\"!=='number'||i\",t,\"<0)?this.shape[\",t,\"]:i\",t,\"|0\"].join(\"\")}).join(\",\")+\",\"+l.map(function(t){return\"this.stride[\"+t+\"]\"}).join(\",\")+\",this.offset)}\");var p=l.map(function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"}),g=l.map(function(t){return\"c\"+t+\"=this.stride[\"+t+\"]\"});a.push(\"proto.lo=function \"+r+\"_lo(\"+u.join(\",\")+\"){var b=this.offset,d=0,\"+p.join(\",\")+\",\"+g.join(\",\"));for(var v=0;e>v;++v)a.push(\"if(typeof i\"+v+\"==='number'&&i\"+v+\">=0){d=i\"+v+\"|0;b+=c\"+v+\"*d;a\"+v+\"-=d}\");a.push(\"return new \"+r+\"(this.data,\"+l.map(function(t){return\"a\"+t}).join(\",\")+\",\"+l.map(function(t){return\"c\"+t}).join(\",\")+\",b)}\"),a.push(\"proto.step=function \"+r+\"_step(\"+u.join(\",\")+\"){var \"+l.map(function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"}).join(\",\")+\",\"+l.map(function(t){return\"b\"+t+\"=this.stride[\"+t+\"]\"}).join(\",\")+\",c=this.offset,d=0,ceil=Math.ceil\");for(var v=0;e>v;++v)a.push(\"if(typeof i\"+v+\"==='number'){d=i\"+v+\"|0;if(d<0){c+=b\"+v+\"*(a\"+v+\"-1);a\"+v+\"=ceil(-a\"+v+\"/d)}else{a\"+v+\"=ceil(a\"+v+\"/d)}b\"+v+\"*=d}\");a.push(\"return new \"+r+\"(this.data,\"+l.map(function(t){return\"a\"+t}).join(\",\")+\",\"+l.map(function(t){return\"b\"+t}).join(\",\")+\",c)}\");for(var m=new Array(e),y=new Array(e),v=0;e>v;++v)m[v]=\"a[i\"+v+\"]\",y[v]=\"b[i\"+v+\"]\";a.push(\"proto.transpose=function \"+r+\"_transpose(\"+u+\"){\"+u.map(function(t,e){return t+\"=(\"+t+\"===undefined?\"+e+\":\"+t+\"|0)\"}).join(\";\"),\"var a=this.shape,b=this.stride;return new \"+r+\"(this.data,\"+m.join(\",\")+\",\"+y.join(\",\")+\",this.offset)}\"),a.push(\"proto.pick=function \"+r+\"_pick(\"+u+\"){var a=[],b=[],c=this.offset\");for(var v=0;e>v;++v)a.push(\"if(typeof i\"+v+\"==='number'&&i\"+v+\">=0){c=(c+this.stride[\"+v+\"]*i\"+v+\")|0}else{a.push(this.shape[\"+v+\"]);b.push(this.stride[\"+v+\"])}\");a.push(\"var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}\"),a.push(\"return function construct_\"+r+\"(data,shape,stride,offset){return new \"+r+\"(data,\"+l.map(function(t){return\"shape[\"+t+\"]\"}).join(\",\")+\",\"+l.map(function(t){return\"stride[\"+t+\"]\"}).join(\",\")+\",offset)}\");var o=new Function(\"CTOR_LIST\",\"ORDER\",a.join(\"\\n\"));return o(c[t],n)}function a(t){if(l(t))return\"buffer\";if(u)switch(Object.prototype.toString.call(t)){case\"[object Float64Array]\":return\"float64\";case\"[object Float32Array]\":return\"float32\";case\"[object Int8Array]\":return\"int8\";case\"[object Int16Array]\":return\"int16\";case\"[object Int32Array]\":return\"int32\";case\"[object Uint8Array]\":return\"uint8\";case\"[object Uint16Array]\":return\"uint16\";case\"[object Uint32Array]\":return\"uint32\";case\"[object Uint8ClampedArray]\":return\"uint8_clamped\"}return Array.isArray(t)?\"array\":\"generic\"}function o(t,e,r,n){if(void 0===t){var o=c.array[0];return o([])}\"number\"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var s=e.length;if(void 0===r){r=new Array(s);for(var l=s-1,u=1;l>=0;--l)r[l]=u,u*=e[l]}if(void 0===n){n=0;for(var l=0;s>l;++l)r[l]<0&&(n-=(e[l]-1)*r[l])}for(var f=a(t),h=c[f];h.length<=s+1;)h.push(i(f,h.length-1));var o=h[s+1];return o(t,e,r,n)}var s=t(\"iota-array\"),l=t(\"is-buffer\"),u=\"undefined\"!=typeof Float64Array,c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};e.exports=o},{\"iota-array\":561,\"is-buffer\":562}],561:[function(t,e){\"use strict\";function r(t){for(var e=new Array(t),r=0;t>r;++r)e[r]=r;return e}e.exports=r},{}],562:[function(t,e){e.exports=function(t){return!(null==t||!t.constructor||\"function\"!=typeof t.constructor.isBuffer||!t.constructor.isBuffer(t))}},{}],563:[function(t,e){\"use strict\";function r(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}e.exports=Object.assign||function(t){for(var e,n,i=r(t),a=1;a<arguments.length;a++){e=arguments[a],n=Object.keys(Object(e));for(var o=0;o<n.length;o++)i[n[o]]=e[n[o]]}return i}},{}],564:[function(t,e){(function(t){e.exports=t.performance&&t.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{}],565:[function(t,e){\"use strict\";function r(t){return t.split(\"\").map(function(t){return t in n?n[t]:\"\"}).join(\"\")}e.exports=r;var n={\" \":\" \",0:\"\\u2070\",1:\"\\xb9\",2:\"\\xb2\",3:\"\\xb3\",4:\"\\u2074\",5:\"\\u2075\",6:\"\\u2076\",7:\"\\u2077\",8:\"\\u2078\",9:\"\\u2079\",\"+\":\"\\u207a\",\"-\":\"\\u207b\",a:\"\\u1d43\",b:\"\\u1d47\",c:\"\\u1d9c\",d:\"\\u1d48\",e:\"\\u1d49\",f:\"\\u1da0\",g:\"\\u1d4d\",h:\"\\u02b0\",i:\"\\u2071\",j:\"\\u02b2\",k:\"\\u1d4f\",l:\"\\u02e1\",m:\"\\u1d50\",n:\"\\u207f\",o:\"\\u1d52\",p:\"\\u1d56\",r:\"\\u02b3\",s:\"\\u02e2\",t:\"\\u1d57\",u:\"\\u1d58\",v:\"\\u1d5b\",w:\"\\u02b7\",x:\"\\u02e3\",y:\"\\u02b8\",z:\"\\u1dbb\"}},{}],566:[function(e,r){!function(){function e(t,r){if(t=t?t:\"\",r=r||{},t instanceof e)return t;if(!(this instanceof e))return new e(t,r);var i=n(t);this._originalInput=t,this._r=i.r,this._g=i.g,this._b=i.b,this._a=i.a,this._roundA=U(100*this._a)/100,this._format=r.format||i.format,this._gradientType=r.gradientType,this._r<1&&(this._r=U(this._r)),this._g<1&&(this._g=U(this._g)),this._b<1&&(this._b=U(this._b)),this._ok=i.ok,this._tc_id=B++}function n(t){var e={r:0,g:0,b:0},r=1,n=!1,a=!1;return\"string\"==typeof t&&(t=O(t)),\"object\"==typeof t&&(t.hasOwnProperty(\"r\")&&t.hasOwnProperty(\"g\")&&t.hasOwnProperty(\"b\")?(e=i(t.r,t.g,t.b),n=!0,a=\"%\"===String(t.r).substr(-1)?\"prgb\":\"rgb\"):t.hasOwnProperty(\"h\")&&t.hasOwnProperty(\"s\")&&t.hasOwnProperty(\"v\")?(t.s=z(t.s),t.v=z(t.v),e=l(t.h,t.s,t.v),n=!0,a=\"hsv\"):t.hasOwnProperty(\"h\")&&t.hasOwnProperty(\"s\")&&t.hasOwnProperty(\"l\")&&(t.s=z(t.s),t.l=z(t.l),e=o(t.h,t.s,t.l),n=!0,a=\"hsl\"),t.hasOwnProperty(\"a\")&&(r=t.a)),r=M(r),{ok:n,format:t.format||a,r:V(255,H(e.r,0)),g:V(255,H(e.g,0)),b:V(255,H(e.b,0)),a:r}}function i(t,e,r){return{r:255*L(t,255),g:255*L(e,255),b:255*L(r,255)}}function a(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,i,a=H(t,e,r),o=V(t,e,r),s=(a+o)/2;if(a==o)n=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case t:n=(e-r)/l+(r>e?6:0);break;case e:n=(r-t)/l+2;break;case r:n=(t-e)/l+4}n/=6}return{h:n,s:i,l:s}}function o(t,e,r){function n(t,e,r){return 0>r&&(r+=1),r>1&&(r-=1),1/6>r?t+6*(e-t)*r:.5>r?e:2/3>r?t+(e-t)*(2/3-r)*6:t}var i,a,o;if(t=L(t,360),e=L(e,100),r=L(r,100),0===e)i=a=o=r;else{var s=.5>r?r*(1+e):r+e-r*e,l=2*r-s;i=n(l,s,t+1/3),a=n(l,s,t),o=n(l,s,t-1/3)}return{r:255*i,g:255*a,b:255*o}}function s(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,i,a=H(t,e,r),o=V(t,e,r),s=a,l=a-o;if(i=0===a?0:l/a,a==o)n=0;else{switch(a){case t:n=(e-r)/l+(r>e?6:0);break;case e:n=(r-t)/l+2;break;case r:n=(t-e)/l+4}n/=6}return{h:n,s:i,v:s}}function l(t,e,r){t=6*L(t,360),e=L(e,100),r=L(r,100);var n=F.floor(t),i=t-n,a=r*(1-e),o=r*(1-i*e),s=r*(1-(1-i)*e),l=n%6,u=[r,o,a,a,s,r][l],c=[s,r,r,o,a,a][l],f=[a,a,s,r,r,o][l];return{r:255*u,g:255*c,b:255*f}}function u(t,e,r,n){var i=[T(U(t).toString(16)),T(U(e).toString(16)),T(U(r).toString(16))];return n&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(\"\")}function c(t,e,r,n){var i=[T(P(n)),T(U(t).toString(16)),T(U(e).toString(16)),T(U(r).toString(16))];return i.join(\"\")}function f(t,r){r=0===r?0:r||10;var n=e(t).toHsl();return n.s-=r/100,n.s=E(n.s),e(n)}function h(t,r){r=0===r?0:r||10;var n=e(t).toHsl();return n.s+=r/100,n.s=E(n.s),e(n)}function d(t){return e(t).desaturate(100)}function p(t,r){r=0===r?0:r||10;var n=e(t).toHsl();return n.l+=r/100,n.l=E(n.l),e(n)}function g(t,r){r=0===r?0:r||10;var n=e(t).toRgb();return n.r=H(0,V(255,n.r-U(255*-(r/100)))),n.g=H(0,V(255,n.g-U(255*-(r/100)))),n.b=H(0,V(255,n.b-U(255*-(r/100)))),e(n)}function v(t,r){r=0===r?0:r||10;var n=e(t).toHsl();return n.l-=r/100,n.l=E(n.l),e(n)}function m(t,r){var n=e(t).toHsl(),i=(U(n.h)+r)%360;return n.h=0>i?360+i:i,e(n)}function y(t){var r=e(t).toHsl();return r.h=(r.h+180)%360,e(r)}function b(t){var r=e(t).toHsl(),n=r.h;return[e(t),e({h:(n+120)%360,s:r.s,l:r.l}),e({h:(n+240)%360,s:r.s,l:r.l})]}function x(t){var r=e(t).toHsl(),n=r.h;return[e(t),e({h:(n+90)%360,s:r.s,l:r.l}),e({h:(n+180)%360,s:r.s,l:r.l}),e({h:(n+270)%360,s:r.s,l:r.l})]\n",
"}function _(t){var r=e(t).toHsl(),n=r.h;return[e(t),e({h:(n+72)%360,s:r.s,l:r.l}),e({h:(n+216)%360,s:r.s,l:r.l})]}function w(t,r,n){r=r||6,n=n||30;var i=e(t).toHsl(),a=360/n,o=[e(t)];for(i.h=(i.h-(a*r>>1)+720)%360;--r;)i.h=(i.h+a)%360,o.push(e(i));return o}function k(t,r){r=r||6;for(var n=e(t).toHsv(),i=n.h,a=n.s,o=n.v,s=[],l=1/r;r--;)s.push(e({h:i,s:a,v:o})),o=(o+l)%1;return s}function A(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}function M(t){return t=parseFloat(t),(isNaN(t)||0>t||t>1)&&(t=1),t}function L(t,e){j(t)&&(t=\"100%\");var r=S(t);return t=V(e,H(0,parseFloat(t))),r&&(t=parseInt(t*e,10)/100),F.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function E(t){return V(1,H(0,t))}function C(t){return parseInt(t,16)}function j(t){return\"string\"==typeof t&&-1!=t.indexOf(\".\")&&1===parseFloat(t)}function S(t){return\"string\"==typeof t&&-1!=t.indexOf(\"%\")}function T(t){return 1==t.length?\"0\"+t:\"\"+t}function z(t){return 1>=t&&(t=100*t+\"%\"),t}function P(t){return Math.round(255*parseFloat(t)).toString(16)}function I(t){return C(t)/255}function O(t){t=t.replace(R,\"\").replace(N,\"\").toLowerCase();var e=!1;if(G[t])t=G[t],e=!0;else if(\"transparent\"==t)return{r:0,g:0,b:0,a:0,format:\"name\"};var r;return(r=W.rgb.exec(t))?{r:r[1],g:r[2],b:r[3]}:(r=W.rgba.exec(t))?{r:r[1],g:r[2],b:r[3],a:r[4]}:(r=W.hsl.exec(t))?{h:r[1],s:r[2],l:r[3]}:(r=W.hsla.exec(t))?{h:r[1],s:r[2],l:r[3],a:r[4]}:(r=W.hsv.exec(t))?{h:r[1],s:r[2],v:r[3]}:(r=W.hsva.exec(t))?{h:r[1],s:r[2],v:r[3],a:r[4]}:(r=W.hex8.exec(t))?{a:I(r[1]),r:C(r[2]),g:C(r[3]),b:C(r[4]),format:e?\"name\":\"hex8\"}:(r=W.hex6.exec(t))?{r:C(r[1]),g:C(r[2]),b:C(r[3]),format:e?\"name\":\"hex\"}:(r=W.hex3.exec(t))?{r:C(r[1]+\"\"+r[1]),g:C(r[2]+\"\"+r[2]),b:C(r[3]+\"\"+r[3]),format:e?\"name\":\"hex\"}:!1}function D(t){var e,r;return t=t||{level:\"AA\",size:\"small\"},e=(t.level||\"AA\").toUpperCase(),r=(t.size||\"small\").toLowerCase(),\"AA\"!==e&&\"AAA\"!==e&&(e=\"AA\"),\"small\"!==r&&\"large\"!==r&&(r=\"small\"),{level:e,size:r}}var R=/^[\\s,#]+/,N=/\\s+$/,B=0,F=Math,U=F.round,V=F.min,H=F.max,q=F.random;e.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,e,r,n,i,a,o=this.toRgb();return t=o.r/255,e=o.g/255,r=o.b/255,n=.03928>=t?t/12.92:Math.pow((t+.055)/1.055,2.4),i=.03928>=e?e/12.92:Math.pow((e+.055)/1.055,2.4),a=.03928>=r?r/12.92:Math.pow((r+.055)/1.055,2.4),.2126*n+.7152*i+.0722*a},setAlpha:function(t){return this._a=M(t),this._roundA=U(100*this._a)/100,this},toHsv:function(){var t=s(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=s(this._r,this._g,this._b),e=U(360*t.h),r=U(100*t.s),n=U(100*t.v);return 1==this._a?\"hsv(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsva(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHsl:function(){var t=a(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=a(this._r,this._g,this._b),e=U(360*t.h),r=U(100*t.s),n=U(100*t.l);return 1==this._a?\"hsl(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsla(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHex:function(t){return u(this._r,this._g,this._b,t)},toHexString:function(t){return\"#\"+this.toHex(t)},toHex8:function(){return c(this._r,this._g,this._b,this._a)},toHex8String:function(){return\"#\"+this.toHex8()},toRgb:function(){return{r:U(this._r),g:U(this._g),b:U(this._b),a:this._a}},toRgbString:function(){return 1==this._a?\"rgb(\"+U(this._r)+\", \"+U(this._g)+\", \"+U(this._b)+\")\":\"rgba(\"+U(this._r)+\", \"+U(this._g)+\", \"+U(this._b)+\", \"+this._roundA+\")\"},toPercentageRgb:function(){return{r:U(100*L(this._r,255))+\"%\",g:U(100*L(this._g,255))+\"%\",b:U(100*L(this._b,255))+\"%\",a:this._a}},toPercentageRgbString:function(){return 1==this._a?\"rgb(\"+U(100*L(this._r,255))+\"%, \"+U(100*L(this._g,255))+\"%, \"+U(100*L(this._b,255))+\"%)\":\"rgba(\"+U(100*L(this._r,255))+\"%, \"+U(100*L(this._g,255))+\"%, \"+U(100*L(this._b,255))+\"%, \"+this._roundA+\")\"},toName:function(){return 0===this._a?\"transparent\":this._a<1?!1:Y[u(this._r,this._g,this._b,!0)]||!1},toFilter:function(t){var r=\"#\"+c(this._r,this._g,this._b,this._a),n=r,i=this._gradientType?\"GradientType = 1, \":\"\";if(t){var a=e(t);n=a.toHex8String()}return\"progid:DXImageTransform.Microsoft.gradient(\"+i+\"startColorstr=\"+r+\",endColorstr=\"+n+\")\"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,n=this._a<1&&this._a>=0,i=!e&&n&&(\"hex\"===t||\"hex6\"===t||\"hex3\"===t||\"name\"===t);return i?\"name\"===t&&0===this._a?this.toName():this.toRgbString():(\"rgb\"===t&&(r=this.toRgbString()),\"prgb\"===t&&(r=this.toPercentageRgbString()),(\"hex\"===t||\"hex6\"===t)&&(r=this.toHexString()),\"hex3\"===t&&(r=this.toHexString(!0)),\"hex8\"===t&&(r=this.toHex8String()),\"name\"===t&&(r=this.toName()),\"hsl\"===t&&(r=this.toHslString()),\"hsv\"===t&&(r=this.toHsvString()),r||this.toHexString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(p,arguments)},brighten:function(){return this._applyModification(g,arguments)},darken:function(){return this._applyModification(v,arguments)},desaturate:function(){return this._applyModification(f,arguments)},saturate:function(){return this._applyModification(h,arguments)},greyscale:function(){return this._applyModification(d,arguments)},spin:function(){return this._applyModification(m,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(w,arguments)},complement:function(){return this._applyCombination(y,arguments)},monochromatic:function(){return this._applyCombination(k,arguments)},splitcomplement:function(){return this._applyCombination(_,arguments)},triad:function(){return this._applyCombination(b,arguments)},tetrad:function(){return this._applyCombination(x,arguments)}},e.fromRatio=function(t,r){if(\"object\"==typeof t){var n={};for(var i in t)t.hasOwnProperty(i)&&(n[i]=\"a\"===i?t[i]:z(t[i]));t=n}return e(t,r)},e.equals=function(t,r){return t&&r?e(t).toRgbString()==e(r).toRgbString():!1},e.random=function(){return e.fromRatio({r:q(),g:q(),b:q()})},e.mix=function(t,r,n){n=0===n?0:n||50;var i,a=e(t).toRgb(),o=e(r).toRgb(),s=n/100,l=2*s-1,u=o.a-a.a;i=l*u==-1?l:(l+u)/(1+l*u),i=(i+1)/2;var c=1-i,f={r:o.r*i+a.r*c,g:o.g*i+a.g*c,b:o.b*i+a.b*c,a:o.a*s+a.a*(1-s)};return e(f)},e.readability=function(t,r){var n=e(t),i=e(r);return(Math.max(n.getLuminance(),i.getLuminance())+.05)/(Math.min(n.getLuminance(),i.getLuminance())+.05)},e.isReadable=function(t,r,n){var i,a,o=e.readability(t,r);switch(a=!1,i=D(n),i.level+i.size){case\"AAsmall\":case\"AAAlarge\":a=o>=4.5;break;case\"AAlarge\":a=o>=3;break;case\"AAAsmall\":a=o>=7}return a},e.mostReadable=function(t,r,n){var i,a,o,s,l=null,u=0;n=n||{},a=n.includeFallbackColors,o=n.level,s=n.size;for(var c=0;c<r.length;c++)i=e.readability(t,r[c]),i>u&&(u=i,l=e(r[c]));return e.isReadable(t,l,{level:o,size:s})||!a?l:(n.includeFallbackColors=!1,e.mostReadable(t,[\"#fff\",\"#000\"],n))};var G=e.names={aliceblue:\"f0f8ff\",antiquewhite:\"faebd7\",aqua:\"0ff\",aquamarine:\"7fffd4\",azure:\"f0ffff\",beige:\"f5f5dc\",bisque:\"ffe4c4\",black:\"000\",blanchedalmond:\"ffebcd\",blue:\"00f\",blueviolet:\"8a2be2\",brown:\"a52a2a\",burlywood:\"deb887\",burntsienna:\"ea7e5d\",cadetblue:\"5f9ea0\",chartreuse:\"7fff00\",chocolate:\"d2691e\",coral:\"ff7f50\",cornflowerblue:\"6495ed\",cornsilk:\"fff8dc\",crimson:\"dc143c\",cyan:\"0ff\",darkblue:\"00008b\",darkcyan:\"008b8b\",darkgoldenrod:\"b8860b\",darkgray:\"a9a9a9\",darkgreen:\"006400\",darkgrey:\"a9a9a9\",darkkhaki:\"bdb76b\",darkmagenta:\"8b008b\",darkolivegreen:\"556b2f\",darkorange:\"ff8c00\",darkorchid:\"9932cc\",darkred:\"8b0000\",darksalmon:\"e9967a\",darkseagreen:\"8fbc8f\",darkslateblue:\"483d8b\",darkslategray:\"2f4f4f\",darkslategrey:\"2f4f4f\",darkturquoise:\"00ced1\",darkviolet:\"9400d3\",deeppink:\"ff1493\",deepskyblue:\"00bfff\",dimgray:\"696969\",dimgrey:\"696969\",dodgerblue:\"1e90ff\",firebrick:\"b22222\",floralwhite:\"fffaf0\",forestgreen:\"228b22\",fuchsia:\"f0f\",gainsboro:\"dcdcdc\",ghostwhite:\"f8f8ff\",gold:\"ffd700\",goldenrod:\"daa520\",gray:\"808080\",green:\"008000\",greenyellow:\"adff2f\",grey:\"808080\",honeydew:\"f0fff0\",hotpink:\"ff69b4\",indianred:\"cd5c5c\",indigo:\"4b0082\",ivory:\"fffff0\",khaki:\"f0e68c\",lavender:\"e6e6fa\",lavenderblush:\"fff0f5\",lawngreen:\"7cfc00\",lemonchiffon:\"fffacd\",lightblue:\"add8e6\",lightcoral:\"f08080\",lightcyan:\"e0ffff\",lightgoldenrodyellow:\"fafad2\",lightgray:\"d3d3d3\",lightgreen:\"90ee90\",lightgrey:\"d3d3d3\",lightpink:\"ffb6c1\",lightsalmon:\"ffa07a\",lightseagreen:\"20b2aa\",lightskyblue:\"87cefa\",lightslategray:\"789\",lightslategrey:\"789\",lightsteelblue:\"b0c4de\",lightyellow:\"ffffe0\",lime:\"0f0\",limegreen:\"32cd32\",linen:\"faf0e6\",magenta:\"f0f\",maroon:\"800000\",mediumaquamarine:\"66cdaa\",mediumblue:\"0000cd\",mediumorchid:\"ba55d3\",mediumpurple:\"9370db\",mediumseagreen:\"3cb371\",mediumslateblue:\"7b68ee\",mediumspringgreen:\"00fa9a\",mediumturquoise:\"48d1cc\",mediumvioletred:\"c71585\",midnightblue:\"191970\",mintcream:\"f5fffa\",mistyrose:\"ffe4e1\",moccasin:\"ffe4b5\",navajowhite:\"ffdead\",navy:\"000080\",oldlace:\"fdf5e6\",olive:\"808000\",olivedrab:\"6b8e23\",orange:\"ffa500\",orangered:\"ff4500\",orchid:\"da70d6\",palegoldenrod:\"eee8aa\",palegreen:\"98fb98\",paleturquoise:\"afeeee\",palevioletred:\"db7093\",papayawhip:\"ffefd5\",peachpuff:\"ffdab9\",peru:\"cd853f\",pink:\"ffc0cb\",plum:\"dda0dd\",powderblue:\"b0e0e6\",purple:\"800080\",rebeccapurple:\"663399\",red:\"f00\",rosybrown:\"bc8f8f\",royalblue:\"4169e1\",saddlebrown:\"8b4513\",salmon:\"fa8072\",sandybrown:\"f4a460\",seagreen:\"2e8b57\",seashell:\"fff5ee\",sienna:\"a0522d\",silver:\"c0c0c0\",skyblue:\"87ceeb\",slateblue:\"6a5acd\",slategray:\"708090\",slategrey:\"708090\",snow:\"fffafa\",springgreen:\"00ff7f\",steelblue:\"4682b4\",tan:\"d2b48c\",teal:\"008080\",thistle:\"d8bfd8\",tomato:\"ff6347\",turquoise:\"40e0d0\",violet:\"ee82ee\",wheat:\"f5deb3\",white:\"fff\",whitesmoke:\"f5f5f5\",yellow:\"ff0\",yellowgreen:\"9acd32\"},Y=e.hexNames=A(G),W=function(){var t=\"[-\\\\+]?\\\\d+%?\",e=\"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\",r=\"(?:\"+e+\")|(?:\"+t+\")\",n=\"[\\\\s|\\\\(]+(\"+r+\")[,|\\\\s]+(\"+r+\")[,|\\\\s]+(\"+r+\")\\\\s*\\\\)?\",i=\"[\\\\s|\\\\(]+(\"+r+\")[,|\\\\s]+(\"+r+\")[,|\\\\s]+(\"+r+\")[,|\\\\s]+(\"+r+\")\\\\s*\\\\)?\";return{rgb:new RegExp(\"rgb\"+n),rgba:new RegExp(\"rgba\"+i),hsl:new RegExp(\"hsl\"+n),hsla:new RegExp(\"hsla\"+i),hsv:new RegExp(\"hsv\"+n),hsva:new RegExp(\"hsva\"+i),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex8:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();\"undefined\"!=typeof r&&r.exports?r.exports=e:\"function\"==typeof t&&t.amd?t(function(){return e}):window.tinycolor=e}()},{}],567:[function(e,r){!function(){function e(t,e){function r(e){var r,n=t.arcs[0>e?~e:e],i=n[0];return t.transform?(r=[0,0],n.forEach(function(t){r[0]+=t[0],r[1]+=t[1]})):r=n[n.length-1],0>e?[r,i]:[i,r]}function n(t,e){for(var r in t){var n=t[r];delete e[n.start],delete n.start,delete n.end,n.forEach(function(t){i[0>t?~t:t]=1}),s.push(n)}}var i={},a={},o={},s=[],l=-1;return e.forEach(function(r,n){var i,a=t.arcs[0>r?~r:r];a.length<3&&!a[1][0]&&!a[1][1]&&(i=e[++l],e[l]=r,e[n]=i)}),e.forEach(function(t){var e,n,i=r(t),s=i[0],l=i[1];if(e=o[s])if(delete o[e.end],e.push(t),e.end=l,n=a[l]){delete a[n.start];var u=n===e?e:e.concat(n);a[u.start=e.start]=o[u.end=n.end]=u}else a[e.start]=o[e.end]=e;else if(e=a[l])if(delete a[e.start],e.unshift(t),e.start=s,n=o[s]){delete o[n.end];var c=n===e?e:n.concat(e);a[c.start=n.start]=o[c.end=e.end]=c}else a[e.start]=o[e.end]=e;else e=[t],a[e.start=s]=o[e.end=l]=e}),n(o,a),n(a,o),e.forEach(function(t){i[0>t?~t:t]||s.push([t])}),s}function i(t,r,n){function i(t){var e=0>t?~t:t;(c[e]||(c[e]=[])).push({i:t,g:u})}function a(t){t.forEach(i)}function o(t){t.forEach(a)}function s(t){\"GeometryCollection\"===t.type?t.geometries.forEach(s):t.type in f&&(u=t,f[t.type](t.arcs))}var l=[];if(arguments.length>1){var u,c=[],f={LineString:a,MultiLineString:o,Polygon:o,MultiPolygon:function(t){t.forEach(o)}};s(r),c.forEach(arguments.length<3?function(t){l.push(t[0].i)}:function(t){n(t[0].g,t[t.length-1].g)&&l.push(t[0].i)})}else for(var h=0,d=t.arcs.length;d>h;++h)l.push(h);return{type:\"MultiLineString\",arcs:e(t,l)}}function a(t,r){function i(t){t.forEach(function(e){e.forEach(function(e){(o[e=0>e?~e:e]||(o[e]=[])).push(t)})}),s.push(t)}function a(e){return d(l(t,{type:\"Polygon\",arcs:[e]}).coordinates[0])>0}var o={},s=[],u=[];return r.forEach(function(t){\"Polygon\"===t.type?i(t.arcs):\"MultiPolygon\"===t.type&&t.arcs.forEach(i)}),s.forEach(function(t){if(!t._){var e=[],r=[t];for(t._=1,u.push(e);t=r.pop();)e.push(t),t.forEach(function(t){t.forEach(function(t){o[0>t?~t:t].forEach(function(t){t._||(t._=1,r.push(t))})})})}}),s.forEach(function(t){delete t._}),{type:\"MultiPolygon\",arcs:u.map(function(r){var i=[];if(r.forEach(function(t){t.forEach(function(t){t.forEach(function(t){o[0>t?~t:t].length<2&&i.push(t)})})}),i=e(t,i),(n=i.length)>1)for(var s,l=a(r[0][0]),u=0;u<n;++u)if(l===a(i[u])){s=i[0],i[0]=i[u],i[u]=s;break}return i})}}function o(t,e){return\"GeometryCollection\"===e.type?{type:\"FeatureCollection\",features:e.geometries.map(function(e){return s(t,e)})}:s(t,e)}function s(t,e){var r={type:\"Feature\",id:e.id,properties:e.properties||{},geometry:l(t,e)};return null==e.id&&delete r.id,r}function l(t,e){function r(t,e){e.length&&e.pop();for(var r,n=c[0>t?~t:t],i=0,a=n.length;a>i;++i)e.push(r=n[i].slice()),l(r,i);0>t&&u(e,a)}function n(t){return t=t.slice(),l(t,0),t}function i(t){for(var e=[],n=0,i=t.length;i>n;++n)r(t[n],e);return e.length<2&&e.push(e[0].slice()),e}function a(t){for(var e=i(t);e.length<4;)e.push(e[0].slice());return e}function o(t){return t.map(a)}function s(t){var e=t.type;return\"GeometryCollection\"===e?{type:e,geometries:t.geometries.map(s)}:e in f?{type:e,coordinates:f[e](t)}:null}var l=m(t.transform),c=t.arcs,f={Point:function(t){return n(t.coordinates)},MultiPoint:function(t){return t.coordinates.map(n)},LineString:function(t){return i(t.arcs)},MultiLineString:function(t){return t.arcs.map(i)},Polygon:function(t){return o(t.arcs)},MultiPolygon:function(t){return t.arcs.map(o)}};return s(e)}function u(t,e){for(var r,n=t.length,i=n-e;i<--n;)r=t[i],t[i++]=t[n],t[n]=r}function c(t,e){for(var r=0,n=t.length;n>r;){var i=r+n>>>1;t[i]<e?r=i+1:n=i}return r}function f(t){function e(t,e){t.forEach(function(t){0>t&&(t=~t);var r=i[t];r?r.push(e):i[t]=[e]})}function r(t,r){t.forEach(function(t){e(t,r)})}function n(t,e){\"GeometryCollection\"===t.type?t.geometries.forEach(function(t){n(t,e)}):t.type in o&&o[t.type](t.arcs,e)}var i={},a=t.map(function(){return[]}),o={LineString:e,MultiLineString:r,Polygon:r,MultiPolygon:function(t,e){t.forEach(function(t){r(t,e)})}};t.forEach(n);for(var s in i)for(var l=i[s],u=l.length,f=0;u>f;++f)for(var h=f+1;u>h;++h){var d,p=l[f],g=l[h];(d=a[p])[s=c(d,g)]!==g&&d.splice(s,0,g),(d=a[g])[s=c(d,p)]!==p&&d.splice(s,0,p)}return a}function h(t,e){function r(t){a.remove(t),t[1][2]=e(t),a.push(t)}var n=m(t.transform),i=y(t.transform),a=v();return e||(e=p),t.arcs.forEach(function(t){for(var o,s,l=[],u=0,c=0,f=t.length;f>c;++c)s=t[c],n(t[c]=[s[0],s[1],1/0],c);for(var c=1,f=t.length-1;f>c;++c)o=t.slice(c-1,c+2),o[1][2]=e(o),l.push(o),a.push(o);for(var c=0,f=l.length;f>c;++c)o=l[c],o.previous=l[c-1],o.next=l[c+1];for(;o=a.pop();){var h=o.previous,d=o.next;o[1][2]<u?o[1][2]=u:u=o[1][2],h&&(h.next=d,h[2]=o[2],r(h)),d&&(d.previous=h,d[0]=o[0],r(d))}t.forEach(i)}),t}function d(t){for(var e,r=-1,n=t.length,i=t[n-1],a=0;++r<n;)e=i,i=t[r],a+=e[0]*i[1]-e[1]*i[0];return.5*a}function p(t){var e=t[0],r=t[1],n=t[2];return Math.abs((e[0]-n[0])*(r[1]-e[1])-(e[0]-r[0])*(n[1]-e[1]))}function g(t,e){return t[1][2]-e[1][2]}function v(){function t(t,e){for(;e>0;){var r=(e+1>>1)-1,i=n[r];if(g(t,i)>=0)break;n[i._=e]=i,n[t._=e=r]=t}}function e(t,e){for(;;){var r=e+1<<1,a=r-1,o=e,s=n[o];if(i>a&&g(n[a],s)<0&&(s=n[o=a]),i>r&&g(n[r],s)<0&&(s=n[o=r]),o===e)break;n[s._=e]=s,n[t._=e=o]=t}}var r={},n=[],i=0;return r.push=function(e){return t(n[e._=i]=e,i++),i},r.pop=function(){if(!(0>=i)){var t,r=n[0];return--i>0&&(t=n[i],e(n[t._=0]=t,0)),r}},r.remove=function(r){var a,o=r._;if(n[o]===r)return o!==--i&&(a=n[i],(g(a,r)<0?t:e)(n[a._=o]=a,o)),o},r}function m(t){if(!t)return b;var e,r,n=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){s||(e=r=0),t[0]=(e+=t[0])*n+a,t[1]=(r+=t[1])*i+o}}function y(t){if(!t)return b;var e,r,n=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){s||(e=r=0);var l=(t[0]-a)/n|0,u=(t[1]-o)/i|0;t[0]=l-e,t[1]=u-r,e=l,r=u}}function b(){}var x={version:\"1.6.19\",mesh:function(t){return l(t,i.apply(this,arguments))},meshArcs:i,merge:function(t){return l(t,a.apply(this,arguments))},mergeArcs:a,feature:o,neighbors:f,presimplify:h};\"function\"==typeof t&&t.amd?t(x):\"object\"==typeof r&&r.exports?r.exports=x:this.topojson=x}()},{}],568:[function(t,e){\"use strict\";function r(t,e){function r(e,r){return o.Lib.coerce(t,n,a.layoutAttributes,e,r)}var n={};r(\"opacity\"),r(\"align\"),r(\"bgcolor\");var i=r(\"bordercolor\"),s=o.Color.opacity(i);r(\"borderpad\");var l=r(\"borderwidth\"),u=r(\"showarrow\");u&&(r(\"arrowcolor\",s?n.bordercolor:o.Color.defaultLine),r(\"arrowhead\"),r(\"arrowsize\"),r(\"arrowwidth\",2*(s&&l||1)),r(\"ax\"),r(\"ay\"),o.Lib.noneOrAll(t,n,[\"ax\",\"ay\"])),r(\"text\",u?\"&nbsp;\":\"new text\"),r(\"textangle\"),r(\"font\",e.font);for(var c=[\"x\",\"y\"],f=0;2>f;f++){var h=c[f],d={_fullLayout:e},p=o.Axes.coerceRef(t,n,d,h),g=.5;if(\"paper\"!==p){var v=o.Axes.getFromId(d,p);if(g=v.range[0]+g*(v.range[1]-v.range[0]),-1!==[\"date\",\"category\"].indexOf(v.type)&&\"string\"==typeof t[h]){var m;\"date\"===v.type?(m=o.Lib.dateTime2ms(t[h]),m!==!1&&(t[h]=m)):(v._categories||[]).length&&(m=v._categories.indexOf(t[h]),-1!==m&&(t[h]=m))}}r(h,g),u||r(h+\"anchor\")}return o.Lib.noneOrAll(t,n,[\"x\",\"y\"]),n}function n(t){var e=t._fullLayout;e.annotations.forEach(function(e){var r=o.Axes.getFromId(t,e.xref),n=o.Axes.getFromId(t,e.yref);if(r||n){var i=(e._xsize||0)/2,a=e._xshift||0,s=(e._ysize||0)/2,l=e._yshift||0,u=i-a,c=i+a,f=s-l,h=s+l;if(e.showarrow){var d=3*e.arrowsize*e.arrowwidth;u=Math.max(u,d),c=Math.max(c,d),f=Math.max(f,d),h=Math.max(h,d)}r&&r.autorange&&o.Axes.expand(r,[r.l2c(e.x)],{ppadplus:c,ppadminus:u}),n&&n.autorange&&o.Axes.expand(n,[n.l2c(e.y)],{ppadplus:h,ppadminus:f})}})}function i(t,e,r,n,i,a,o,s){var l=r-t,u=i-t,c=o-i,f=n-e,h=a-e,d=s-a,p=l*d-c*f;if(0===p)return null;var g=(u*d-c*h)/p,v=(u*f-l*h)/p;return 0>v||v>1||0>g||g>1?null:{x:t+l*g,y:e+f*g}}var a=e.exports={},o=t(\"./plotly\"),s=t(\"./isnumeric\");a.ARROWPATHS=[\"\",{path:\"M-2.4,-3V3L0.6,0Z\",backoff:.6},{path:\"M-3.7,-2.5V2.5L1.3,0Z\",backoff:1.3},{path:\"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z\",backoff:1.55},{path:\"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z\",backoff:1.6},{path:\"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z\",backoff:2},{path:\"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z\",backoff:0},{path:\"M2,2V-2H-2V2Z\",backoff:0}],a.layoutAttributes={_isLinkedToArray:!0,text:{type:\"string\",blankOk:!1},textangle:{type:\"angle\",dflt:0},font:{type:\"font\"},opacity:{type:\"number\",min:0,max:1,dflt:1},align:{type:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"center\"},bgcolor:{type:\"color\",dflt:\"rgba(0,0,0,0)\"},bordercolor:{type:\"color\",dflt:\"rgba(0,0,0,0)\"},borderpad:{type:\"number\",min:0,dflt:1},borderwidth:{type:\"number\",min:0,dflt:1},showarrow:{type:\"boolean\",dflt:!0},arrowcolor:{type:\"color\"},arrowhead:{type:\"integer\",min:0,max:a.ARROWPATHS.length,dflt:1},arrowsize:{type:\"number\",min:.3,dflt:1},arrowwidth:{type:\"number\",min:.1},ax:{type:\"number\",dflt:-10},ay:{type:\"number\",dflt:-30},xref:{type:\"enumerated\"},x:{type:\"number\"},xanchor:{type:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"auto\"},yref:{type:\"enumerated\"},y:{type:\"number\"},yanchor:{type:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"auto\"}},a.supplyLayoutDefaults=function(t,e){for(var n=t.annotations||[],i=e.annotations=[],a=0;a<n.length;a++)i.push(r(n[a]||{},e))},a.drawAll=function(t){var e=t._fullLayout;e._infolayer.selectAll(\".annotation\").remove();for(var r=0;r<e.annotations.length;r++)a.draw(t,r);return o.Plots.previousPromises(t)},a.add=function(t){var e=t._fullLayout.annotations.length;o.relayout(t,\"annotations[\"+e+\"]\",\"add\")},a.draw=function(t,e,n,l){function u(t){return t.call(o.Drawing.font,G).attr({\"text-anchor\":{left:\"start\",right:\"end\"}[P.align]||\"middle\"}),o.util.convertToTspans(t,c),t}function c(){function r(t,e){return\"auto\"===e&&(e=1/3>t?\"left\":t>2/3?\"right\":\"center\"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}Y.selectAll(\"tspan.line\").attr({y:0,x:0});var n=F.select(\".annotation-math-group\"),s=!n.empty(),l=o.Drawing.bBox((s?n:Y).node()),u=l.width,c=l.height,f=Math.round(u+2*H),h=Math.round(c+2*H);P._w=u,P._h=c;var p=!1;if([\"x\",\"y\"].forEach(function(e){var n,i=o.Axes.getFromId(t,P[e+\"ref\"]||e),a=(R+(\"x\"===e?0:90))*Math.PI/180,s=f*Math.abs(Math.cos(a))+h*Math.abs(Math.sin(a)),l=P[e+\"anchor\"];if(i){if(!i.autorange&&(P[e]-i.range[0])*(P[e]-i.range[1])>0)return void(p=!0);D[e]=i._offset+i.l2p(P[e]),n=.5}else n=P[e],\"y\"===e&&(n=1-n),D[e]=\"x\"===e?_.l+_.w*n:_.t+_.h*n;var u=0;u=P.showarrow?P[\"a\"+e]:s*r(n,l),D[e]+=u,P[\"_\"+e+\"type\"]=i&&i.type,P[\"_\"+e+\"size\"]=s,P[\"_\"+e+\"shift\"]=u}),p)return void F.remove();var g,v;P.showarrow&&(g=o.Lib.constrain(D.x-P.ax,1,d.width-1),v=o.Lib.constrain(D.y-P.ay,1,d.height-1)),D.x=o.Lib.constrain(D.x,1,d.width-1),D.y=o.Lib.constrain(D.y,1,d.height-1);var m=H-l.top,y=H-l.left;s?n.select(\"svg\").attr({x:H-1,y:H}):(Y.attr({x:y,y:m}),Y.selectAll(\"tspan.line\").attr({y:m,x:y})),q.call(o.Drawing.setRect,U/2,U/2,f-U,h-U),F.call(o.Drawing.setRect,Math.round(D.x-f/2),Math.round(D.y-h/2),f,h);var b=\"annotations[\"+e+\"]\",x=function(r,n){$(t).find('.annotation-arrow-g[data-index=\"'+e+'\"]').remove();var s=D.x+r,l=D.y+n,u=o.Lib.rotationXYMatrix(R,s,l),c=o.Lib.apply2DTransform(u),f=o.Lib.apply2DTransform2(u),h=q.attr(\"width\")/2,d=q.attr(\"height\")/2,p=[[s-h,l-d,s-h,l+d],[s-h,l+d,s+h,l+d],[s+h,l+d,s+h,l-d],[s+h,l-d,s-h,l-d]].map(f);if(!p.reduce(function(t,e){return t^!!i(g,v,g+1e6,v+1e6,e[0],e[1],e[2],e[3])},!1)){p.forEach(function(t){var e=i(s,l,g,v,t[0],t[1],t[2],t[3]);e&&(s=e.x,l=e.y)});var m=P.arrowwidth,y=P.arrowcolor,x=N.append(\"g\").style({opacity:o.Color.opacity(y)}).classed(\"annotation-arrow-g\",!0).attr(\"data-index\",String(e)),w=x.append(\"path\").attr(\"d\",\"M\"+s+\",\"+l+\"L\"+g+\",\"+v).style(\"stroke-width\",m+\"px\").call(o.Color.stroke,o.Color.rgb(y));a.arrowhead(w,P.arrowhead,\"end\",P.arrowsize);var k=x.append(\"path\").classed(\"annotation\",!0).classed(\"anndrag\",!0).attr({\"data-index\":String(e),d:\"M3,3H-3V-3H3ZM0,0L\"+(s-g)+\",\"+(l-v),transform:\"translate(\"+g+\",\"+v+\")\"}).style(\"stroke-width\",m+6+\"px\").call(o.Color.stroke,\"rgba(0,0,0,0)\").call(o.Color.fill,\"rgba(0,0,0,0)\");if(t._context.editable){var A,M,L;o.Fx.dragElement({element:k.node(),prepFn:function(){M=Number(F.attr(\"x\")),L=Number(F.attr(\"y\")),A={},I&&I.autorange&&(A[I._name+\".autorange\"]=!0),O&&O.autorange&&(A[O._name+\".autorange\"]=!0)},moveFn:function(t,e){x.attr(\"transform\",\"translate(\"+t+\",\"+e+\")\");var r=c(M,L),n=r[0]+t,i=r[1]+e;F.call(o.Drawing.setPosition,n,i),A[b+\".x\"]=I?P.x+t/I._m:(g+t-_.l)/_.w,A[b+\".y\"]=O?P.y+e/O._m:1-(v+e-_.t)/_.h,B.attr({transform:\"rotate(\"+R+\",\"+n+\",\"+i+\")\"})},doneFn:function(e){if(e){o.relayout(t,A);var r=document.querySelector(\".js-notes-box-panel\");r&&r.redraw(r.selectedObj)}}})}}};P.showarrow&&x(0,0);var w=o.Lib.rotationXYMatrix(R,D.x,D.y),k=o.Lib.apply2DTransform(w);if(t._context.editable){var A,M,L;o.Fx.dragElement({element:F.node(),prepFn:function(){A=Number(F.attr(\"x\")),M=Number(F.attr(\"y\")),L={}},moveFn:function(t,e){F.call(o.Drawing.setPosition,A+t,M+e);var r=\"pointer\";if(P.showarrow)L[b+\".ax\"]=P.ax+t,L[b+\".ay\"]=P.ay+e,x(t,e);else{if(I)L[b+\".x\"]=P.x+t/I._m;else{var n=P._xsize/_.w,i=P.x+P._xshift/_.w-n/2;L[b+\".x\"]=o.Fx.dragAlign(i+t/_.w,n,0,1,P.xanchor)}if(O)L[b+\".y\"]=P.y+e/O._m;else{var a=P._ysize/_.h,s=P.y-P._yshift/_.h-a/2;L[b+\".y\"]=o.Fx.dragAlign(s-e/_.h,a,0,1,P.yanchor)}I&&O||(r=o.Fx.dragCursors(I?.5:L[b+\".x\"],O?.5:L[b+\".y\"],P.xanchor,P.yanchor))}var l=k(A,M),u=l[0]+t,c=l[1]+e;F.call(o.Drawing.setPosition,u,c),B.attr({transform:\"rotate(\"+R+\",\"+u+\",\"+c+\")\"}),o.Fx.setCursor(F,r)},doneFn:function(e){if(o.Fx.setCursor(F),e){o.relayout(t,L);var r=document.querySelector(\".js-notes-box-panel\");r&&r.redraw(r.selectedObj)}}})}}var f,h=t.layout,d=t._fullLayout;if(!s(e)||-1===e){if(!e&&Array.isArray(l))return h.annotations=l,a.supplyLayoutDefaults(h,d),void a.drawAll(t);if(\"remove\"===l)return delete h.annotations,d.annotations=[],void a.drawAll(t);if(n&&\"add\"!==l){for(f=0;f<d.annotations.length;f++)a.draw(t,f,n,l);return}e=d.annotations.length,d.annotations.push({})}if(!n&&l){if(\"remove\"===l){for(d._infolayer.selectAll('.annotation[data-index=\"'+e+'\"]').remove(),d.annotations.splice(e,1),h.annotations.splice(e,1),f=e;f<d.annotations.length;f++)d._infolayer.selectAll('.annotation[data-index=\"'+(f+1)+'\"]').attr(\"data-index\",String(f)),a.draw(t,f);return}if(\"add\"===l||$.isPlainObject(l)){d.annotations.splice(e,0,{});var p=$.isPlainObject(l)?$.extend({},l):{text:\"New text\"};for(h.annotations?h.annotations.splice(e,0,p):h.annotations=[p],f=d.annotations.length-1;f>e;f--)d._infolayer.selectAll('.annotation[data-index=\"'+(f-1)+'\"]').attr(\"data-index\",String(f)),a.draw(t,f)}}d._infolayer.selectAll('.annotation[data-index=\"'+e+'\"]').remove();var g=h.annotations[e],v=d.annotations[e];if(g){var m={xref:g.xref,yref:g.yref},y={};\"string\"==typeof n&&n?y[n]=l:$.isPlainObject(n)&&(y=n);var b=Object.keys(y);for(f=0;f<b.length;f++){var x=b[f];o.Lib.nestedProperty(g,x).set(y[x])}var _=d._size,w=[\"x\",\"y\"];for(f=0;2>f;f++){var k=w[f];if(void 0===y[k]&&void 0!==g[k]){var A=o.Axes.getFromId(t,o.Axes.coerceRef(m,{},t,k)),M=o.Axes.getFromId(t,o.Axes.coerceRef(g,{},t,k)),L=g[k],E=v[\"_\"+k+\"type\"];if(void 0!==y[k+\"ref\"]){var C=\"auto\"===g[k+\"anchor\"],j=\"x\"===k?_.w:_.h,S=(v[\"_\"+k+\"size\"]||0)/(2*j);if(A&&M)L=(L-A.range[0])/(A.range[1]-A.range[0]),L=M.range[0]+L*(M.range[1]-M.range[0]);else if(A){if(L=(L-A.range[0])/(A.range[1]-A.range[0]),L=A.domain[0]+L*(A.domain[1]-A.domain[0]),C){var T=L+S,z=L-S;2/3>L+z?L=z:L+T>4/3&&(L=T)}}else M&&(C&&(1/3>L?L+=S:L>2/3&&(L-=S)),L=(L-M.domain[0])/(M.domain[1]-M.domain[0]),L=M.range[0]+L*(M.range[1]-M.range[0]))}M&&M===A&&E&&(\"log\"===E&&\"log\"!==M.type?L=Math.pow(10,L):\"log\"!==E&&\"log\"===M.type&&(L=L>0?Math.log(L)/Math.LN10:void 0)),g[k]=L}}var P=r(g,d);d.annotations[e]=P;var I=o.Axes.getFromId(t,P.xref),O=o.Axes.getFromId(t,P.yref),D={x:0,y:0},R=+P.textangle||0,N=d._infolayer.append(\"g\").classed(\"annotation\",!0).attr(\"data-index\",String(e)).style(\"opacity\",P.opacity).on(\"click\",function(){t._dragging=!1,$(t).trigger(\"plotly_clickannotation\",{index:e,annotation:g,fullAnnotation:P})}),B=N.append(\"g\").classed(\"annotation-text-g\",!0).attr(\"data-index\",String(e)),F=B.append(\"svg\").call(o.Drawing.setPosition,0,0),U=P.borderwidth,V=P.borderpad,H=U+V,q=F.append(\"rect\").attr(\"class\",\"bg\").style(\"stroke-width\",U+\"px\").call(o.Color.stroke,P.bordercolor).call(o.Color.fill,P.bgcolor),G=P.font,Y=F.append(\"text\").classed(\"annotation\",!0).attr(\"data-unformatted\",P.text).text(P.text);t._context.editable?Y.call(o.util.makeEditable,F).call(u).on(\"edit\",function(r){P.text=r,this.attr({\"data-unformatted\":P.text}),this.call(u);var n={};n[\"annotations[\"+e+\"].text\"]=P.text,I&&I.autorange&&(n[I._name+\".autorange\"]=!0),O&&O.autorange&&(n[O._name+\".autorange\"]=!0),o.relayout(t,n)}):Y.call(u),B.attr({transform:\"rotate(\"+R+\",\"+D.x+\",\"+D.y+\")\"}).call(o.Drawing.setPosition,D.x,D.y)}},a.arrowhead=function(t,e,r,n){s(n)||(n=1);var i=t.node(),l=a.ARROWPATHS[e||0];if(l){\"string\"==typeof r&&r||(r=\"end\");var u,c,f,h,d=(o.Drawing.getPx(t,\"stroke-width\")||1)*n,p=t.style(\"stroke\")||o.Color.defaultLine,g=t.style(\"stroke-opacity\")||1,v=r.indexOf(\"start\")>=0,m=r.indexOf(\"end\")>=0,y=l.backoff*d;if(\"line\"===i.nodeName){if(u={x:+t.attr(\"x1\"),y:+t.attr(\"y1\")},c={x:+t.attr(\"x2\"),y:+t.attr(\"y2\")},f=Math.atan2(u.y-c.y,u.x-c.x),h=f+Math.PI,y){var b=y*Math.cos(f),x=y*Math.sin(f);v&&(u.x-=b,u.y-=x,t.attr({x1:u.x,y1:u.y})),m&&(c.x+=b,c.y+=x,t.attr({x2:c.x,y2:c.y}))}}else if(\"path\"===i.nodeName){var _=i.getTotalLength(),w=\"\";if(v){var k=i.getPointAtLength(0),A=i.getPointAtLength(.1);f=Math.atan2(k.y-A.y,k.x-A.x),u=i.getPointAtLength(Math.min(y,_)),y&&(w=\"0px,\"+y+\"px,\")}if(m){var M=i.getPointAtLength(_),L=i.getPointAtLength(_-.1);if(h=Math.atan2(M.y-L.y,M.x-L.x),c=i.getPointAtLength(Math.max(0,_-y)),y){var E=w?2*y:y;w+=_-E+\"px,\"+_+\"px\"}}else w&&(w+=_+\"px\");w&&t.style(\"stroke-dasharray\",w)}var C=function(r,n){e>5&&(n=0),d3.select(i.parentElement).append(\"path\").attr({class:t.attr(\"class\"),d:l.path,transform:\"translate(\"+r.x+\",\"+r.y+\")rotate(\"+180*n/Math.PI+\")scale(\"+d+\")\"}).style({fill:p,opacity:g,\"stroke-width\":0})};v&&C(u,f),m&&C(c,h)}},a.calcAutorange=function(t){var e=t._fullLayout,r=e.annotations;if(r.length&&t._fullData.length){var i={};r.forEach(function(t){i[t.xref]=!0,i[t.yref]=!0});var s=o.Axes.list(t).filter(function(t){return t.autorange&&i[t._id]});if(s.length)return o.Lib.syncOrAsync([a.drawAll,n],t)}}},{\"./isnumeric\":619,\"./plotly\":626}],569:[function(t,e){\"use strict\";function r(t,e){if(\"-\"===t.type){var r=t._id,o=r.charAt(0);-1!==r.indexOf(\"scene\")&&(r=o);var s=a(e,r,o);if(s){if(\"histogram\"===s.type&&o==={v:\"y\",h:\"x\"}[s.orientation||\"v\"])return void(t.type=\"linear\");if(i(s,o)){for(var l,u=n(s),c=[],f=0;f<e.length;f++)l=e[f],M.Plots.traceIs(l,\"box\")&&(l[o+\"axis\"]||o)===r&&c.push(void 0!==l[u]?l[u][0]:void 0!==l.name?l.name:\"text\");t.type=A.autoType(c)}else t.type=A.autoType(s[o]||[s[o+\"0\"]])}}}function n(t){return{v:\"x\",h:\"y\"}[t.orientation||\"v\"]}function i(t,e){var r=n(t);return M.Plots.traceIs(t,\"box\")&&e===r&&void 0===t[r]&&void 0===t[r+\"0\"]}function a(t,e,r){for(var n,a=0;a<t.length;a++)if(n=t[a],(n[r+\"axis\"]||r)===e){if(i(n,r))return n;if((n[r]||[]).length||n[r+\"0\"])return n}}function o(t){if(!t)return!1;for(var e=0;e<t.length;e++)if(L(t[e]))return!0;return!1}function s(t){var e,r,n=t.tickvals,i=t.ticktext,a=new Array(n.length),o=1.0001*t.range[0]-1e-4*t.range[1],s=1.0001*t.range[1]-1e-4*t.range[0],l=Math.min(o,s),u=Math.max(o,s),c=0;for(Array.isArray(i)||(i=[]),r=0;r<n.length;r++)e=t.d2l(n[r]),e>l&&u>e&&(a[c]=void 0===i[r]?A.tickText(t,e):f(t,e,String(i[r])),c++);return c<n.length&&a.splice(c,n.length-c),a}function l(t,e,r){return e*M.Lib.roundUp(t/e,r)}function u(t){var e,r=t.dtick;if(t._tickexponent=0,L(r)||\"string\"==typeof r||(r=1),\"category\"===t.type)t._tickround=null;else if(L(r)||\"L\"===r.charAt(0))if(\"date\"===t.type)t._tickround=r>=864e5?\"d\":r>=36e5?\"H\":r>=6e4?\"M\":r>=1e3?\"S\":3-Math.round(Math.log(r/2)/Math.LN10);else{L(r)||(r=Number(r.substr(1))),t._tickround=2-Math.floor(Math.log(r)/Math.LN10+.01),e=\"log\"===t.type?Math.pow(10,Math.max(t.range[0],t.range[1])):Math.max(Math.abs(t.range[0]),Math.abs(t.range[1]));var n=Math.floor(Math.log(e)/Math.LN10+.01);Math.abs(n)>3&&(t._tickexponent=\"SI\"===t.exponentformat||\"B\"===t.exponentformat?3*Math.round((n-1)/3):n)}else t._tickround=\"M\"===r.charAt(0)?2===r.length?\"m\":\"y\":null}function c(t,e){var r=t.match(q),n=new Date(e);if(r){var i=Math.min(+r[1]||6,6),a=String(e/1e3%1+2.0000005).substr(2,i).replace(/0+$/,\"\")||\"0\";return d3.time.format(t.replace(q,a))(n)}return d3.time.format(t)(n)}function f(t,e,r){var n=t.tickfont||t._td._fullLayout.font;return{x:e,dx:0,dy:0,text:r||\"\",fontSize:n.size,font:n.family,fontColor:n.color}}function h(t,e,r,n){var i,a=e.x,o=t._tickround,s=new Date(a),l=\"\";r&&t.hoverformat?i=c(t.hoverformat,a):t.tickformat?i=c(t.tickformat,a):(n&&(L(o)?o+=2:o={y:\"m\",m:\"d\",d:\"H\",H:\"M\",M:\"S\",S:2}[o]),\"y\"===o?i=N(s):\"m\"===o?i=B(s):(a!==t._tmin||r||(l=\"<br>\"+N(s)),\"d\"===o?i=F(s):\"H\"===o?i=U(s):(a!==t._tmin||r||(l=\"<br>\"+F(s)+\", \"+N(s)),i=V(s),\"M\"!==o&&(i+=H(s),\"S\"!==o&&(i+=v(k(a/1e3,1),t,\"none\",r).substr(1)))))),e.text=i+l}function d(t,e,r,n,i){var a=t.dtick,o=e.x;if(!n||\"string\"==typeof a&&\"L\"===a.charAt(0)||(a=\"L3\"),t.tickformat||\"string\"==typeof a&&\"L\"===a.charAt(0))e.text=v(Math.pow(10,o),t,i,n);\n",
"else if(L(a)||\"D\"===a.charAt(0)&&k(o+.01,1)<.1)if(-1!==[\"e\",\"E\",\"power\"].indexOf(t.exponentformat)){var s=Math.round(o);e.text=0===s?1:1===s?\"10\":s>1?\"10<sup>\"+s+\"</sup>\":\"10<sup>\\u2212\"+-s+\"</sup>\",e.fontSize*=1.25}else e.text=v(Math.pow(10,o),t,\"\",\"fakehover\"),\"D1\"===a&&\"y\"===t._id.charAt(0)&&(e.dy-=e.fontSize/6);else{if(\"D\"!==a.charAt(0))throw\"unrecognized dtick \"+String(a);e.text=String(Math.round(Math.pow(10,k(o,1)))),e.fontSize*=.75}if(\"D1\"===t.dtick){var l=String(e.text).charAt(0);(\"0\"===l||\"1\"===l)&&(\"y\"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(0>o?.5:.25)))}}function p(t,e){var r=t._categories[Math.round(e.x)];void 0===r&&(r=\"\"),e.text=String(r)}function g(t,e,r,n,i){\"all\"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(i=\"hide\"),e.text=v(e.x,t,i,n)}function v(t,e,r,n){var i=0>t,a=e._tickround,o=r||e.exponentformat||\"B\",s=e._tickexponent,l=e.tickformat;if(n){var c={exponentformat:e.exponentformat,dtick:\"none\"===e.showexponent?e.dtick:L(t)?Math.abs(t)||1:1,range:\"none\"===e.showexponent?e.range:[0,t||1]};u(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,e.hoverformat&&(l=e.hoverformat)}if(l)return d3.format(l)(t).replace(/-/g,\"\\u2212\");var f=Math.pow(10,-a)/2;if(\"none\"===o&&(s=0),t=Math.abs(t),f>t)t=\"0\",i=!1;else{if(t+=f,s&&(t*=Math.pow(10,-s),a+=s),0===a)t=String(Math.floor(t));else if(0>a){t=String(Math.round(t)),t=t.substr(0,t.length+a);for(var h=a;0>h;h++)t+=\"0\"}else{t=String(t);var d=t.indexOf(\".\")+1;d&&(t=t.substr(0,d+a).replace(/\\.?0+$/,\"\"))}t=m(t,e._td._fullLayout.separators)}if(s&&\"hide\"!==o){var p;p=0>s?\"\\u2212\"+-s:\"power\"!==o?\"+\"+s:String(s),\"e\"===o||(\"SI\"===o||\"B\"===o)&&(s>12||-15>s)?t+=\"e\"+p:\"E\"===o?t+=\"E\"+p:\"power\"===o?t+=\"&times;10<sup>\"+p+\"</sup>\":\"B\"===o&&9===s?t+=\"B\":(\"SI\"===o||\"B\"===o)&&(t+=G[s/3+5])}return i?\"\\u2212\"+t:t}function m(t,e){var r=e.charAt(0),n=e.charAt(1),i=t.split(\".\"),a=i[0],o=i.length>1?r+i[1]:\"\";if(n&&(i.length>1||a.length>4))for(;Y.test(a);)a=a.replace(Y,\"$1\"+n+\"$2\");return a+o}function y(t,e,r){function n(t){return Object.keys(t).filter(function(t){return e&&t.charAt(0)!==e?!1:t.match(/^[xyz]axis[0-9]*/g)}).sort()}var i=t._fullLayout;if(!i)return[];var a=n(i);if(r)return a;var o=[],s=M.Plots.getSubplotIds(i,\"gl3d\");return s&&s.forEach(function(t){o=o.concat(n(i[t]).map(function(e){return t+\".\"+e}))}),a.concat(o)}function b(t,e){var r,n,i=[];for(r=0;r<e.length;r++){var a=[],o=t._fullData[e[r]].xaxis,s=t._fullData[e[r]].yaxis;if(o&&s){for(n=0;n<i.length;n++)(-1!==i[n].x.indexOf(o)||-1!==i[n].y.indexOf(s))&&a.push(n);if(a.length){var l,u=i[a[0]];if(a.length>1)for(n=1;n<a.length;n++)l=i[a[n]],x(u.x,l.x),x(u.y,l.y);x(u.x,[o]),x(u.y,[s])}else i.push({x:[o],y:[s]})}}return i}function x(t,e){for(var r=0;r<e.length;r++)-1===t.indexOf(e[r])&&t.push(e[r])}function _(t,e,r){var n,i,a=[],o=[],s=t.layout;for(n=0;n<e.length;n++)a.push(A.getFromId(t,e[n]));for(n=0;n<r.length;n++)o.push(A.getFromId(t,r[n]));var l=Object.keys(a[0]),u=[\"anchor\",\"domain\",\"overlaying\",\"position\",\"side\",\"tickangle\"],c=[\"linear\",\"log\"];for(n=0;n<l.length;n++){var f=l[n],h=a[0][f],d=o[0][f],p=!0,g=!1,v=!1;if(\"_\"!==f.charAt(0)&&\"function\"!=typeof h&&-1===u.indexOf(f)){for(i=1;i<a.length&&p;i++){var m=a[i][f];\"type\"===f&&-1!==c.indexOf(h)&&-1!==c.indexOf(m)&&h!==m?g=!0:m!==h&&(p=!1)}for(i=1;i<o.length&&p;i++){var y=o[i][f];\"type\"===f&&-1!==c.indexOf(d)&&-1!==c.indexOf(y)&&d!==y?v=!0:o[i][f]!==d&&(p=!1)}p&&(g&&(s[a[0]._name].type=\"linear\"),v&&(s[o[0]._name].type=\"linear\"),w(s,f,a,o))}}for(n=0;n<t._fullLayout.annotations.length;n++){var b=t._fullLayout.annotations[n];-1!==e.indexOf(b.xref)&&-1!==r.indexOf(b.yref)&&M.Lib.swapAttrs(s.annotations[n],[\"?\"])}}function w(t,e,r,n){var i,a=M.Lib.nestedProperty,o=a(t[r[0]._name],e).get(),s=a(t[n[0]._name],e).get();for(\"title\"===e&&(\"Click to enter X axis title\"===o&&(o=\"Click to enter Y axis title\"),\"Click to enter Y axis title\"===s&&(s=\"Click to enter X axis title\")),i=0;i<r.length;i++)a(t,r[i]._name+\".\"+e).set(s);for(i=0;i<n.length;i++)a(t,n[i]._name+\".\"+e).set(o)}function k(t,e){return(t%e+e)%e}var A=e.exports={},M=t(\"./plotly\"),L=t(\"./isnumeric\");A.layoutAttributes={title:{type:\"string\"},titlefont:{type:\"font\"},type:{type:\"enumerated\",values:[\"-\",\"linear\",\"log\",\"date\",\"category\"],dflt:\"-\"},autorange:{type:\"enumerated\",values:[!0,!1,\"reversed\"],dflt:!0},rangemode:{type:\"enumerated\",values:[\"normal\",\"tozero\",\"nonnegative\"],dflt:\"normal\"},range:[{type:\"number\"},{type:\"number\"}],fixedrange:{type:\"boolean\",dflt:!1},tickmode:{type:\"enumerated\",values:[\"auto\",\"linear\",\"array\"]},nticks:{type:\"integer\",min:0,dflt:0},tick0:{type:\"number\",dflt:0},dtick:{type:\"any\",dflt:1},tickvals:{type:\"data_array\"},ticktext:{type:\"data_array\"},ticks:{type:\"enumerated\",values:[\"outside\",\"inside\",\"\"]},mirror:{type:\"enumerated\",values:[!0,\"ticks\",!1,\"all\",\"allticks\"],dflt:!1},ticklen:{type:\"number\",min:0,dflt:5},tickwidth:{type:\"number\",min:0,dflt:1},tickcolor:{type:\"color\",dflt:M.Color.defaultLine},showticklabels:{type:\"boolean\",dflt:!0},tickfont:{type:\"font\"},tickangle:{type:\"angle\",dflt:\"auto\"},tickprefix:{type:\"string\",dflt:\"\"},showtickprefix:{type:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\"},ticksuffix:{type:\"string\",dflt:\"\"},showticksuffix:{type:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\"},showexponent:{type:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\"},exponentformat:{type:\"enumerated\",values:[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"],dflt:\"B\"},tickformat:{type:\"string\",dflt:\"\"},hoverformat:{type:\"string\",dflt:\"\"},showline:{type:\"boolean\",dflt:!1},linecolor:{type:\"color\",dflt:M.Color.defaultLine},linewidth:{type:\"number\",min:0,dflt:1},showgrid:{type:\"boolean\"},gridcolor:{type:\"color\",dflt:M.Color.lightLine},gridwidth:{type:\"number\",min:0,dflt:1},zeroline:{type:\"boolean\"},zerolinecolor:{type:\"color\",dflt:M.Color.defaultLine},zerolinewidth:{type:\"number\",dflt:1},anchor:{type:\"enumerated\"},side:{type:\"enumerated\"},overlaying:{type:\"enumerated\"},domain:[{type:\"number\",min:0,max:1,dflt:0},{type:\"number\",min:0,max:1,dflt:1}],position:{type:\"number\",min:0,max:1,dflt:0}};var E=/^xaxis[0-9]*$/,C=/^yaxis[0-9]*$/;A.supplyLayoutDefaults=function(t,e,r){function n(t,e){var r=Number(t.substr(5)||1),n=Number(e.substr(5)||1);return r-n}var i,a=Object.keys(t),o=[],s=[],l={},u={};for(i=0;i<a.length;i++){var c=a[i];E.test(c)?o.push(c):C.test(c)&&s.push(c)}for(i=0;i<r.length;i++){var f=r[i],h=A.id2name(f.xaxis),d=A.id2name(f.yaxis);if(h&&-1===o.indexOf(h)&&o.push(h),d&&-1===s.indexOf(d)&&s.push(d),M.Plots.traceIs(f,\"2dMap\")&&(l[h]=!0,l[d]=!0),M.Plots.traceIs(f,\"oriented\")){var p=\"h\"===f.orientation?d:h;u[p]=!0}}(e._hasCartesian||!r.length)&&(o.length?o.sort(n):o=[\"xaxis\"],s.length?s.sort(n):s=[\"yaxis\"]),o.concat(s).forEach(function(n){function i(t,e){return M.Lib.coerce(c,f,A.layoutAttributes,t,e)}var a=n.charAt(0),c=t[n]||{},f={},h={letter:a,font:e.font,outerTicks:l[n],showGrid:!u[n],name:n,data:r},d={letter:a,counterAxes:{x:s,y:o}[a].map(A.name2id),overlayableAxes:{x:o,y:s}[a].filter(function(e){return e!==n&&!(t[e]||{}).overlaying}).map(A.name2id)};A.handleAxisDefaults(c,f,i,h),A.handleAxisPositioningDefaults(c,f,i,d),e[n]=f,t[n]||\"-\"===c.type||(t[n]={type:c.type})}),o.length&&s.length&&M.Lib.coerce(t,e,M.Plots.layoutAttributes,\"plot_bgcolor\")},A.handleAxisDefaults=function(t,e,n,i){var a=i.letter,o=i.font||{},s=\"Click to enter \"+(i.title||a.toUpperCase()+\" axis\")+\" title\";i.name&&(e._name=i.name,e._id=A.name2id(i.name));var l=n(\"type\");\"-\"===l&&(r(e,i.data),\"-\"===e.type?e.type=\"linear\":l=t.type=e.type),A.setConvert(e),n(\"title\",s),n(\"titlefont\",{family:o.family,size:Math.round(1.2*o.size),color:o.color});var u=2===(t.range||[]).length&&L(t.range[0])&&L(t.range[1]),c=n(\"autorange\",!u);c&&n(\"rangemode\");var f=n(\"range[0]\",-1),h=n(\"range[1]\",\"x\"===a?6:4);f===h&&(e.range=[f-1,f+1]),M.Lib.noneOrAll(t.range,e.range,[0,1]),n(\"fixedrange\"),A.handleTickValueDefaults(t,e,n,l),A.handleTickDefaults(t,e,n,l,i);var d=n(\"showline\");d&&(n(\"linecolor\"),n(\"linewidth\")),(d||e.ticks)&&n(\"mirror\");var p=n(\"showgrid\",i.showGrid);p&&(n(\"gridcolor\"),n(\"gridwidth\"));var g=n(\"zeroline\",i.showGrid);return g&&(n(\"zerolinecolor\"),n(\"zerolinewidth\")),e},A.handleTickDefaults=function(t,e,r,n,i){var a=r(\"ticks\",i.outerTicks?\"outside\":\"\");a&&(r(\"ticklen\"),r(\"tickwidth\"),r(\"tickcolor\"));var o=r(\"showticklabels\");if(o){r(\"tickfont\",i.font||{}),r(\"tickangle\");var s=A.getShowAttrDflt(t);if(\"category\"!==n){var l=r(\"tickformat\");i.noHover||r(\"hoverformat\"),l||\"date\"===n||(r(\"showexponent\",s),r(\"exponentformat\"))}var u=r(\"tickprefix\");u&&r(\"showtickprefix\",s);var c=r(\"ticksuffix\");c&&r(\"showticksuffix\",s)}},A.handleTickValueDefaults=function(t,e,r,n){var i=\"auto\";\"array\"!==t.tickmode||\"log\"!==n&&\"date\"!==n||(t.tickmode=\"auto\"),Array.isArray(t.tickvals)?i=\"array\":t.dtick&&L(t.dtick)&&(i=\"linear\");var a=r(\"tickmode\",i);if(\"auto\"===a)r(\"nticks\");else if(\"linear\"===a)r(\"tick0\"),r(\"dtick\");else{var o=r(\"tickvals\");void 0===o?e.tickmode=\"auto\":r(\"ticktext\")}},A.handleAxisPositioningDefaults=function(t,e,r,n){var i=n.counterAxes||[],a=n.overlayableAxes||[],o=n.letter,s=M.Lib.coerce(t,e,{anchor:{type:\"enumerated\",values:[\"free\"].concat(i),dflt:L(t.position)?\"free\":i[0]||\"free\"}},\"anchor\");\"free\"===s&&r(\"position\"),M.Lib.coerce(t,e,{side:{type:\"enumerated\",values:\"x\"===o?[\"bottom\",\"top\"]:[\"left\",\"right\"],dflt:\"x\"===o?\"bottom\":\"left\"}},\"side\");var l=!1;if(a.length&&(l=M.Lib.coerce(t,e,{overlaying:{type:\"enumerated\",values:[!1].concat(a),dflt:!1}},\"overlaying\")),!l){var u=r(\"domain[0]\"),c=r(\"domain[1]\");u>c-.01&&(e.domain=[0,1]),M.Lib.noneOrAll(t.domain,e.domain,[0,1])}return e},A.coerceRef=function(t,e,r,n){var i=A.listIds(r,n),a=n+\"ref\",o={};return o[a]={type:\"enumerated\",values:i.concat([\"paper\"]),dflt:i[0]||\"paper\"},M.Lib.coerce(t,e,o,a)},A.clearTypes=function(t,e){Array.isArray(e)&&e.length||(e=t._fullData.map(function(t,e){return e})),e.forEach(function(e){var r=t.data[e];delete(A.getFromId(t,r.xaxis)||{}).type,delete(A.getFromId(t,r.yaxis)||{}).type})};var j=/^[xyz][0-9]*$/,S=/^[xyz]axis[0-9]*$/;A.id2name=function(t){if(\"string\"==typeof t&&t.match(j)){var e=t.substr(1);return\"1\"===e&&(e=\"\"),t.charAt(0)+\"axis\"+e}},A.name2id=function(t){if(t.match(S)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),t.charAt(0)+e}},A.cleanId=function(t,e){if(t.match(j)&&(!e||t.charAt(0)===e)){var r=t.substr(1).replace(/^0+/,\"\");return\"1\"===r&&(r=\"\"),t.charAt(0)+r}},A.cleanName=function(t,e){if(t.match(j)&&(!e||t.charAt(0)===e)){var r=t.substr(5).replace(/^0+/,\"\");return\"1\"===r&&(r=\"\"),t.charAt(0)+\"axis\"+r}},A.counterLetter=function(t){return{x:\"y\",y:\"x\"}[t.charAt(0)]},A.autoType=function(t){return A.moreDates(t)?\"date\":A.category(t)?\"category\":o(t)?\"linear\":\"-\"},A.getShowAttrDflt=function(t){var e=[\"showexponent\",\"showtickprefix\",\"showticksuffix\"],r=e.filter(function(e){return void 0!==t[e]}),n=function(e){return t[e]===t[r[0]]};return r.every(n)||1===r.length?t[r[0]]:void 0},A.moreDates=function(t){for(var e,r=0,n=0,i=Math.max(1,(t.length-1)/1e3),a=0;a<t.length;a+=i)e=t[Math.round(a)],M.Lib.isDateTime(e)&&(r+=1),L(e)&&(n+=1);return r>2*n},A.category=function(t){for(var e,r=Math.max(1,(t.length-1)/1e3),n=0,i=0,a=0;a<t.length;a+=r)e=A.cleanDatum(t[Math.round(a)]),L(e)?n++:\"string\"==typeof e&&\"\"!==e&&\"None\"!==e&&i++;return i>2*n},A.cleanDatum=function(t){try{if(\"object\"==typeof t&&null!==t&&t.getTime)return M.Lib.ms2DateTime(t);if(\"string\"!=typeof t&&!L(t))return\"\";t=t.toString().replace(/['\"%,$# ]/g,\"\")}catch(e){console.log(e,t)}return t},A.BADNUM=void 0,A.setConvert=function(t){function e(e,r){if(e>0)return Math.log(e)/Math.LN10;if(0>=e&&r&&t.range&&2===t.range.length){var n=t.range[0],a=t.range[1];return.5*(n+a-3*i*Math.abs(n-a))}return A.BADNUM}function r(t){return Math.pow(10,t)}function n(t){return L(t)?Number(t):A.BADNUM}var i=10;if(t.c2l=\"log\"===t.type?e:n,t.l2c=\"log\"===t.type?r:n,t.l2d=function(e){return t.c2d(t.l2c(e))},t.setScale=function(){var e,r=t._td._fullLayout._size;if(t._categories||(t._categories=[]),t.overlaying){var n=A.getFromId(t._td,t.overlaying);t.domain=n.domain}for(t.range&&2===t.range.length&&t.range[0]!==t.range[1]||(t.range=[-1,1]),e=0;2>e;e++)L(t.range[e])||(t.range[e]=L(t.range[1-e])?t.range[1-e]*(e?10:.1):e?1:-1),t.range[e]<-(Number.MAX_VALUE/2)?t.range[e]=-(Number.MAX_VALUE/2):t.range[e]>Number.MAX_VALUE/2&&(t.range[e]=Number.MAX_VALUE/2);if(\"y\"===t._id.charAt(0)?(t._offset=r.t+(1-t.domain[1])*r.h,t._length=r.h*(t.domain[1]-t.domain[0]),t._m=t._length/(t.range[0]-t.range[1]),t._b=-t._m*t.range[1]):(t._offset=r.l+t.domain[0]*r.w,t._length=r.w*(t.domain[1]-t.domain[0]),t._m=t._length/(t.range[1]-t.range[0]),t._b=-t._m*t.range[0]),!isFinite(t._m)||!isFinite(t._b))throw M.Lib.notifier(\"Something went wrong with axis scaling\",\"long\"),t._td._replotting=!1,new Error(\"axis scaling\")},t.l2p=function(e){return L(e)?d3.round(M.Lib.constrain(t._b+t._m*e,-i*t._length,(1+i)*t._length),2):A.BADNUM},t.p2l=function(e){return(e-t._b)/t._m},t.c2p=function(e,r){return t.l2p(t.c2l(e,r))},t.p2c=function(e){return t.l2c(t.p2l(e))},-1!==[\"linear\",\"log\",\"-\"].indexOf(t.type))t.c2d=n,t.d2c=function(t){return t=A.cleanDatum(t),L(t)?Number(t):A.BADNUM},t.d2l=function(e,r){return\"log\"===t.type?t.c2l(t.d2c(e),r):t.d2c(e)};else if(\"date\"===t.type){if(t.c2d=function(t){return L(t)?M.Lib.ms2DateTime(t):A.BADNUM},t.d2c=function(t){return L(t)?Number(t):M.Lib.dateTime2ms(t)},t.d2l=t.d2c,t.range&&t.range.length>1)try{var a=t.range.map(M.Lib.dateTime2ms);!L(t.range[0])&&L(a[0])&&(t.range[0]=a[0]),!L(t.range[1])&&L(a[1])&&(t.range[1]=a[1])}catch(e){console.log(e,t.range)}}else\"category\"===t.type&&(t.c2d=function(e){return t._categories[Math.round(e)]},t.d2c=function(e){-1===t._categories.indexOf(e)&&t._categories.push(e);var r=t._categories.indexOf(e);return-1===r?A.BADNUM:r},t.d2l=t.d2c);t.makeCalcdata=function(e,r){var n,i,a;if(r in e)for(n=e[r],i=new Array(n.length),a=0;a<n.length;a++)i[a]=t.d2c(n[a]);else{var o=r+\"0\"in e?t.d2c(e[r+\"0\"]):0,s=e[\"d\"+r]?Number(e[\"d\"+r]):1;for(n=e[{x:\"y\",y:\"x\"}[r]],i=new Array(n.length),a=0;a<n.length;a++)i[a]=o+a*s}return i},t._min=[],t._max=[],t._minDtick=null,t._forceTick0=null},A.minDtick=function(t,e,r,n){-1===[\"log\",\"category\"].indexOf(t.type)&&n?null===t._minDtick?(t._minDtick=e,t._forceTick0=r):t._minDtick&&((t._minDtick/e+1e-6)%1<2e-6&&((r-t._forceTick0)/e%1+1.000001)%1<2e-6?(t._minDtick=e,t._forceTick0=r):((e/t._minDtick+1e-6)%1>2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},A.doAutoRange=function(t){if(t._length||t.setScale(),t.autorange&&t._min&&t._max&&t._min.length&&t._max.length){var e,r=t._min[0].val,n=t._max[0].val;for(e=1;e<t._min.length&&r===n;e++)r=Math.min(r,t._min[e].val);for(e=1;e<t._max.length&&r===n;e++)n=Math.max(n,t._max[e].val);var i,a,o,s,l,u,c,f=0,h=t.range&&t.range[1]<t.range[0];for(\"reversed\"===t.autorange&&(h=!0,t.autorange=!0),e=0;e<t._min.length;e++)for(a=t._min[e],i=0;i<t._max.length;i++)o=t._max[i],c=o.val-a.val,u=t._length-a.pad-o.pad,c>0&&u>0&&c/u>f&&(s=a,l=o,f=c/u);r===n?t.range=h?[r+1,r-1]:[r-1,r+1]:f&&((\"linear\"===t.type||\"-\"===t.type)&&(\"tozero\"===t.rangemode&&s.val>=0?s={val:0,pad:0}:\"nonnegative\"===t.rangemode&&(s.val-f*s.pad<0&&(s={val:0,pad:0}),l.val<0&&(l={val:1,pad:0})),f=(l.val-s.val)/(t._length-s.pad-l.pad)),t.range=[s.val-f*s.pad,l.val+f*l.pad],t.range[0]===t.range[1]&&(t.range=[t.range[0]-1,t.range[0]+1]),h&&t.range.reverse());var d=t._td.layout[t._name];d||(t._td.layout[t._name]=d={}),d!==t&&(d.range=t.range.slice(),d.autorange=t.autorange)}},A.saveRangeInitial=function(t,e){for(var r,n,i,a=M.Axes.list(t,\"\",!0),o=!1,s=0;s<a.length;s++)r=a[s],n=void 0===r._rangeInitial,i=n||!(r.range[0]===r._rangeInitial[0]&&r.range[1]===r._rangeInitial[1]),(n&&r.autorange===!1||e&&i)&&(r._rangeInitial=r.range.slice(),o=!0);return o};var T=Number.MAX_VALUE/2;A.expand=function(t,e,r){function n(t){if(Array.isArray(t))return function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}function i(r){function n(t){return L(t)&&Math.abs(t)<T}if(l=e[r],L(l)){if(f=b(r)+m,h=x(r)+m,p=l-w(r),g=l+_(r),\"log\"===t.type&&g/10>p&&(p=g/10),u=t.c2l(p),c=t.c2l(g),y&&(u=Math.min(0,u),c=Math.max(0,c)),n(u)){for(d=!0,o=0;o<t._min.length&&d;o++)s=t._min[o],s.val<=u&&s.pad>=h?d=!1:s.val>=u&&s.pad<=h&&(t._min.splice(o,1),o--);d&&t._min.push({val:u,pad:y&&0===u?0:h})}if(n(c)){for(d=!0,o=0;o<t._max.length&&d;o++)s=t._max[o],s.val>=c&&s.pad>=f?d=!1:s.val<=c&&s.pad<=f&&(t._max.splice(o,1),o--);d&&t._max.push({val:c,pad:y&&0===c?0:f})}}}if(t.autorange&&e){t._min||(t._min=[]),t._max||(t._max=[]),r||(r={}),t._m||t.setScale();var a,o,s,l,u,c,f,h,d,p,g,v=e.length,m=r.padded?.05*t._length:0,y=r.tozero&&(\"linear\"===t.type||\"-\"===t.type),b=n((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),x=n((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),_=n(r.vpadplus||r.vpad),w=n(r.vpadminus||r.vpad);for(a=0;6>a;a++)i(a);for(a=v-1;a>5;a--)i(a)}},A.autoBin=function(t,e,r,n){function i(t){return(1+100*(t-d)/f.dtick)%100<2}var a=M.Lib.aggNums(Math.min,null,t),o=M.Lib.aggNums(Math.max,null,t);if(\"category\"===e.type)return{start:a-.5,end:o+.5,size:1};var s;if(r)s=(o-a)/r;else{var l=M.Lib.distinctVals(t),u=Math.pow(10,Math.floor(Math.log(l.minDiff)/Math.LN10)),c=u*M.Lib.roundUp(l.minDiff/u,[.9,1.9,4.9,9.9],!0);s=Math.max(c,2*M.Lib.stdev(t)/Math.pow(t.length,n?.25:.4))}var f={type:\"log\"===e.type?\"linear\":e.type,range:[a,o]};A.autoTicks(f,s);var h,d=A.tickIncrement(A.tickFirst(f),f.dtick,\"reverse\");if(\"number\"==typeof f.dtick){for(var p=0,g=0,v=0,m=0,y=0;y<t.length;y++)t[y]%1===0?v++:L(t[y])||m++,i(t[y])&&p++,i(t[y]+f.dtick/2)&&g++;var b=t.length-m;if(v===b&&\"date\"!==e.type)f.dtick<1?d=a-.5*f.dtick:d-=.5;else if(.1*b>g&&(p>.3*b||i(a)||i(o))){var x=f.dtick/2;d+=a>d+x?x:-x}var _=1+Math.floor((o-d)/f.dtick);h=d+_*f.dtick}else for(h=d;o>=h;)h=A.tickIncrement(h,f.dtick);return{start:d,end:h,size:f.dtick}},A.calcTicks=function(t){if(\"array\"===t.tickmode)return s(t);if(\"auto\"===t.tickmode||!t.dtick){var e,r=t.nticks;r||(\"category\"===t.type?(e=t.tickfont?1.2*(t.tickfont.size||12):15,r=t._length/e):(e=\"y\"===t._id.charAt(0)?40:80,r=M.Lib.constrain(t._length/e,4,9)+1)),A.autoTicks(t,Math.abs(t.range[1]-t.range[0])/r),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t._forceTick0)}t.tick0||(t.tick0=\"date\"===t.type?new Date(2e3,0,1).getTime():0),u(t),t._tmin=A.tickFirst(t);var n=t.range[1]<t.range[0],i=[],a=1.0001*t.range[1]-1e-4*t.range[0];\"category\"===t.type&&(a=n?Math.max(-.5,a):Math.min(t._categories.length-.5,a));for(var o=t._tmin;(n?o>=a:a>=o)&&(i.push(o),!(i.length>1e3));o=A.tickIncrement(o,t.dtick,n));t._tmax=i[i.length-1];for(var l=new Array(i.length),c=0;c<i.length;c++)l[c]=A.tickText(t,i[c]);return l};var z=[2,5,10],P=[1,2,3,6,12],I=[1,2,5,10,15,30],O=[1,2,3,7,14],D=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],R=[-.301,0,.301,.699,1];A.autoTicks=function(t,e){var r;if(\"date\"===t.type)t.tick0=new Date(2e3,0,1).getTime(),e>157788e5?(e/=315576e5,r=Math.pow(10,Math.floor(Math.log(e)/Math.LN10)),t.dtick=\"M\"+12*l(e,r,z)):e>12096e5?(e/=26298e5,t.dtick=\"M\"+l(e,1,P)):e>432e5?(t.dtick=l(e,864e5,O),t.tick0=new Date(2e3,0,2).getTime()):e>18e5?t.dtick=l(e,36e5,P):e>3e4?t.dtick=l(e,6e4,I):e>500?t.dtick=l(e,1e3,I):(r=Math.pow(10,Math.floor(Math.log(e)/Math.LN10)),t.dtick=l(e,r,z));else if(\"log\"===t.type)if(t.tick0=0,e>.7)t.dtick=Math.ceil(e);else if(Math.abs(t.range[1]-t.range[0])<1){var n=1.5*Math.abs((t.range[1]-t.range[0])/e);e=Math.abs(Math.pow(10,t.range[1])-Math.pow(10,t.range[0]))/n,r=Math.pow(10,Math.floor(Math.log(e)/Math.LN10)),t.dtick=\"L\"+l(e,r,z)}else t.dtick=e>.3?\"D2\":\"D1\";else\"category\"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):(t.tick0=0,r=Math.pow(10,Math.floor(Math.log(e)/Math.LN10)),t.dtick=l(e,r,z));if(0===t.dtick&&(t.dtick=1),!L(t.dtick)&&\"string\"!=typeof t.dtick){var i=t.dtick;throw t.dtick=1,\"ax.dtick error: \"+String(i)}},A.tickIncrement=function(t,e,r){var n=r?-1:1;if(L(e))return t+n*e;var i=e.charAt(0),a=n*Number(e.substr(1));if(\"M\"===i){var o=new Date(t);return o.setMonth(o.getMonth()+a)}if(\"L\"===i)return Math.log(Math.pow(10,t)+a)/Math.LN10;if(\"D\"===i){var s=\"D2\"===e?R:D,l=t+.01*n,u=M.Lib.roundUp(k(l,1),s,r);return Math.floor(l)+Math.log(d3.round(Math.pow(10,u),1))/Math.LN10}throw\"unrecognized dtick \"+String(e)},A.tickFirst=function(t){var e=t.range[1]<t.range[0],r=e?Math.floor:Math.ceil,n=1.0001*t.range[0]-1e-4*t.range[1],i=t.dtick,a=t.tick0;if(L(i)){var o=r((n-a)/i)*i+a;return\"category\"===t.type&&(o=M.Lib.constrain(o,0,t._categories.length-1)),o}var s,l,u,c=i.charAt(0),f=Number(i.substr(1));if(\"M\"===c){for(s=new Date(a),n=new Date(n),l=12*(n.getFullYear()-s.getFullYear())+n.getMonth()-s.getMonth(),u=s.setMonth(s.getMonth()+(Math.round(l/f)+(e?1:-1))*f);e?u>n:n>u;)u=A.tickIncrement(u,i,e);return u}if(\"L\"===c)return Math.log(r((Math.pow(10,n)-a)/f)*f+a)/Math.LN10;if(\"D\"===c){var h=\"D2\"===i?R:D,d=M.Lib.roundUp(k(n,1),h,e);return Math.floor(n)+Math.log(d3.round(Math.pow(10,d),1))/Math.LN10}throw\"unrecognized dtick \"+String(i)};var N=d3.time.format(\"%Y\"),B=d3.time.format(\"%b %Y\"),F=d3.time.format(\"%b %-d\"),U=d3.time.format(\"%b %-d %Hh\"),V=d3.time.format(\"%H:%M\"),H=d3.time.format(\":%S\"),q=/%(\\d?)f/g;A.tickText=function(t,e,r){function n(n){var i;return void 0===n?!0:r?\"none\"===n:(i={first:t._tmin,last:t._tmax}[n],\"all\"!==n&&e!==i)}var i,a=f(t,e),o=\"array\"===t.tickmode,s=r||o;if(o&&Array.isArray(t.ticktext)){for(var l=Math.abs(t.range[1]-t.range[0])/1e4,u=0;u<t.ticktext.length&&!(Math.abs(e-t.d2l(t.tickvals[u]))<l);u++);if(u<t.ticktext.length)return a.text=String(t.ticktext[u]),a}return i=\"none\"!==t.exponentformat&&n(t.showexponent)?\"hide\":\"\",\"date\"===t.type?h(t,a,r,s):\"log\"===t.type?d(t,a,r,s,i):\"category\"===t.type?p(t,a):g(t,a,r,s,i),t.tickprefix&&!n(t.showtickprefix)&&(a.text=t.tickprefix+a.text),t.ticksuffix&&!n(t.showticksuffix)&&(a.text+=t.ticksuffix),a};var G=[\"f\",\"p\",\"n\",\"&mu;\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\"],Y=/(\\d+)(\\d{3})/;A.list=function(t,e,r){return y(t,e,r).map(function(e){return M.Lib.nestedProperty(t._fullLayout,e).get()})},A.listIds=function(t,e){return y(t,e,!0).map(A.name2id)},A.getFromId=function(t,e,r){var n=t._fullLayout;return\"x\"===r?e=e.replace(/y[0-9]*/,\"\"):\"y\"===r&&(e=e.replace(/x[0-9]*/,\"\")),n[A.id2name(e)]},A.getFromTrace=function(t,e,r){var n=t._fullLayout,i=null;if(M.Plots.traceIs(e,\"gl3d\")){var a=e.scene;\"scene\"===a.substr(0,5)&&(i=n[a][r+\"axis\"])}else i=A.getFromId(t,e[r+\"axis\"]||r);return i},A.getSubplots=function(t,e){var r=t.data,n=[];(r||[]).forEach(function(t){if(t.visible!==!1&&\"legendonly\"!==t.visible&&M.Plots.traceIs(t,\"cartesian\")){var e=t.xaxis||\"x\",r=t.yaxis||\"y\",i=e+r;-1===n.indexOf(i)&&n.push(i)}}),A.list(t,\"\",!0).forEach(function(e){function r(t){return-1!==t.indexOf(e._id)}var i=e._id.charAt(0),a=\"free\"===e.anchor?{x:\"y\",y:\"x\"}[i]:e.anchor,o=A.getFromId(t,a);if(\"free\"!==e.anchor||!n.some(r)){if(!o)return void console.log(\"warning: couldnt find anchor \"+a+\" for axis \"+e._id);var s=\"x\"===i?e._id+o._id:o._id+e._id;-1===n.indexOf(s)&&n.push(s)}});var i=/^x([0-9]*)y([0-9]*)$/,a=n.filter(function(t){return t.match(i)}).sort(function(t,e){var r=t.match(i),n=e.match(i);return r[1]===n[1]?+(r[2]||1)-(n[2]||1):+(r[1]||0)-(n[1]||0)});if(e){var o=new RegExp(\"x\"===e._id.charAt(0)?\"^\"+e._id+\"y\":e._id+\"$\");return a.filter(function(t){return t.match(o)})}return a},A.makeClipPaths=function(t){var e,r,n=t._fullLayout,i=n._defs,a={_offset:0,_length:n.width,_id:\"\"},o={_offset:0,_length:n.height,_id:\"\"},s=A.list(t,\"x\",!0),l=A.list(t,\"y\",!0),u=[];for(e=0;e<s.length;e++)for(u.push({x:s[e],y:o}),r=0;r<l.length;r++)0===e&&u.push({x:a,y:l[r]}),u.push({x:s[e],y:l[r]});var c=i.selectAll(\"g.clips\").data([0]);c.enter().append(\"g\").classed(\"clips\",!0);var f=c.selectAll(\".axesclip\").data(u,function(t){return t.x._id+t.y._id});f.enter().append(\"clipPath\").classed(\"axesclip\",!0).attr(\"id\",function(t){return\"clip\"+n._uid+t.x._id+t.y._id}).append(\"rect\"),f.exit().remove(),f.each(function(t){d3.select(this).select(\"rect\").attr({x:t.x._offset||0,y:t.y._offset||0,width:t.x._length||1,height:t.y._length||1})})},A.doTicks=function(t,e,r){function n(t){var e=l.l2p(t.x);return e>1&&e<l._length-1}function i(t,e){var r=t.selectAll(\"path.\"+x).data(\"inside\"===l.ticks?P:y,b);e&&l.ticks?(r.enter().append(\"path\").classed(x,1).classed(\"ticks\",1).classed(\"crisp\",1).call(M.Color.stroke,l.tickcolor).style(\"stroke-width\",S+\"px\").attr(\"d\",e),r.attr(\"transform\",h),r.exit().remove()):r.remove()}function a(n,i){function a(t,e){t.each(function(t){var r=d(e),n=d3.select(this),i=n.select(\".text-math-group\"),a=h(t)+(L(e)&&0!==+e?\" rotate(\"+e+\",\"+c(t)+\",\"+(f(t)-t.fontSize/2)+\")\":\"\");if(i.empty()){var o=n.select(\"text\").attr({transform:a,\"text-anchor\":r});o.empty()||o.selectAll(\"tspan.line\").attr({x:o.attr(\"x\"),y:o.attr(\"y\")})}else{var s=M.Drawing.bBox(i.node()).width*{end:-.5,start:.5}[r];i.attr(\"transform\",a+(s?\"translate(\"+s+\",0)\":\"\"))}})}function o(){return A.length&&Promise.all(A)}function s(){if(a(u,l.tickangle),\"x\"===v&&!L(l.tickangle)&&(\"log\"!==l.type||\"D\"!==String(l.dtick).charAt(0))){var n=[];for(u.each(function(t){var e=d3.select(this),r=e.select(\".text-math-group\"),i=l.l2p(t.x);r.empty()&&(r=e.select(\"text\"));var a=M.Drawing.bBox(r.node());n.push({top:0,bottom:10,height:10,left:i-a.width/2,right:i+a.width/2+2,width:a.width+2})}),g=0;g<n.length-1;g++)if(M.Lib.bBoxIntersect(n[g],n[g+1])){w=30;break}if(w){var i=Math.abs((y[y.length-1].x-y[0].x)*l._m)/(y.length-1);2.5*_>i&&(w=90),a(u,w)}l._lastangle=w}return r||M.Plots.titles(t,e+\"title\"),e+\" done\"}var u=n.selectAll(\"g.\"+x).data(y,b);if(!l.showticklabels||!L(i))return u.remove(),void M.Plots.titles(t,e+\"title\");var c,f,d,p;if(\"x\"===v){var m=\"bottom\"===T?1:-1;c=function(t){return t.dx},p=i+(E+k)*m,f=function(t){return t.dy+p+t.fontSize*(\"bottom\"===T?1:-.5)},d=function(t){return L(t)&&0!==t&&180!==t?0>t*m?\"end\":\"start\":\"middle\"}}else f=function(t){return t.dy+t.fontSize/2},c=function(t){return t.dx+i+(E+k+(90===Math.abs(l.tickangle)?t.fontSize/2:0))*(\"right\"===T?1:-1)},d=function(t){return L(t)&&90===Math.abs(t)?\"middle\":\"right\"===T?\"start\":\"end\"};var _=0,w=0,A=[];u.enter().append(\"g\").classed(x,1).append(\"text\").attr(\"text-anchor\",\"middle\").each(function(e){var r=d3.select(this),n=t._promises.length;r.call(M.Drawing.setPosition,c(e),f(e)).call(M.Drawing.font,e.font,e.fontSize,e.fontColor).text(e.text).call(M.util.convertToTspans),n=t._promises[n],n?A.push(t._promises.pop().then(function(){a(r,l.tickangle)})):a(r,l.tickangle)}),u.exit().remove(),u.each(function(t){_=Math.max(_,t.fontSize)}),a(u,l._lastangle||l.tickangle);var C=M.Lib.syncOrAsync([o,s]);return C&&C.then&&t._promises.push(C),C}function o(t,e){return t.visible!==!0||t.xaxis+t.yaxis!==e?!1:M.Plots.traceIs(t,\"bar\")&&t.orientation==={x:\"h\",y:\"v\"}[v]?!0:t.fill&&t.fill.charAt(t.fill.length-1)===v}function s(e,r,i){var a=e.gridlayer,s=e.zerolinelayer,u=e[\"hidegrid\"+v]?[]:P,c=\"M0,0\"+(\"x\"===v?\"v\":\"h\")+r._length,f=a.selectAll(\"path.\"+_).data(l.showgrid===!1?[]:u,b);f.enter().append(\"path\").classed(_,1).classed(\"crisp\",1).attr(\"d\",c).each(function(t){l.zeroline&&(\"linear\"===l.type||\"-\"===l.type)&&Math.abs(t.x)<l.dtick/100&&d3.select(this).remove()}),f.attr(\"transform\",h).call(M.Color.stroke,l.gridcolor||\"#ddd\").style(\"stroke-width\",C+\"px\"),f.exit().remove();for(var d=!1,p=0;p<t._fullData.length;p++)if(o(t._fullData[p],i)){d=!0;break}var g=l.range[0]*l.range[1]<=0&&l.zeroline&&(\"linear\"===l.type||\"-\"===l.type)&&u.length&&(d||n({x:0})||!l.showline),m=s.selectAll(\"path.\"+w).data(g?[{x:0}]:[]);m.enter().append(\"path\").classed(w,1).classed(\"zl\",1).classed(\"crisp\",1).attr(\"d\",c),m.attr(\"transform\",h).call(M.Color.stroke,l.zerolinecolor||M.Color.defaultLine).style(\"stroke-width\",j+\"px\"),m.exit().remove()}var l,u=t._fullLayout,c=!1;if(\"object\"==typeof e)l=e,e=l._id,c=!0;else if(l=A.getFromId(t,e),\"redraw\"===e&&u._paper.selectAll(\"g.subplot\").each(function(t){var e=u._plots[t],r=e.x(),n=e.y();e.plot.attr(\"viewBox\",\"0 0 \"+r._length+\" \"+n._length),e.xaxislayer.selectAll(\".\"+r._id+\"tick\").remove(),e.yaxislayer.selectAll(\".\"+n._id+\"tick\").remove(),e.gridlayer.selectAll(\"path\").remove(),e.zerolinelayer.selectAll(\"path\").remove()}),!e||\"redraw\"===e)return M.Lib.syncOrAsync(A.list(t,\"\",!0).map(function(r){return function(){if(r._id){var n=A.doTicks(t,r._id);return\"redraw\"===e&&(r._r=r.range.slice()),n}}}));l.tickformat||(-1===[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"].indexOf(l.exponentformat)&&(l.exponentformat=\"e\"),-1===[\"all\",\"first\",\"last\",\"none\"].indexOf(l.showexponent)&&(l.showexponent=\"all\")),l.range=[+l.range[0],+l.range[1]],l.setScale();var f,h,d,p,g,v=e.charAt(0),m=A.counterLetter(e),y=A.calcTicks(l),b=function(t){return t.text+t.x+l.mirror},x=e+\"tick\",_=e+\"grid\",w=e+\"zl\",k=(l.linewidth||1)/2,E=(\"outside\"===l.ticks?l.ticklen:1)+(l.linewidth||0),C=M.Drawing.crispRound(t,l.gridwidth,1),j=M.Drawing.crispRound(t,l.zerolinewidth,C),S=M.Drawing.crispRound(t,l.tickwidth,1);if(\"x\"===v)f=[\"bottom\",\"top\"],h=function(t){return\"translate(\"+l.l2p(t.x)+\",0)\"},d=\"M0,\",p=\"v\";else{if(\"y\"!==v)return void console.log(\"unrecognized doTicks axis\",e);f=[\"left\",\"right\"],h=function(t){return\"translate(0,\"+l.l2p(t.x)+\")\"},d=\"M\",p=\",0h\"}var T=l.side||f[0],z=[-1,1,T===f[1]?1:-1];\"inside\"!==l.ticks==(\"x\"===v)&&(z=z.map(function(t){return-t}));var P=y.filter(n);if(c)return i(l._axislayer,d+(l._pos+k*z[2])+p+z[2]*l.ticklen),a(l._axislayer,l._pos);var I=A.getSubplots(t,l).map(function(t){var e=u._plots[t],r=e[v+\"axislayer\"],n=l._linepositions[t]||[],o=e[m](),c=o._id===l.anchor,h=[!1,!1,!1],y=\"\";if(\"allticks\"===l.mirror?h=[!0,!0,!1]:c&&(\"ticks\"===l.mirror?h=[!0,!0,!1]:h[f.indexOf(T)]=!0),l.mirrors)for(g=0;2>g;g++){var b=l.mirrors[o._id+f[g]];(\"ticks\"===b||\"labels\"===b)&&(h[g]=!0)}return void 0!==n[2]&&(h[2]=!0),h.forEach(function(t,e){var r=n[e],i=z[e];t&&L(r)&&(y+=d+(r+k*i)+p+i*l.ticklen)}),i(r,y),s(e,o,t),a(r,n[3])}).filter(function(t){return t&&t.then});return I.length?Promise.all(I):0},A.swap=function(t,e){for(var r=b(t,e),n=0;n<r.length;n++)_(t,r[n].x,r[n].y)}},{\"./isnumeric\":619,\"./plotly\":626}],570:[function(t,e){\"use strict\";var r=e.exports={},n=t(\"./plotly\"),i=t(\"./isnumeric\");n.Plots.register(r,\"bar\",[\"cartesian\",\"bar\",\"oriented\",\"markerColorscale\",\"errorBarsOK\",\"showLegend\"]);var a=n.Scatter.attributes,o=a.marker,s=o.line;r.attributes={x:a.x,x0:a.x0,dx:a.dx,y:a.y,y0:a.y0,dy:a.dy,text:a.text,orientation:{type:\"enumerated\",values:[\"v\",\"h\"]},marker:{color:o.color,colorscale:o.colorscale,cauto:o.cauto,cmax:o.cmax,cmin:o.cmin,autocolorscale:o.autocolorscale,reversescale:o.reversescale,showscale:o.showscale,line:{color:s.color,colorscale:s.colorscale,cauto:s.cauto,cmax:s.cmax,cmin:s.cmin,width:s.width,autocolorscale:s.autocolorscale,reversescale:s.reversescale}},_nestedModules:{error_y:\"ErrorBars\",error_x:\"ErrorBars\",\"marker.colorbar\":\"Colorbar\"},_composedModules:{histogram:\"Histogram\"}},r.layoutAttributes={barmode:{type:\"enumerated\",values:[\"stack\",\"group\",\"overlay\"],dflt:\"group\"},barnorm:{type:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\"},bargap:{type:\"number\",min:0,max:1},bargroupgap:{type:\"number\",min:0,max:1,dflt:0}},r.supplyDefaults=function(t,e,i,a){function o(i,a){return n.Lib.coerce(t,e,r.attributes,i,a)}if(\"histogram\"===e.type){if(n.Histogram.supplyDefaults(t,e),!e.visible)return}else{var s=n.Scatter.handleXYDefaults(t,e,o);if(!s)return void(e.visible=!1);o(\"orientation\",e.x&&!e.y?\"h\":\"v\")}o(\"marker.color\",i),n.Colorscale.hasColorscale(t,\"marker\")&&n.Colorscale.handleDefaults(t,e,a,o,{prefix:\"marker.\",cLetter:\"c\"}),o(\"marker.line.color\",n.Color.defaultLine),n.Colorscale.hasColorscale(t,\"marker.line\")&&n.Colorscale.handleDefaults(t,e,a,o,{prefix:\"marker.line.\",cLetter:\"c\"}),o(\"marker.line.width\",0),o(\"text\"),n.ErrorBars&&(n.ErrorBars.supplyDefaults(t,e,n.Color.defaultLine,{axis:\"y\"}),n.ErrorBars.supplyDefaults(t,e,n.Color.defaultLine,{axis:\"x\",inherit:\"y\"}))},r.supplyLayoutDefaults=function(t,e,i){function a(i,a){return n.Lib.coerce(t,e,r.layoutAttributes,i,a)}var o,s,l,u=!1,c=!1,f=!1,h={};for(o=0;o<i.length;o++)if(s=i[o],n.Plots.traceIs(s,\"bar\")&&(u=!0,\"overlay\"!==t.barmode&&\"stack\"!==t.barmode&&(l=s.xaxis+s.yaxis,h[l]&&(f=!0),h[l]=!0),s.visible&&\"histogram\"===s.type)){var d=n.Axes.getFromId({_fullLayout:e},s[\"v\"===s.orientation?\"xaxis\":\"yaxis\"]);\n",
"\"category\"!==d.type&&(c=!0)}if(u){var p=a(\"barmode\");\"overlay\"!==p&&a(\"barnorm\"),a(\"bargap\",c&&!f?0:.2),a(\"bargroupgap\")}},r.colorbar=n.Scatter.colorbar,r.calc=function(t,e){if(\"histogram\"===e.type)return n.Histogram.calc(t,e);var r,a,o,s=n.Axes.getFromId(t,e.xaxis||\"x\"),l=n.Axes.getFromId(t,e.yaxis||\"y\"),u=e.orientation||(e.x&&!e.y?\"h\":\"v\");\"h\"===u?(a=s.makeCalcdata(e,\"x\"),r=l.makeCalcdata(e,\"y\")):(a=l.makeCalcdata(e,\"y\"),r=s.makeCalcdata(e,\"x\"));var c=Math.min(r.length,a.length),f=[];for(o=0;c>o;o++)i(r[o])&&i(a[o])&&f.push({p:r[o],s:a[o],b:0});return n.Colorscale.hasColorscale(e,\"marker\")&&n.Colorscale.calc(e,e.marker.color,\"marker\",\"c\"),n.Colorscale.hasColorscale(e,\"marker.line\")&&n.Colorscale.calc(e,e.marker.line.color,\"marker.line\",\"c\"),f},r.setPositions=function(t,e){var r,a,o=t._fullLayout,s=e.x(),l=e.y();[\"v\",\"h\"].forEach(function(u){function c(e){function r(t){t[h]=t.p+d}var i=[];e.forEach(function(e){t.calcdata[e].forEach(function(t){i.push(t.p)})});var a=n.Lib.distinctVals(i),s=a.vals,l=a.minDiff,u=!1,c=[];\"group\"===o.barmode&&e.forEach(function(e){u||(t.calcdata[e].forEach(function(t){u||c.forEach(function(e){Math.abs(t.p-e)<l&&(u=!0)})}),u||t.calcdata[e].forEach(function(t){c.push(t.p)}))}),n.Axes.minDtick(p,l,s[0],u),n.Axes.expand(p,s,{vpad:l/2}),l*=1-o.bargap,u&&(l/=f.length);for(var d,g=0;g<e.length;g++){var v=t.calcdata[e[g]][0].t;v.barwidth=l*(1-o.bargroupgap),v.poffset=((u?(2*g+1-e.length)*l:0)-v.barwidth)/2,v.dbar=a.minDiff,d=v.poffset+v.barwidth/2,t.calcdata[e[g]].forEach(r)}}var f=[],h={v:\"x\",h:\"y\"}[u],d={v:\"y\",h:\"x\"}[u],p=e[h](),g=e[d]();if(t._fullData.forEach(function(t,e){t.visible===!0&&n.Plots.traceIs(t,\"bar\")&&t.orientation===u&&t.xaxis===s._id&&t.yaxis===l._id&&f.push(e)}),f.length){\"overlay\"===o.barmode?f.forEach(function(t){c([t])}):c(f);var v=\"stack\"===o.barmode,m=o.barnorm;if(v||m){var y,b,x,_=g.l2c(g.c2l(0)),w=_,k={},A=t.calcdata[f[0]][0].t.barwidth/100,M=0,L=!0;for(r=0;r<f.length;r++)for(b=t.calcdata[f[r]],a=0;a<b.length;a++){M=Math.round(b[a].p/A);var E=k[M]||0;v&&(b[a].b=E),y=b[a].b+b[a].s,k[M]=E+b[a].s,v&&(b[a][d]=y,!m&&i(g.c2l(y))&&(_=Math.max(_,y),w=Math.min(w,y)))}if(m){L=!1;var C=\"fraction\"===m?1:100,j=C/1e9;for(w=0,_=v?C:0,r=0;r<f.length;r++)for(b=t.calcdata[f[r]],a=0;a<b.length;a++)x=C/k[Math.round(b[a].p/A)],b[a].b*=x,b[a].s*=x,y=b[a].b+b[a].s,b[a][d]=y,i(g.c2l(y))&&(w-j>y&&(L=!0,w=y),y>_+j&&(L=!0,_=y))}n.Axes.expand(g,[w,_],{tozero:!0,padded:L})}else{var S=function(t){return t[d]=t.s,t.s};for(r=0;r<f.length;r++)n.Axes.expand(g,t.calcdata[f[r]].map(S),{tozero:!0,padded:!0})}}})},r.arraysToCalcdata=function(t){var e=t[0].trace,r=e.marker,i=r.line;n.Lib.mergeArray(e.text,t,\"tx\"),n.Lib.mergeArray(r.opacity,t,\"mo\"),n.Lib.mergeArray(r.color,t,\"mc\"),n.Lib.mergeArray(i.color,t,\"mlc\"),n.Lib.mergeArray(i.width,t,\"mlw\")},r.plot=function(t,e,a){var o=e.x(),s=e.y(),l=t._fullLayout,u=e.plot.select(\".barlayer\").selectAll(\"g.trace.bars\").data(a).enter().append(\"g\").attr(\"class\",\"trace bars\");u.append(\"g\").attr(\"class\",\"points\").each(function(e){var a=e[0].t,u=e[0].trace;r.arraysToCalcdata(e),d3.select(this).selectAll(\"path\").data(n.Lib.identity).enter().append(\"path\").each(function(e){function r(t){return 0===l.bargap&&0===l.bargroupgap?d3.round(Math.round(t)-v,2):t}function c(t,e){return Math.abs(t-e)>=2?r(t):t>e?Math.ceil(t):Math.floor(t)}var f,h,d,p;if(\"h\"===u.orientation?(d=s.c2p(a.poffset+e.p,!0),p=s.c2p(a.poffset+e.p+a.barwidth,!0),f=o.c2p(e.b,!0),h=o.c2p(e.s+e.b,!0)):(f=o.c2p(a.poffset+e.p,!0),h=o.c2p(a.poffset+e.p+a.barwidth,!0),p=s.c2p(e.s+e.b,!0),d=s.c2p(e.b,!0)),!(i(f)&&i(h)&&i(d)&&i(p)&&f!==h&&d!==p))return void d3.select(this).remove();var g=(e.mlw+1||u.marker.line.width+1||(e.trace?e.trace.marker.line.width:0)+1)-1,v=d3.round(g/2%1,2);if(!t._context.staticPlot){var m=n.Color.opacity(e.mc||u.marker.color),y=1>m||g>.01?r:c;f=y(f,h),h=y(h,f),d=y(d,p),p=y(p,d)}d3.select(this).attr(\"d\",\"M\"+f+\",\"+d+\"V\"+p+\"H\"+h+\"V\"+d+\"Z\")})})},r.style=function(t){var e=d3.select(t).selectAll(\"g.trace.bars\"),r=e.size(),i=t._fullLayout;e.style(\"opacity\",function(t){return t[0].trace.opacity}).each(function(t){(\"stack\"===i.barmode&&r>1||0===i.bargap&&0===i.bargroupgap&&!t[0].trace.marker.line.width)&&d3.select(this).attr(\"shape-rendering\",\"crispEdges\")}),e.selectAll(\"g.points\").each(function(t){var e=t[0].trace,r=e.marker,i=r.line,a=(e._input||{}).marker||{},o=n.Drawing.tryColorscale(r,a,\"\"),s=n.Drawing.tryColorscale(r,a,\"line.\");d3.select(this).selectAll(\"path\").each(function(t){var e,a,l=(t.mlw+1||i.width+1)-1,u=d3.select(this);e=\"mc\"in t?t.mcc=o(t.mc):Array.isArray(r.color)?n.Color.defaultLine:r.color,u.style(\"stroke-width\",l+\"px\").call(n.Color.fill,e),l&&(a=\"mlc\"in t?t.mlcc=s(t.mlc):Array.isArray(i.color)?n.Color.defaultLine:i.color,u.call(n.Color.stroke,a))})})},r.hoverPoints=function(t,e,r,i){var a,o=t.cd,s=o[0].trace,l=o[0].t,u=t.xa,c=t.ya,f=\"closest\"===i?l.barwidth/2:l.dbar*(1-u._td._fullLayout.bargap)/2;a=\"closest\"!==i?function(t){return t.p}:\"h\"===s.orientation?function(t){return t.y}:function(t){return t.x};var h,d;\"h\"===s.orientation?(h=function(t){return n.Fx.inbox(t.b-e,t.x-e)+(t.x-e)/(t.x-t.b)},d=function(t){var e=a(t)-r;return n.Fx.inbox(e-f,e+f)}):(d=function(t){return n.Fx.inbox(t.b-r,t.y-r)+(t.y-r)/(t.y-t.b)},h=function(t){var r=a(t)-e;return n.Fx.inbox(r-f,r+f)});var p=n.Fx.getDistanceFunction(i,h,d);if(n.Fx.getClosest(o,p,t),t.index!==!1){var g=o[t.index],v=g.mcc||s.marker.color,m=g.mlcc||s.marker.line.color,y=g.mlw||s.marker.line.width;return n.Color.opacity(v)?t.color=v:n.Color.opacity(m)&&y&&(t.color=m),\"h\"===s.orientation?(t.x0=t.x1=u.c2p(g.x,!0),t.xLabelVal=g.s,t.y0=c.c2p(a(g)-f,!0),t.y1=c.c2p(a(g)+f,!0),t.yLabelVal=g.p):(t.y0=t.y1=c.c2p(g.y,!0),t.yLabelVal=g.s,t.x0=u.c2p(a(g)-f,!0),t.x1=u.c2p(a(g)+f,!0),t.xLabelVal=g.p),g.tx&&(t.text=g.tx),n.ErrorBars&&n.ErrorBars.hoverInfo(g,s,t),[t]}}},{\"./isnumeric\":619,\"./plotly\":626}],571:[function(t,e){\"use strict\";function r(){h=2e9}function n(){var t=h;return h=(69069*h+1)%4294967296,Math.abs(h-t)<429496729?n():h/4294967296}var i=e.exports={},a=t(\"./plotly\"),o=t(\"./isnumeric\");a.Plots.register(i,\"box\",[\"cartesian\",\"symbols\",\"oriented\",\"box\",\"showLegend\"]);var s=a.Scatter.attributes,l=s.marker,u=s.line,c=l.line,f=a.Lib.extendFlat;i.attributes={y:{type:\"data_array\"},y0:{type:\"any\"},x:{type:\"data_array\"},x0:{type:\"any\"},whiskerwidth:{type:\"number\",min:0,max:1,dflt:.5},boxpoints:{type:\"enumerated\",values:[\"all\",\"outliers\",\"suspectedoutliers\",!1],dflt:\"outliers\"},boxmean:{type:\"enumerated\",values:[!0,\"sd\",!1],dflt:!1},jitter:{type:\"number\",min:0,max:1},pointpos:{type:\"number\",min:-2,max:2},orientation:{type:\"enumerated\",values:[\"v\",\"h\"]},marker:{outliercolor:{type:\"color\",dflt:\"rgba(0,0,0,0)\"},symbol:f(l.symbol,{arrayOk:!1}),opacity:f(l.opacity,{arrayOk:!1,dflt:1}),size:f(l.size,{arrayOk:!1}),color:f(l.color,{arrayOk:!1}),line:{color:f(c.color,{arrayOk:!1,dflt:a.Color.defaultLine}),width:f(c.width,{arrayOk:!1,dflt:0}),outliercolor:{type:\"color\"},outlierwidth:{type:\"number\",min:0,dflt:1}}},line:{color:u.color,width:u.width},fillcolor:s.fillcolor},i.layoutAttributes={boxmode:{type:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"overlay\"},boxgap:{type:\"number\",min:0,max:1,dflt:.3},boxgroupgap:{type:\"number\",min:0,max:1,dflt:.3}},i.supplyDefaults=function(t,e,r){function n(r,n){return a.Lib.coerce(t,e,i.attributes,r,n)}var o,s=n(\"y\"),l=n(\"x\");if(s&&s.length)o=\"v\",l||n(\"x0\");else{if(!l||!l.length)return void(e.visible=!1);o=\"h\",n(\"y0\")}n(\"orientation\",o),n(\"line.color\",(t.marker||{}).color||r),n(\"line.width\",2),n(\"fillcolor\",a.Color.addOpacity(e.line.color,.5)),n(\"whiskerwidth\"),n(\"boxmean\");var u=n(\"boxpoints\");u&&(n(\"jitter\",\"all\"===u?.3:0),n(\"pointpos\",\"all\"===u?-1.5:0),n(\"marker.symbol\"),n(\"marker.opacity\"),n(\"marker.size\"),n(\"marker.color\",e.line.color),n(\"marker.line.color\"),n(\"marker.line.width\"),\"suspectedoutliers\"===u&&(n(\"marker.outliercolor\"),n(\"marker.line.outliercolor\",e.marker.color),n(\"marker.line.outlierwidth\")))},i.supplyLayoutDefaults=function(t,e,r){function n(r,n){return a.Lib.coerce(t,e,i.layoutAttributes,r,n)}for(var o,s=0;s<r.length;s++)if(a.Plots.traceIs(r[s],\"box\")){o=!0;break}o&&(n(\"boxmode\"),n(\"boxgap\"),n(\"boxgroupgap\"))},i.calc=function(t,e){function r(t,e,r,n,i){var s;return r in e?d=n.makeCalcdata(e,r):(s=r+\"0\"in e?e[r+\"0\"]:\"name\"in e&&(\"category\"===n.type||o(e.name)&&-1!==[\"linear\",\"log\"].indexOf(n.type)||a.Lib.isDateTime(e.name)&&\"date\"===n.type)?e.name:t.numboxes,s=n.d2c(s),d=i.map(function(){return s})),d}function n(t,e,r,n,i){var s,l,u,c,f=n.length,h=e.length,d=[],p=[];for(s=0;f>s;++s)l=n[s],t[s]={pos:l},p[s]=l-i,d[s]=[];for(p.push(n[f-1]+i),s=0;h>s;++s)c=e[s],o(c)&&(u=a.Lib.findBin(r[s],p),u>=0&&h>u&&d[u].push(c));return d}function i(t,e){var r,n,i,o;for(o=0;o<e.length;++o)r=e[o].sort(a.Lib.sorterAsc),n=r.length,i=t[o],i.val=r,i.min=r[0],i.max=r[n-1],i.mean=a.Lib.mean(r,n),i.sd=a.Lib.stdev(r,n,i.mean),i.q1=a.Lib.interp(r,.25),i.med=a.Lib.interp(r,.5),i.q3=a.Lib.interp(r,.75),i.lf=Math.min(i.q1,r[Math.min(a.Lib.findBin(2.5*i.q1-1.5*i.q3,r,!0)+1,n-1)]),i.uf=Math.max(i.q3,r[Math.max(a.Lib.findBin(2.5*i.q3-1.5*i.q1,r),0)]),i.lo=4*i.q1-3*i.q3,i.uo=4*i.q3-3*i.q1}var s,l,u,c,f,h,d,p,g,v=a.Axes.getFromId(t,e.xaxis||\"x\"),m=a.Axes.getFromId(t,e.yaxis||\"y\"),y=e.orientation,b=[];\"h\"===y?(s=v,l=\"x\",f=m,h=\"y\"):(s=m,l=\"y\",f=v,h=\"x\"),u=s.makeCalcdata(e,l),a.Axes.expand(s,u,{padded:!0}),d=r(t,e,h,f,u);var x=a.Lib.distinctVals(d);return p=x.vals,g=x.minDiff/2,c=n(b,u,d,p,g),i(b,c),b=b.filter(function(t){return t.val&&t.val.length}),b.length?(b[0].t={boxnum:t.numboxes,dPos:g},t.numboxes++,b):[{t:{emptybox:!0}}]},i.setPositions=function(t,e){var r,n,i,o,s=t._fullLayout,l=e.x(),u=e.y(),c=[\"v\",\"h\"];for(n=0;n<c.length;++n){var f,h,d,p=c[n],g=[],v=[],m=0,y=0;for(r=\"h\"===p?u:l,i=0;i<t.calcdata.length;++i)f=t.calcdata[i],h=f[0].t,d=f[0].trace,d.visible===!0&&a.Plots.traceIs(d,\"box\")&&!h.emptybox&&d.orientation===p&&d.xaxis===l._id&&d.yaxis===u._id&&(g.push(i),d.boxpoints!==!1&&(m=Math.max(m,d.jitter-d.pointpos-1),y=Math.max(y,d.jitter+d.pointpos-1)));for(i=0;i<g.length;i++)for(f=t.calcdata[g[i]],o=0;o<f.length;o++)v.push(f[o].pos);if(v.length){var b=a.Lib.distinctVals(v),x=b.minDiff/2;for(v.length===b.vals.length&&(t.numboxes=1),a.Axes.minDtick(r,b.minDiff,b.vals[0],!0),n=0;n<g.length;++n)t.calcdata[n][0].t.dPos=x;var _=(1-s.boxgap)*(1-s.boxgroupgap)*x/t.numboxes;a.Axes.expand(r,b.vals,{vpadminus:x+m*_,vpadplus:x+y*_})}}};var h=2e9,d=5,p=.01;i.plot=function(t,e,i){var o,s,l=t._fullLayout,u=e.x(),c=e.y(),f=e.plot.select(\".boxlayer\").selectAll(\"g.trace.boxes\").data(i).enter().append(\"g\").attr(\"class\",\"trace boxes\");f.each(function(e){var i=e[0].t,f=e[0].trace,h=\"group\"===l.boxmode&&t.numboxes>1,g=i.dPos*(1-l.boxgap)*(1-l.boxgroupgap)/(h?t.numboxes:1),v=h?2*i.dPos*(-.5+(i.boxnum+.5)/t.numboxes)*(1-l.boxgap):0,m=g*f.whiskerwidth;return f.visible!==!0||i.emptybox?void d3.select(this).remove():(\"h\"===f.orientation?(o=c,s=u):(o=u,s=c),i.bPos=v,i.bdPos=g,r(),d3.select(this).selectAll(\"path.box\").data(a.Lib.identity).enter().append(\"path\").attr(\"class\",\"box\").each(function(t){var e=o.c2p(t.pos+v,!0),r=o.c2p(t.pos+v-g,!0),n=o.c2p(t.pos+v+g,!0),i=o.c2p(t.pos+v-m,!0),l=o.c2p(t.pos+v+m,!0),u=s.c2p(t.q1,!0),c=s.c2p(t.q3,!0),h=a.Lib.constrain(s.c2p(t.med,!0),Math.min(u,c)+1,Math.max(u,c)-1),d=s.c2p(f.boxpoints===!1?t.min:t.lf,!0),p=s.c2p(f.boxpoints===!1?t.max:t.uf,!0);\"h\"===f.orientation?d3.select(this).attr(\"d\",\"M\"+h+\",\"+r+\"V\"+n+\"M\"+u+\",\"+r+\"V\"+n+\"H\"+c+\"V\"+r+\"ZM\"+u+\",\"+e+\"H\"+d+\"M\"+c+\",\"+e+\"H\"+p+(0===f.whiskerwidth?\"\":\"M\"+d+\",\"+i+\"V\"+l+\"M\"+p+\",\"+i+\"V\"+l)):d3.select(this).attr(\"d\",\"M\"+r+\",\"+h+\"H\"+n+\"M\"+r+\",\"+u+\"H\"+n+\"V\"+c+\"H\"+r+\"ZM\"+e+\",\"+u+\"V\"+d+\"M\"+e+\",\"+c+\"V\"+p+(0===f.whiskerwidth?\"\":\"M\"+i+\",\"+d+\"H\"+l+\"M\"+i+\",\"+p+\"H\"+l))}),f.boxpoints&&d3.select(this).selectAll(\"g.points\").data(function(t){return t.forEach(function(t){t.t=i,t.trace=f}),t}).enter().append(\"g\").attr(\"class\",\"points\").selectAll(\"path\").data(function(t){var e,r,i,o,s,l,u,c=\"all\"===f.boxpoints?t.val:t.val.filter(function(e){return e<t.lf||e>t.uf}),h=(t.q3-t.q1)*p,m=[],y=0;if(f.jitter){for(e=0;e<c.length;e++)r=Math.max(0,e-d),o=c[r],i=Math.min(c.length-1,e+d),s=c[i],\"all\"!==f.boxpoints&&(c[e]<t.lf?s=Math.min(s,t.lf):o=Math.max(o,t.uf)),l=Math.sqrt(h*(i-r)/(s-o))||0,l=a.Lib.constrain(Math.abs(l),0,1),m.push(l),y=Math.max(l,y);u=2*f.jitter/y}return c.map(function(e,r){var i,a=f.pointpos;return f.jitter&&(a+=u*m[r]*(n()-.5)),i=\"h\"===f.orientation?{y:t.pos+a*g+v,x:e}:{x:t.pos+a*g+v,y:e},\"suspectedoutliers\"===f.boxpoints&&e<t.uo&&e>t.lo&&(i.so=!0),i})}).enter().append(\"path\").call(a.Drawing.translatePoints,u,c),void(f.boxmean&&d3.select(this).selectAll(\"path.mean\").data(a.Lib.identity).enter().append(\"path\").attr(\"class\",\"mean\").style(\"fill\",\"none\").each(function(t){var e=o.c2p(t.pos+v,!0),r=o.c2p(t.pos+v-g,!0),n=o.c2p(t.pos+v+g,!0),i=s.c2p(t.mean,!0),a=s.c2p(t.mean-t.sd,!0),l=s.c2p(t.mean+t.sd,!0);\"h\"===f.orientation?d3.select(this).attr(\"d\",\"M\"+i+\",\"+r+\"V\"+n+(\"sd\"!==f.boxmean?\"\":\"m0,0L\"+a+\",\"+e+\"L\"+i+\",\"+r+\"L\"+l+\",\"+e+\"Z\")):d3.select(this).attr(\"d\",\"M\"+r+\",\"+i+\"H\"+n+(\"sd\"!==f.boxmean?\"\":\"m0,0L\"+e+\",\"+a+\"L\"+r+\",\"+i+\"L\"+e+\",\"+l+\"Z\"))})))})},i.style=function(t){var e=d3.select(t).selectAll(\"g.trace.boxes\");e.style(\"opacity\",function(t){return t[0].trace.opacity}).each(function(t){var e=t[0].trace,r=e.line.width;d3.select(this).selectAll(\"path.box\").style(\"stroke-width\",r+\"px\").call(a.Color.stroke,e.line.color).call(a.Color.fill,e.fillcolor),d3.select(this).selectAll(\"path.mean\").style({\"stroke-width\":r,\"stroke-dasharray\":2*r+\"px,\"+r+\"px\"}).call(a.Color.stroke,e.line.color),d3.select(this).selectAll(\"g.points path\").call(a.Drawing.pointStyle,e)})},i.hoverPoints=function(t,e,r,n){var i,o,s,l,u,c,f,h,d,p,g=t.cd,v=g[0].trace,m=g[0].t,y=t.xa,b=t.ya,x=[];if(l=\"closest\"===n?2.5*m.bdPos:m.bdPos,\"h\"===v.orientation?(i=function(t){return a.Fx.inbox(t.min-e,t.max-e)},o=function(t){var e=t.pos+m.bPos-r;return a.Fx.inbox(e-l,e+l)},u=\"y\",c=b,d=\"x\",p=y):(i=function(t){var r=t.pos+m.bPos-e;return a.Fx.inbox(r-l,r+l)},o=function(t){return a.Fx.inbox(t.min-r,t.max-r)},u=\"x\",c=y,d=\"y\",p=b),s=a.Fx.getDistanceFunction(n,i,o),a.Fx.getClosest(g,s,t),t.index!==!1){var _=g[t.index],w=v.line.color,k=(v.marker||{}).color;t.color=a.Color.opacity(w)&&v.line.width?w:a.Color.opacity(k)&&v.boxpoints?k:v.fillcolor,t[u+\"0\"]=c.c2p(_.pos+m.bPos-m.bdPos,!0),t[u+\"1\"]=c.c2p(_.pos+m.bPos+m.bdPos,!0),f=a.Axes.tickText(c,c.c2l(_.pos),\"hover\").text,t[u+\"LabelVal\"]=_.pos;var A,M,L={},E=[\"med\",\"min\",\"q1\",\"q3\",\"max\"];v.boxmean&&E.push(\"mean\"),v.boxpoints&&[].push.apply(E,[\"lf\",\"uf\"]);for(var C=0;C<E.length;C++)A=E[C],A in _&&!(_[A]in L)&&(L[_[A]]=!0,h=p.c2p(_[A],!0),M=$.extend({},t),M[d+\"0\"]=M[d+\"1\"]=h,M[d+\"LabelVal\"]=_[A],M.attr=A,\"mean\"===A&&\"sd\"in _&&\"sd\"===v.boxmean&&(M[d+\"err\"]=_.sd),t.name=\"\",x.push(M));return x}}},{\"./isnumeric\":619,\"./plotly\":626}],572:[function(t,e){\"use strict\";function r(t){if(a(t)||\"string\"!=typeof t)return t;var e=t.trim();if(\"rgb\"!==e.substr(0,3))return t;var r=e.match(/^rgba?\\s*\\(([^()]*)\\)$/);if(!r)return t;var n=r[1].trim().split(/\\s*[\\s,]\\s*/),i=\"a\"===e.charAt(3)&&4===n.length;if(!i&&3!==n.length)return t;for(var o=0;o<n.length;o++){if(!n[o].length)return t;if(n[o]=Number(n[o]),!(n[o]>=0))return t;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return t}var s=Math.round(255*n[0])+\", \"+Math.round(255*n[1])+\", \"+Math.round(255*n[2]);return i?\"rgba(\"+s+\", \"+n[3]+\")\":\"rgb(\"+s+\")\"}var n=e.exports={},i=t(\"tinycolor2\"),a=t(\"./isnumeric\");n.defaults=[\"#1f77b4\",\"#ff7f0e\",\"#2ca02c\",\"#d62728\",\"#9467bd\",\"#8c564b\",\"#e377c2\",\"#7f7f7f\",\"#bcbd22\",\"#17becf\"],n.defaultLine=\"#444\",n.lightLine=\"#eee\",n.background=\"#fff\",n.tinyRGB=function(t){var e=t.toRgb();return\"rgb(\"+Math.round(e.r)+\", \"+Math.round(e.g)+\", \"+Math.round(e.b)+\")\"},n.rgb=function(t){return n.tinyRGB(i(t))},n.opacity=function(t){return t?i(t).getAlpha():0},n.addOpacity=function(t,e){var r=i(t).toRgb();return\"rgba(\"+Math.round(r.r)+\", \"+Math.round(r.g)+\", \"+Math.round(r.b)+\", \"+e+\")\"},n.combine=function(t,e){var r=i(t).toRgb();if(1===r.a)return i(t).toRgbString();var a=i(e||n.background).toRgb(),o=1===a.a?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},s={r:o.r*(1-r.a)+r.r*r.a,g:o.g*(1-r.a)+r.g*r.a,b:o.b*(1-r.a)+r.b*r.a};return i(s).toRgbString()},n.stroke=function(t,e){var r=i(e);t.style({stroke:n.tinyRGB(r),\"stroke-opacity\":r.getAlpha()})},n.fill=function(t,e){var r=i(e);t.style({fill:n.tinyRGB(r),\"fill-opacity\":r.getAlpha()})},n.clean=function(t){if(t&&\"object\"==typeof t){var e,i,a,o,s=Object.keys(t);for(e=0;e<s.length;e++)if(a=s[e],o=t[a],\"color\"===a.substr(a.length-5))if(Array.isArray(o))for(i=0;i<o.length;i++)o[i]=r(o[i]);else t[a]=r(o);else if(\"colorscale\"===a.substr(a.length-10)&&Array.isArray(o))for(i=0;i<o.length;i++)Array.isArray(o[i])&&(o[i][1]=r(o[i][1]));else if(Array.isArray(o)){var l=o[0];if(!Array.isArray(l)&&l&&\"object\"==typeof l)for(i=0;i<o.length;i++)n.clean(o[i])}else o&&\"object\"==typeof o&&n.clean(o)}}},{\"./isnumeric\":619,tinycolor2:566}],573:[function(t,e){\"use strict\";var r=t(\"./plotly\"),n=t(\"./isnumeric\"),i=e.exports=function(t,e){function n(){function i(t,e){return r.Lib.coerce(I,O,r.Axes.layoutAttributes,t,e)}function o(){if(-1!==[\"top\",\"bottom\"].indexOf(a.titleside)){var e=U.select(\".cbtitle\"),n=e.select(\"text\"),i=[-a.outlinewidth/2,a.outlinewidth/2],o=e.select(\".h\"+O._id+\"title-math-group\").node(),s=15.6;if(n.node()&&(s=1.3*parseInt(n.style(\"font-size\"),10)),o?(H=r.Drawing.bBox(o).height,H>s&&(i[1]-=(H-s)/2)):n.node()&&!n.classed(\"js-placeholder\")&&(H=r.Drawing.bBox(e.node()).height),H){if(H+=5,\"top\"===a.titleside)O.domain[1]-=H/l._size.h,i[1]*=-1;else{O.domain[0]+=H/l._size.h;var u=Math.max(1,n.selectAll(\"tspan.line\").size());i[1]+=(1-u)*s}e.attr(\"transform\",\"translate(\"+i+\")\"),O.setScale()}}U.selectAll(\".cbfills,.cblines,.cbaxis\").attr(\"transform\",\"translate(0,\"+Math.round(l._size.h*(1-O.domain[1]))+\")\");var g=U.select(\".cbfills\").selectAll(\"rect.cbfill\").data(h);g.enter().append(\"rect\").classed(\"cbfill\",!0).style(\"stroke\",\"none\"),g.exit().remove(),g.each(function(t,e){var r=[0===e?c[0]:(h[e]+h[e-1])/2,e===h.length-1?c[1]:(h[e]+h[e+1])/2].map(O.c2p).map(Math.round);e!==h.length-1&&(r[1]+=r[1]>r[0]?1:-1),d3.select(this).attr({x:j,width:Math.max(w,2),y:d3.min(r),height:Math.max(d3.max(r)-d3.min(r),2)}).style(\"fill\",p(t))});var v=U.select(\".cblines\").selectAll(\"path.cbline\").data(a.line.color&&a.line.width?f:[]);return v.enter().append(\"path\").classed(\"cbline\",!0),v.exit().remove(),v.each(function(t){d3.select(this).attr(\"d\",\"M\"+j+\",\"+(Math.round(O.c2p(t))+a.line.width/2%1)+\"h\"+w).call(r.Drawing.lineGroupStyle,a.line.width,d(t),a.line.dash)}),O._axislayer.selectAll(\"g.\"+O._id+\"tick,path\").remove(),O._pos=j+w+(a.outlinewidth||0)/2-(\"outside\"===a.ticks?1:0),O.side=a.orient,r.Axes.doTicks(t,O)}function s(){var n=w+a.outlinewidth/2+r.Drawing.bBox(O._axislayer.node()).width;if(b=V.select(\"text\"),b.node()&&!b.classed(\"js-placeholder\")){var i,o=V.select(\".h\"+O._id+\"title-math-group\").node();i=o&&-1!==[\"top\",\"bottom\"].indexOf(a.titleside)?r.Drawing.bBox(o).width:r.Drawing.bBox(V.node()).right-j-l._size.l,n=Math.max(n,i)}var s=2*a.xpad+n+a.borderwidth+a.outlinewidth/2,u=z-P;U.select(\".cbbg\").attr({x:j-a.xpad-(a.borderwidth+a.outlinewidth)/2,y:P-E,width:Math.max(s,2),height:Math.max(u+2*E,2)}).call(r.Color.fill,a.bgcolor).call(r.Color.stroke,a.bordercolor).style({\"stroke-width\":a.borderwidth}),U.selectAll(\".cboutline\").attr({x:j,y:P+a.ypad+(\"top\"===a.titleside?H:0),width:Math.max(w,2),height:Math.max(u-2*a.ypad-H,2)}).call(r.Color.stroke,a.outlinecolor).style({fill:\"None\",\"stroke-width\":a.outlinewidth});var c=({center:.5,right:1}[a.xanchor]||0)*s;U.attr(\"transform\",\"translate(\"+(l._size.l-c)+\",\"+l._size.t+\")\"),r.Plots.autoMargin(t,e,{x:a.x,y:a.y,l:s*({right:1,center:.5}[a.xanchor]||0),r:s*({left:1,center:.5}[a.xanchor]||0),t:u*({bottom:1,middle:.5}[a.yanchor]||0),b:u*({top:1,middle:.5}[a.yanchor]||0)})}var l=t._fullLayout;if(\"function\"!=typeof a.fillcolor&&\"function\"!=typeof a.line.color)return void l._infolayer.selectAll(\"g.\"+e).remove();var u,c=d3.extent((\"function\"==typeof a.fillcolor?a.fillcolor:a.line.color).domain()),f=[],h=[],d=\"function\"==typeof a.line.color?a.line.color:function(){return a.line.color},p=\"function\"==typeof a.fillcolor?a.fillcolor:function(){return a.fillcolor},g=a.levels.end+a.levels.size/100,v=a.levels.size,m=1.001*c[0]-.001*c[1],y=1.001*c[1]-.001*c[0];for(u=a.levels.start;0>(u-g)*v;u+=v)u>m&&y>u&&f.push(u);if(\"function\"==typeof a.fillcolor)if(a.filllevels)for(g=a.filllevels.end+a.filllevels.size/100,v=a.filllevels.size,u=a.filllevels.start;0>(u-g)*v;u+=v)u>c[0]&&u<c[1]&&h.push(u);else h=f.map(function(t){return t-a.levels.size/2}),h.push(h[h.length-1]+a.levels.size);else a.fillcolor&&\"string\"==typeof a.fillcolor&&(h=[0]);a.levels.size<0&&(f.reverse(),h.reverse());var b,x=l.height-l.margin.t-l.margin.b,_=l.width-l.margin.l-l.margin.r,w=Math.round(a.thickness*(\"fraction\"===a.thicknessmode?_:1)),k=w/l._size.w,A=Math.round(a.len*(\"fraction\"===a.lenmode?x:1)),M=A/l._size.h,L=a.xpad/l._size.w,E=(a.borderwidth+a.outlinewidth)/2,C=a.ypad/l._size.h,j=Math.round(a.x*l._size.w+a.xpad),S=a.x-k*({middle:.5,right:1}[a.xanchor]||0),T=a.y+M*(({top:-.5,bottom:.5}[a.yanchor]||0)-.5),z=Math.round(l._size.h*(1-T)),P=z-A,I={type:\"linear\",range:c,tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,tickfont:a.tickfont,tickangle:a.tickangle,tickformat:a.tickformat,exponentformat:a.exponentformat,showexponent:a.showexponent,showtickprefix:a.showtickprefix,tickprefix:a.tickprefix,showticksuffix:a.showticksuffix,ticksuffix:a.ticksuffix,title:a.title,titlefont:a.titlefont,anchor:\"free\",position:1},O={},D={letter:\"y\",font:l.font,noHover:!0};if(r.Axes.handleAxisDefaults(I,O,i,D),r.Axes.handleAxisPositioningDefaults(I,O,i,D),O._id=\"y\"+e,O._td=t,O.position=a.x+L+k,n.axis=O,-1!==[\"top\",\"bottom\"].indexOf(a.titleside)&&(O.titleside=a.titleside,O.titlex=a.x+L,O.titley=T+(\"top\"===a.titleside?M-C:C)),a.line.color&&\"auto\"===a.tickmode){O.tickmode=\"linear\",O.tick0=a.levels.start;var R=a.levels.size,N=r.Lib.constrain((z-P)/50,4,15)+1,B=(c[1]-c[0])/((a.nticks||N)*R);if(B>1){var F=Math.pow(10,Math.floor(Math.log(B)/Math.LN10));R*=F*r.Lib.roundUp(B/F,[2,5,10]),(Math.abs(a.levels.start)/a.levels.size+1e-6)%1<2e-6&&(O.tick0=0)}O.dtick=R}O.domain=[T+C,T+M-C],O.setScale();var U=l._infolayer.selectAll(\"g.\"+e).data([0]);U.enter().append(\"g\").classed(e,!0).each(function(){var t=d3.select(this);t.append(\"rect\").classed(\"cbbg\",!0),t.append(\"g\").classed(\"cbfills\",!0),t.append(\"g\").classed(\"cblines\",!0),t.append(\"g\").classed(\"cbaxis\",!0).classed(\"crisp\",!0),t.append(\"g\").classed(\"cbtitleunshift\",!0).append(\"g\").classed(\"cbtitle\",!0),t.append(\"rect\").classed(\"cboutline\",!0)}),U.attr(\"transform\",\"translate(\"+Math.round(l._size.l)+\",\"+Math.round(l._size.t)+\")\");var V=U.select(\".cbtitleunshift\").attr(\"transform\",\"translate(-\"+Math.round(l._size.l)+\",-\"+Math.round(l._size.t)+\")\");O._axislayer=U.select(\".cbaxis\");var H=0;-1!==[\"top\",\"bottom\"].indexOf(a.titleside)&&r.Plots.titles(t,O._id+\"title\");var q=r.Lib.syncOrAsync([r.Plots.previousPromises,o,r.Plots.previousPromises,s],t);if(q&&q.then&&(t._promises||[]).push(q),t._context.editable){var G,Y,W;r.Fx.dragElement({element:U.node(),prepFn:function(){G=U.attr(\"transform\"),r.Fx.setCursor(U)},moveFn:function(e,n){var i=t._fullLayout._size;U.attr(\"transform\",G+\" translate(\"+e+\",\"+n+\")\"),Y=r.Fx.dragAlign(S+e/i.w,k,0,1,a.xanchor),W=r.Fx.dragAlign(T-n/i.h,M,0,1,a.yanchor);var o=r.Fx.dragCursors(Y,W,a.xanchor,a.yanchor);r.Fx.setCursor(U,o)},doneFn:function(n){if(r.Fx.setCursor(U),n&&void 0!==Y&&void 0!==W){var i,a=e.substr(2);t._fullData.some(function(t){return t.uid===a?(i=t.index,!0):void 0}),r.restyle(t,{\"colorbar.x\":Y,\"colorbar.y\":W},i)}}})}return q}var a={};return Object.keys(i.attributes).forEach(function(t){a[t]=null}),a.fillcolor=null,a.line={color:null,width:null,dash:null},a.levels={start:null,end:null,size:null},a.filllevels=null,Object.keys(a).forEach(function(t){n[t]=function(e){return arguments.length?($.isPlainObject(a[t])?$.extend(a[t],e):a[t]=e,n):a[t]}}),n.options=function(t){return Object.keys(t).forEach(function(e){\"function\"==typeof n[e]&&n[e](t[e])}),n},n._opts=a,n},a=r.Axes.layoutAttributes,o=r.Lib.extendFlat;i.attributes={orient:{type:\"enumerated\",values:[\"left\",\"right\",\"top\",\"bottom\"],dflt:\"right\"},thicknessmode:{type:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"pixels\"},thickness:{type:\"number\",min:0,dflt:30},lenmode:{type:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"fraction\"},len:{type:\"number\",min:0,dflt:1},x:{type:\"number\",dflt:1.02},xanchor:{type:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\"},xpad:{type:\"number\",min:0,dflt:10},y:{type:\"number\",dflt:.5},yanchor:{type:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\"},ypad:{type:\"number\",min:0,dflt:10},outlinecolor:a.linecolor,outlinewidth:a.linewidth,bordercolor:a.linecolor,borderwidth:{type:\"number\",min:0,dflt:0},bgcolor:{type:\"color\",dflt:\"rgba(0,0,0,0)\"},tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:o(a.ticks,{dflt:\"\"}),ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,tickfont:a.tickfont,tickangle:a.tickangle,tickformat:a.tickformat,tickprefix:a.tickprefix,showtickprefix:a.showtickprefix,ticksuffix:a.ticksuffix,showticksuffix:a.showticksuffix,exponentformat:a.exponentformat,showexponent:a.showexponent,title:{type:\"string\",dflt:\"Click to enter colorscale title\"},titlefont:a.titlefont,titleside:{type:\"enumerated\",values:[\"right\",\"top\",\"bottom\"],dflt:\"top\"}},i.supplyDefaults=function(t,e,n){function a(t,e){return r.Lib.coerce(s,o,i.attributes,t,e)}var o=e.colorbar={},s=t.colorbar||{};a(\"orient\");var l=a(\"thicknessmode\");a(\"thickness\",\"fraction\"===l?30/(n.width-n.margin.l-n.margin.r):30);var u=a(\"lenmode\");a(\"len\",\"fraction\"===u?1:n.height-n.margin.t-n.margin.b),a(\"x\"),a(\"xanchor\"),a(\"xpad\"),a(\"y\"),a(\"yanchor\"),a(\"ypad\"),r.Lib.noneOrAll(s,o,[\"x\",\"y\"]),a(\"outlinecolor\"),a(\"outlinewidth\"),a(\"bordercolor\"),a(\"borderwidth\"),a(\"bgcolor\"),r.Axes.handleTickValueDefaults(s,o,a,\"linear\"),r.Axes.handleTickDefaults(s,o,a,\"linear\",{outerTicks:!1,font:n.font,noHover:!0}),a(\"title\"),a(\"titlefont\",n.font),a(\"titleside\")},i.traceColorbar=function(t,e){var a=e[0].trace,o=\"cb\"+a.uid,s=r.Colorscale.getScale(a.colorscale),l=a.zmin,u=a.zmax;if(n(l)||(l=r.Lib.aggNums(Math.min,null,a.z)),n(u)||(u=r.Lib.aggNums(Math.max,null,a.z)),t._fullLayout._infolayer.selectAll(\".\"+o).remove(),!a.showscale)return void r.Plots.autoMargin(t,o);var c=e[0].t.cb=i(t,o);c.fillcolor(d3.scale.linear().domain(s.map(function(t){return l+t[0]*(u-l)})).range(s.map(function(t){return t[1]}))).filllevels({start:l,end:u,size:(u-l)/254}).options(a.colorbar)(),r.Lib.markTime(\"done colorbar\")},i.traceColorbarAttributes={zauto:{type:\"boolean\",dflt:!0},zmin:{type:\"number\",dflt:null},zmax:{type:\"number\",dflt:null},colorscale:{type:\"colorscale\"},reversescale:{type:\"boolean\",dflt:!1},showscale:{type:\"boolean\",dflt:!0}}},{\"./isnumeric\":619,\"./plotly\":626}],574:[function(t,e){\"use strict\";function r(t){var e,r=!0,n=0;if(Array.isArray(t)){if(0!==+t[0][0]||1!==+t[t.length-1][0])return!1;for(var i=0;i<t.length;i++){if(e=t[i],2!==e.length||+e[0]<n||!a(e[1]).isValid()){r=!1;break}n=+e[0]}return r}return!1}var n=e.exports={},i=t(\"./plotly\"),a=t(\"tinycolor2\"),o=t(\"./isnumeric\");n.scales={Greys:[[0,\"rgb(0,0,0)\"],[1,\"rgb(255,255,255)\"]],YIGnBu:[[0,\"rgb(8, 29, 88)\"],[.125,\"rgb(37, 52, 148)\"],[.25,\"rgb(34, 94, 168)\"],[.375,\"rgb(29, 145, 192)\"],[.5,\"rgb(65, 182, 196)\"],[.625,\"rgb(127, 205, 187)\"],[.75,\"rgb(199, 233, 180)\"],[.875,\"rgb(237, 248, 217)\"],[1,\"rgb(255, 255, 217)\"]],Greens:[[0,\"rgb(0, 68, 27)\"],[.125,\"rgb(0, 109, 44)\"],[.25,\"rgb(35, 139, 69)\"],[.375,\"rgb(65, 171, 93)\"],[.5,\"rgb(116, 196, 118)\"],[.625,\"rgb(161, 217, 155)\"],[.75,\"rgb(199, 233, 192)\"],[.875,\"rgb(229, 245, 224)\"],[1,\"rgb(247, 252, 245)\"]],YIOrRd:[[0,\"rgb(128, 0, 38)\"],[.125,\"rgb(189, 0, 38)\"],[.25,\"rgb(227, 26, 28)\"],[.375,\"rgb(252, 78, 42)\"],[.5,\"rgb(253, 141, 60)\"],[.625,\"rgb(254, 178, 76)\"],[.75,\"rgb(254, 217, 118)\"],[.875,\"rgb(255, 237, 160)\"],[1,\"rgb(255, 255, 204)\"]],Bluered:[[0,\"rgb(0,0,255)\"],[1,\"rgb(255,0,0)\"]],RdBu:[[0,\"rgb(5, 10, 172)\"],[.35,\"rgb(106, 137, 247)\"],[.5,\"rgb(190,190,190)\"],[.6,\"rgb(220, 170, 132)\"],[.7,\"rgb(230, 145, 90)\"],[1,\"rgb(178, 10, 28)\"]],Reds:[[0,\"rgb(220, 220, 220)\"],[.2,\"rgb(245, 195, 157)\"],[.4,\"rgb(245, 160, 105)\"],[1,\"rgb(178, 10, 28)\"]],Blues:[[0,\"rgb(5, 10, 172)\"],[.35,\"rgb(40, 60, 190)\"],[.5,\"rgb(70, 100, 245)\"],[.6,\"rgb(90, 120, 245)\"],[.7,\"rgb(106, 137, 247)\"],[1,\"rgb(220, 220, 220)\"]],Picnic:[[0,\"rgb(0,0,255)\"],[.1,\"rgb(51,153,255)\"],[.2,\"rgb(102,204,255)\"],[.3,\"rgb(153,204,255)\"],[.4,\"rgb(204,204,255)\"],[.5,\"rgb(255,255,255)\"],[.6,\"rgb(255,204,255)\"],[.7,\"rgb(255,153,255)\"],[.8,\"rgb(255,102,204)\"],[.9,\"rgb(255,102,102)\"],[1,\"rgb(255,0,0)\"]],Rainbow:[[0,\"rgb(150,0,90)\"],[.125,\"rgb(0, 0, 200)\"],[.25,\"rgb(0, 25, 255)\"],[.375,\"rgb(0, 152, 255)\"],[.5,\"rgb(44, 255, 150)\"],[.625,\"rgb(151, 255, 0)\"],[.75,\"rgb(255, 234, 0)\"],[.875,\"rgb(255, 111, 0)\"],[1,\"rgb(255, 0, 0)\"]],Portland:[[0,\"rgb(12,51,131)\"],[.25,\"rgb(10,136,186)\"],[.5,\"rgb(242,211,56)\"],[.75,\"rgb(242,143,56)\"],[1,\"rgb(217,30,30)\"]],Jet:[[0,\"rgb(0,0,131)\"],[.125,\"rgb(0,60,170)\"],[.375,\"rgb(5,255,255)\"],[.625,\"rgb(255,255,0)\"],[.875,\"rgb(250,0,0)\"],[1,\"rgb(128,0,0)\"]],Hot:[[0,\"rgb(0,0,0)\"],[.3,\"rgb(230,0,0)\"],[.6,\"rgb(255,210,0)\"],[1,\"rgb(255,255,255)\"]],Blackbody:[[0,\"rgb(0,0,0)\"],[.2,\"rgb(230,0,0)\"],[.4,\"rgb(230,210,0)\"],[.7,\"rgb(255,255,255)\"],[1,\"rgb(160,200,255)\"]],Earth:[[0,\"rgb(0,0,130)\"],[.1,\"rgb(0,180,180)\"],[.2,\"rgb(40,210,40)\"],[.4,\"rgb(230,230,50)\"],[.6,\"rgb(120,70,20)\"],[1,\"rgb(255,255,255)\"]],Electric:[[0,\"rgb(0,0,0)\"],[.15,\"rgb(30,0,100)\"],[.4,\"rgb(120,0,100)\"],[.6,\"rgb(160,90,0)\"],[.8,\"rgb(230,200,0)\"],[1,\"rgb(255,250,220)\"]],Viridis:[[0,\"#440154\"],[.06274509803921569,\"#48186a\"],[.12549019607843137,\"#472d7b\"],[.18823529411764706,\"#424086\"],[.25098039215686274,\"#3b528b\"],[.3137254901960784,\"#33638d\"],[.3764705882352941,\"#2c728e\"],[.4392156862745098,\"#26828e\"],[.5019607843137255,\"#21918c\"],[.5647058823529412,\"#1fa088\"],[.6274509803921569,\"#28ae80\"],[.6901960784313725,\"#3fbc73\"],[.7529411764705882,\"#5ec962\"],[.8156862745098039,\"#84d44b\"],[.8784313725490196,\"#addc30\"],[.9411764705882353,\"#d8e219\"],[1,\"#fde725\"]]},n.defaultScale=n.scales.RdBu,n.isValidScale=function(t){return void 0!==n.scales[t]?!0:r(t)},n.getScale=function(t,e){function i(){try{t=n.scales[t]||JSON.parse(t)}catch(r){t=e}}return e||(e=n.defaultScale),t?(\"string\"==typeof t&&(i(),\"string\"==typeof t&&i()),r(t)?t:e):e},n.flipScale=function(t){for(var e,r=t.length,n=new Array(r),i=r-1,a=0;i>=0;i--,a++)e=t[i],n[a]=[1-e[0],e[1]];return n},n.hasColorscale=function(t,e){var r=e?i.Lib.nestedProperty(t,e).get()||{}:t,a=r.color,s=!1;if(Array.isArray(a))for(var l=0;l<a.length;l++)if(o(a[l])){s=!0;break}return\"object\"==typeof r&&null!==r&&(s||r.showscale===!0||o(r.cmin)&&o(r.cmax)||n.isValidScale(r.colorscale)||\"object\"==typeof r.colorbar&&null!==r.colorbar)},n.hasColorbar=function(t){return\"object\"==typeof t.colorbar&&null!==t.colorbar},n.handleDefaults=function(t,e,r,a,s){var l,u,c,f,h,d,p=s.prefix,g=s.cLetter,v=p.slice(0,p.length-1),m=p?i.Lib.nestedProperty(t,v).get()||{}:t,y=p?i.Lib.nestedProperty(e,v).get()||{}:e,b=m[g+\"min\"],x=m[g+\"max\"],_=m.colorscale;l=o(b)&&o(x)&&x>b,a(p+g+\"auto\",!l),a(p+g+\"min\"),a(p+g+\"max\"),void 0!==_&&(u=!n.isValidScale(_)),a(p+\"autocolorscale\",u),f=a(p+\"colorscale\"),h=a(p+\"reversescale\"),h&&(y.colorscale=n.flipScale(f)),\"marker.line.\"!==p&&(p&&(c=n.hasColorbar(m)),d=a(p+\"showscale\",c),d&&i.Colorbar.supplyDefaults(m,y,r))},n.calc=function(t,e,r,a){var o,s;r?(o=i.Lib.nestedProperty(t,r).get(),s=i.Lib.nestedProperty(t._input,r).get()):(o=t,s=t._input);var l=o[a+\"auto\"],u=o[a+\"min\"],c=o[a+\"max\"],f=o.colorscale;(l!==!1||void 0===u)&&(u=i.Lib.aggNums(Math.min,null,e)),(l!==!1||void 0===c)&&(c=i.Lib.aggNums(Math.max,null,e)),u===c&&(u-=.5,c+=.5),o[a+\"min\"]=u,o[a+\"max\"]=c,s[a+\"min\"]=u,s[a+\"max\"]=c,o.autocolorscale&&(f=0>u*c?n.scales.RdBu:u>=0?n.scales.Reds:n.scales.Blues,s.colorscale=f,o.reversescale&&(f=n.flipScale(f)),o.colorscale=f)\n",
"},n.makeScaleFunction=function(t,e,r){for(var n,s=t.length,l=new Array(s),u=new Array(s),c=0;s>c;c++)n=t[c],l[c]=e+n[0]*(r-e),u[c]=n[1];var f=d3.scale.linear().domain(l).interpolate(d3.interpolateRgb).range(u);return function(t){return o(t)?f(t):a(t).isValid()?t:i.Color.defaultLine}}},{\"./isnumeric\":619,\"./plotly\":626,tinycolor2:566}],575:[function(t,e,r){\"undefined\"!=typeof MathJax?(r.MathJax=!0,MathJax.Hub.Config({messageStyle:\"none\",skipStartupTypeset:!0,displayAlign:\"left\",tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}}),MathJax.Hub.Configured()):r.MathJax=!1},{}],576:[function(t,e){\"use strict\";function r(t,e,r){x.Lib.markTime(\"in Contour.plot\");var i=r[0].trace,o=r[0].x,l=r[0].y,u=i.contours,c=i.uid,f=e.x(),g=e.y(),y=t._fullLayout,b=\"contour\"+c,_=n(u,e,r[0]);if(i.visible!==!0)return void y._paper.selectAll(\".\"+b+\",.cb\"+c+\",.hm\"+c).remove();\"heatmap\"===u.coloring?(i.zauto&&i.autocontour===!1&&(i._input.zmin=i.zmin=u.start-u.size/2,i._input.zmax=i.zmax=i.zmin+_.length*u.size),x.Heatmap.plot(t,e,[r])):y._paper.selectAll(\".hm\"+c).remove(),a(_),s(_);var w=f.c2p(o[0],!0),k=f.c2p(o[o.length-1],!0),A=g.c2p(l[0],!0),M=g.c2p(l[l.length-1],!0),L=[[w,M],[k,M],[k,A],[w,A]],E=h(e,r,b);d(E,L,u),p(E,_,L,u),v(E,_,u),m(E,e,r[0],L),x.Lib.markTime(\"done Contour.plot\")}function n(t,e,r){for(var n=t.size||1,i=[],a=t.start;a<t.end+n/10;a+=n)i.push({level:a,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:e.x(),yaxis:e.y(),x:r.x,y:r.y,z:r.z,smoothing:r.trace.line.smoothing});return i}function i(t,e){var r=(e[0][0]>t?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);if(5===r||10===r){var n=(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4;return t>n?5===r?713:1114:5===r?104:208}return 15===r?0:r}function a(t){var e,r,n,a,o,s,l,u,c,f=t[0].z,h=f.length,d=f[0].length,p=2===h||2===d;for(r=0;h-1>r;r++)for(a=[],0===r&&(a=a.concat(w)),r===h-2&&(a=a.concat(k)),e=0;d-1>e;e++)for(n=a.slice(),0===e&&(n=n.concat(A)),e===d-2&&(n=n.concat(M)),o=e+\",\"+r,s=[[f[r][e],f[r][e+1]],[f[r+1][e],f[r+1][e+1]]],c=0;c<t.length;c++)u=t[c],l=i(u.level,s),l&&(u.crossings[o]=l,-1!==n.indexOf(l)&&(u.starts.push([e,r]),p&&-1!==n.indexOf(l,n.indexOf(l)+1)&&u.starts.push([e,r])))}function o(t,e,r){function n(t){return h[t%h.length]}for(var i=e.join(\",\"),a=i,o=t.crossings[a],s=l(o,r,e),h=[f(t,e,[-s[0],-s[1]])],d=s.join(\",\"),p=t.z.length,g=t.z[0].length,v=0;1e4>v;v++){if(o>20?(o=E[o][(s[0]||s[1])<0?0:1],t.crossings[a]=C[o]):delete t.crossings[a],s=L[o],!s){console.log(\"found bad marching index\",o,e,t.level);break}if(h.push(f(t,e,s)),e[0]+=s[0],e[1]+=s[1],u(h[h.length-1],h[h.length-2])&&h.pop(),a=e.join(\",\"),a===i&&s.join(\",\")===d||r&&(s[0]&&(e[0]<0||e[0]>g-2)||s[1]&&(e[1]<0||e[1]>p-2)))break;o=t.crossings[a]}1e4===v&&console.log(\"Infinite loop in contour?\");var m,y,b,x,_,w,k,A=u(h[0],h[h.length-1]),M=0,j=.2*t.smoothing,S=[],T=0;for(v=1;v<h.length;v++)k=c(h[v],h[v-1]),M+=k,S.push(k);var z=M/S.length*j;for(v=h.length-2;v>=T;v--)if(m=S[v],z>m){for(b=0,y=v-1;y>=T&&m+S[y]<z;y--)m+=S[y];if(A&&v===h.length-2)for(b=0;y>b&&m+S[b]<z;b++)m+=S[b];_=v-y+b+1,w=Math.floor((v+y+b+2)/2),x=A||v!==h.length-2?A||-1!==y?_%2?n(w):[(n(w)[0]+n(w+1)[0])/2,(n(w)[1]+n(w+1)[1])/2]:h[0]:h[h.length-1],h.splice(y+1,v-y+1,x),v=y+1,b&&(T=b),A&&(v===h.length-2?h[b]=h[h.length-1]:0===v&&(h[h.length-1]=h[0]))}if(h.splice(0,T),!(h.length<2))if(A)h.pop(),t.paths.push(h);else{r||console.log(\"unclosed interior contour?\",t.level,i,h.join(\"L\"));var P=!1;t.edgepaths.forEach(function(e,r){if(!P&&u(e[0],h[h.length-1])){h.pop(),P=!0;var n=!1;t.edgepaths.forEach(function(e,i){!n&&u(e[e.length-1],h[0])&&(n=!0,h.splice(0,1),t.edgepaths.splice(r,1),i===r?t.paths.push(h.concat(e)):t.edgepaths[i]=t.edgepaths[i].concat(h,e))}),n||(t.edgepaths[r]=h.concat(e))}}),t.edgepaths.forEach(function(e,r){!P&&u(e[e.length-1],h[0])&&(h.splice(0,1),t.edgepaths[r]=e.concat(h),P=!0)}),P||t.edgepaths.push(h)}}function s(t){var e,r,n,i,a;for(n=0;n<t.length;n++){for(i=t[n],a=0;a<i.starts.length;a++)r=i.starts[a],o(i,r,\"edge\");for(e=0;Object.keys(i.crossings).length&&1e4>e;)e++,r=Object.keys(i.crossings)[0].split(\",\").map(Number),o(i,r);1e4===e&&console.log(\"Infinite loop in contour?\")}}function l(t,e,r){var n=0,i=0;return t>20&&e?208===t||1114===t?n=0===r[0]?1:-1:i=0===r[1]?1:-1:-1!==w.indexOf(t)?i=1:-1!==A.indexOf(t)?n=1:-1!==k.indexOf(t)?i=-1:n=-1,[n,i]}function u(t,e){return Math.abs(t[0]-e[0])<.01&&Math.abs(t[1]-e[1])<.01}function c(t,e){var r=t[0]-e[0],n=t[1]-e[1];return Math.sqrt(r*r+n*n)}function f(t,e,r){var n=e[0]+Math.max(r[0],0),i=e[1]+Math.max(r[1],0),a=t.z[i][n],o=t.xaxis,s=t.yaxis;if(r[1]){var l=(t.level-a)/(t.z[i][n+1]-a);return[o.c2p((1-l)*t.x[n]+l*t.x[n+1],!0),s.c2p(t.y[i],!0)]}var u=(t.level-a)/(t.z[i+1][n]-a);return[o.c2p(t.x[n],!0),s.c2p((1-u)*t.y[i]+u*t.y[i+1],!0)]}function h(t,e,r){var n=t.plot.select(\".maplayer\").selectAll(\"g.contour.\"+r).data(e);return n.enter().append(\"g\").classed(\"contour\",!0).classed(r,!0),n.exit().remove(),n}function d(t,e,r){var n=t.selectAll(\"g.contourbg\").data([0]);n.enter().append(\"g\").classed(\"contourbg\",!0);var i=n.selectAll(\"path\").data(\"fill\"===r.coloring?[0]:[]);i.enter().append(\"path\"),i.exit().remove(),i.attr(\"d\",\"M\"+e.join(\"L\")+\"Z\").style(\"stroke\",\"none\")}function p(t,e,r,n){var i=t.selectAll(\"g.contourfill\").data([0]);i.enter().append(\"g\").classed(\"contourfill\",!0);var a=i.selectAll(\"path\").data(\"fill\"===n.coloring?e:[]);a.enter().append(\"path\"),a.exit().remove(),a.each(function(t){var e=g(t,r);e?d3.select(this).attr(\"d\",e).style(\"stroke\",\"none\"):d3.select(this).remove()})}function g(t,e){function r(t){return Math.abs(t[1]-e[0][1])<.01}function n(t){return Math.abs(t[1]-e[2][1])<.01}function i(t){return Math.abs(t[0]-e[0][0])<.01}function a(t){return Math.abs(t[0]-e[2][0])<.01}for(var o,s,l,u,c,f,h=t.edgepaths.length||t.z[0][0]<t.level?\"\":\"M\"+e.join(\"L\")+\"Z\",d=0,p=t.edgepaths.map(function(t,e){return e}),g=!0;p.length;){for(f=x.Drawing.smoothopen(t.edgepaths[d],t.smoothing),h+=g?f:f.replace(/^M/,\"L\"),p.splice(p.indexOf(d),1),o=t.edgepaths[d][t.edgepaths[d].length-1],u=-1,l=0;4>l;l++){if(!o){console.log(\"missing end?\",d,t);break}for(r(o)&&!a(o)?s=e[1]:i(o)?s=e[0]:n(o)?s=e[3]:a(o)&&(s=e[2]),c=0;c<t.edgepaths.length;c++){var v=t.edgepaths[c][0];Math.abs(o[0]-s[0])<.01?Math.abs(o[0]-v[0])<.01&&(v[1]-o[1])*(s[1]-v[1])>=0&&(s=v,u=c):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-v[1])<.01&&(v[0]-o[0])*(s[0]-v[0])>=0&&(s=v,u=c):console.log(\"endpt to newendpt is not vert. or horz.\",o,s,v)}if(o=s,u>=0)break;h+=\"L\"+s}if(u===t.edgepaths.length){console.log(\"unclosed perimeter path\");break}d=u,g=-1===p.indexOf(d),g&&(d=p[0],h+=\"Z\")}for(d=0;d<t.paths.length;d++)h+=x.Drawing.smoothclosed(t.paths[d],t.smoothing);return h}function v(t,e,r){var n=e[0].smoothing,i=t.selectAll(\"g.contourlevel\").data(r.showlines===!1?[]:e);i.enter().append(\"g\").classed(\"contourlevel\",!0),i.exit().remove();var a=i.selectAll(\"path.openline\").data(function(t){return t.edgepaths});a.enter().append(\"path\").classed(\"openline\",!0),a.exit().remove(),a.attr(\"d\",function(t){return x.Drawing.smoothopen(t,n)}).style(\"stroke-miterlimit\",1);var o=i.selectAll(\"path.closedline\").data(function(t){return t.paths});o.enter().append(\"path\").classed(\"closedline\",!0),o.exit().remove(),o.attr(\"d\",function(t){return x.Drawing.smoothclosed(t,n)}).style(\"stroke-miterlimit\",1)}function m(t,e,r,n){var i=\"clip\"+r.trace.uid,o=e.plot.selectAll(\"defs\").data([0]);o.enter().append(\"defs\");var l=o.selectAll(\"#\"+i).data(r.trace.connectgaps?[]:[0]);if(l.enter().append(\"clipPath\").attr(\"id\",i),l.exit().remove(),r.trace.connectgaps===!1){var u={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:e.x(),yaxis:e.y(),x:r.x,y:r.y,z:y(r),smoothing:0};a([u]),s([u]);var c=g(u,n),f=l.selectAll(\"path\").data([0]);f.enter().append(\"path\"),f.attr(\"d\",c)}else i=null;t.call(x.Drawing.setClipUrl,i),e.plot.selectAll(\".hm\"+r.trace.uid).call(x.Drawing.setClipUrl,i)}function y(t){var e,r,n=t.trace._emptypoints,i=[],a=t.z.length,o=t.z[0].length,s=[];for(e=0;o>e;e++)s.push(1);for(e=0;a>e;e++)i.push(s.slice());for(e=0;e<n.length;e++)r=n[e],i[r[0]][r[1]]=0;return t.zmask=i,i}var b=e.exports={},x=t(\"./plotly\");x.Plots.register(b,\"contour\",[\"cartesian\",\"2dMap\",\"contour\"]),x.Plots.register(b,\"histogram2dcontour\",[\"cartesian\",\"2dMap\",\"contour\",\"histogram\"]);var _=x.Scatter.attributes.line;b.attributes={_composedModules:{contour:\"Heatmap\",histogram2dcontour:\"Heatmap\"},autocontour:{type:\"boolean\",dflt:!0},ncontours:{type:\"integer\",dflt:0},contours:{start:{type:\"number\",dflt:null},end:{type:\"number\",dflt:null},size:{type:\"number\",dflt:null},coloring:{type:\"enumerated\",values:[\"fill\",\"heatmap\",\"lines\",\"none\"],dflt:\"fill\"},showlines:{type:\"boolean\",dflt:!0}},line:{color:_.color,width:_.width,dash:_.dash,smoothing:_.smoothing}},b.supplyDefaults=function(t,e,r,n){function i(r,n){return x.Lib.coerce(t,e,b.attributes,r,n)}var a=i(\"autocontour\");a&&i(\"ncontours\"),i(\"contours.start\"),i(\"contours.end\"),i(\"contours.size\");var o=i(\"contours.coloring\");\"fill\"===o&&i(\"contours.showlines\"),e.contours.showlines!==!1&&(\"lines\"!==o&&i(\"line.color\",\"#000\"),i(\"line.width\",.5),i(\"line.dash\")),i(\"line.smoothing\"),x.Heatmap.supplyDefaults(t,e,r,n)},b.calc=function(t,e){var r=x.Heatmap.calc(t,e),n=e.contours;if(e.autocontour!==!1||!n.size||void 0===n.start||void 0===n.end){var i={type:\"linear\",range:[e.zmin,e.zmax]};x.Axes.autoTicks(i,(e.zmax-e.zmin)/(e.ncontours||15)),n.start=x.Axes.tickFirst(i),n.size=i.dtick,i.range.reverse(),n.end=x.Axes.tickFirst(i),n.start===e.zmin&&(n.start+=n.size),n.end===e.zmax&&(n.end-=n.size),n.end+=n.size/100,e._input.contours=n}return r},b.plot=function(t,e,n){for(var i=0;i<n.length;i++)r(t,e,n[i])};var w=[1,9,13,104,713],k=[4,6,7,104,713],A=[8,12,14,208,1114],M=[2,3,11,208,1114],L=[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],E={104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},C={1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11};b.style=function(t){d3.select(t).selectAll(\"g.contour\").style(\"opacity\",function(t){return t.trace.opacity}).each(function(t){var e=d3.select(this),r=t.trace,n=r.contours,i=r.line,a=\"lines\"===n.coloring,o=n.size||1,s=Math.floor((n.end+o/10-n.start)/o)+1,l=x.Colorscale.getScale(r.colorscale),u=a?0:1,c=d3.scale.linear().domain(l.map(function(t){return(t[0]*(s+u-1)-u/2)*o+n.start})).interpolate(d3.interpolateRgb).range(l.map(function(t){return t[1]}));e.selectAll(\"g.contourlevel\").each(function(t,e){d3.select(this).selectAll(\"path\").call(x.Drawing.lineGroupStyle,i.width,a?c(n.start+e*o):i.color,i.dash)}),e.selectAll(\"g.contourbg path\").style(\"fill\",c(n.start-o/2)),e.selectAll(\"g.contourfill path\").style(\"fill\",function(t,e){return c(n.start+(e+.5)*o)})}),x.Heatmap.style(t)},b.colorbar=function(t,e){var r=e[0].trace,n=\"cb\"+r.uid;if(t._fullLayout._infolayer.selectAll(\".\"+n).remove(),r.showscale===!1)return void x.Plots.autoMargin(t,n);var i=x.Colorbar(t,n);e[0].t.cb=i;var a=r.contours,o=r.line,s=a.size||1,l=Math.floor((a.end+s/10-a.start)/s)+1,u=x.Colorscale.getScale(r.colorscale),c=\"lines\"===a.coloring?0:1,f=d3.scale.linear().interpolate(d3.interpolateRgb),h=u.map(function(t){return(t[0]*(l+c-1)-c/2)*s+a.start}),d=u.map(function(t){return t[1]});if(\"heatmap\"===a.coloring){r.zauto&&r.autocontour===!1&&(r.zmin=a.start-s/2,r.zmax=r.zmin+l*s),i.filllevels({start:r.zmin,end:r.zmax,size:(r.zmax-r.zmin)/254}),h=u.map(function(t){return t[0]*(r.zmax-r.zmin)+r.zmin});var p=d3.extent([r.zmin,r.zmax,a.start,a.start+s*(l-1)]),g=p[r.zmin<r.zmax?0:1],v=p[r.zmin<r.zmax?1:0];g!==r.zmin&&(h.splice(0,0,g),d.splice(0,0,d[0])),v!==r.zmax&&(h.push(v),d.push(d[d.length-1]))}f.domain(h).range(d),i.fillcolor(\"fill\"===a.coloring||\"heatmap\"===a.coloring?f:\"\").line({color:\"lines\"===a.coloring?f:o.color,width:a.showlines!==!1?o.width:0,dash:o.dash}).levels({start:a.start,end:a.end,size:s}).options(r.colorbar)()},b.hoverPoints=function(t,e,r,n){return x.Heatmap.hoverPoints(t,e,r,n,!0)}},{\"./plotly\":626}],577:[function(t,e){\"use strict\";function r(t,e,r,n){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(i*i+a*a,f/2),u=Math.pow(o*o+s*s,f/2),c=(u*u*i-l*l*o)*n,h=(u*u*a-l*l*s)*n,d=3*u*(l+u),p=3*l*(l+u);return[[d3.round(e[0]+(d&&c/d),2),d3.round(e[1]+(d&&h/d),2)],[d3.round(e[0]-(p&&c/p),2),d3.round(e[1]-(p&&h/p),2)]]}var n=e.exports={},i=t(\"./plotly\"),a=t(\"./isnumeric\");n.font=function(t,e,r,n){e&&e.family&&(n=e.color,r=e.size,e=e.family),e&&t.style(\"font-family\",e),r+1&&t.style(\"font-size\",r+\"px\"),n&&t.call(i.Color.fill,n)},n.setPosition=function(t,e,r){t.attr(\"x\",e).attr(\"y\",r)},n.setSize=function(t,e,r){t.attr(\"width\",e).attr(\"height\",r)},n.setRect=function(t,e,r,i,a){t.call(n.setPosition,e,r).call(n.setSize,i,a)},n.translatePoints=function(t,e,r){t.each(function(t){var n=t.xp||e.c2p(t.x),i=t.yp||r.c2p(t.y),o=d3.select(this);a(n)&&a(i)?\"text\"===this.nodeName?o.attr(\"x\",n).attr(\"y\",i):o.attr(\"transform\",\"translate(\"+n+\",\"+i+\")\"):o.remove()})},n.getPx=function(t,e){return Number(t.style(e).replace(/px$/,\"\"))},n.crispRound=function(t,e,r){return e&&a(e)?t._context.staticPlot?e:1>e?1:Math.round(e):r||0},n.lineGroupStyle=function(t,e,r,a){t.style(\"fill\",\"none\").each(function(t){var o=(((t||[])[0]||{}).trace||{}).line||{},s=e||o.width||0,l=a||o.dash||\"\";d3.select(this).call(i.Color.stroke,r||o.color).call(n.dashLine,l,s)})},n.dashLine=function(t,e,r){var n=Math.max(r,3);\"solid\"===e?e=\"\":\"dot\"===e?e=n+\"px,\"+n+\"px\":\"dash\"===e?e=3*n+\"px,\"+3*n+\"px\":\"longdash\"===e?e=5*n+\"px,\"+5*n+\"px\":\"dashdot\"===e?e=3*n+\"px,\"+n+\"px,\"+n+\"px,\"+n+\"px\":\"longdashdot\"===e&&(e=5*n+\"px,\"+2*n+\"px,\"+n+\"px,\"+2*n+\"px\"),t.style({\"stroke-dasharray\":e,\"stroke-width\":r+\"px\"})},n.fillGroupStyle=function(t){t.style(\"stroke-width\",0).each(function(e){var r=d3.select(this);try{r.call(i.Color.fill,e[0].trace.fillcolor)}catch(e){console.log(e,t),r.remove()}})};var o={circle:{n:0,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"}},square:{n:1,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"}},diamond:{n:2,f:function(t){var e=d3.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"Z\"}},cross:{n:3,f:function(t){var e=d3.round(.4*t,2),r=d3.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H\"+e+\"V\"+r+\"H-\"+e+\"V\"+e+\"H-\"+r+\"V-\"+e+\"H-\"+e+\"V-\"+r+\"H\"+e+\"V-\"+e+\"H\"+r+\"Z\"}},x:{n:4,f:function(t){var e=d3.round(.8*t/Math.sqrt(2),2),r=\"l\"+e+\",\"+e,n=\"l\"+e+\",-\"+e,i=\"l-\"+e+\",-\"+e,a=\"l-\"+e+\",\"+e;return\"M0,\"+e+r+n+i+n+i+a+i+a+r+a+r+\"Z\"}},\"triangle-up\":{n:5,f:function(t){var e=d3.round(2*t/Math.sqrt(3),2),r=d3.round(t/2,2),n=d3.round(t,2);return\"M-\"+e+\",\"+r+\"H\"+e+\"L0,-\"+n+\"Z\"}},\"triangle-down\":{n:6,f:function(t){var e=d3.round(2*t/Math.sqrt(3),2),r=d3.round(t/2,2),n=d3.round(t,2);return\"M-\"+e+\",-\"+r+\"H\"+e+\"L0,\"+n+\"Z\"}},\"triangle-left\":{n:7,f:function(t){var e=d3.round(2*t/Math.sqrt(3),2),r=d3.round(t/2,2),n=d3.round(t,2);return\"M\"+r+\",-\"+e+\"V\"+e+\"L-\"+n+\",0Z\"}},\"triangle-right\":{n:8,f:function(t){var e=d3.round(2*t/Math.sqrt(3),2),r=d3.round(t/2,2),n=d3.round(t,2);return\"M-\"+r+\",-\"+e+\"V\"+e+\"L\"+n+\",0Z\"}},\"triangle-ne\":{n:9,f:function(t){var e=d3.round(.6*t,2),r=d3.round(1.2*t,2);return\"M-\"+r+\",-\"+e+\"H\"+e+\"V\"+r+\"Z\"}},\"triangle-se\":{n:10,f:function(t){var e=d3.round(.6*t,2),r=d3.round(1.2*t,2);return\"M\"+e+\",-\"+r+\"V\"+e+\"H-\"+r+\"Z\"}},\"triangle-sw\":{n:11,f:function(t){var e=d3.round(.6*t,2),r=d3.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H-\"+e+\"V-\"+r+\"Z\"}},\"triangle-nw\":{n:12,f:function(t){var e=d3.round(.6*t,2),r=d3.round(1.2*t,2);return\"M-\"+e+\",\"+r+\"V-\"+e+\"H\"+r+\"Z\"}},pentagon:{n:13,f:function(t){var e=d3.round(.951*t,2),r=d3.round(.588*t,2),n=d3.round(-t,2),i=d3.round(t*-.309,2),a=d3.round(.809*t,2);return\"M\"+e+\",\"+i+\"L\"+r+\",\"+a+\"H-\"+r+\"L-\"+e+\",\"+i+\"L0,\"+n+\"Z\"}},hexagon:{n:14,f:function(t){var e=d3.round(t,2),r=d3.round(t/2,2),n=d3.round(t*Math.sqrt(3)/2,2);return\"M\"+n+\",-\"+r+\"V\"+r+\"L0,\"+e+\"L-\"+n+\",\"+r+\"V-\"+r+\"L0,-\"+e+\"Z\"}},hexagon2:{n:15,f:function(t){var e=d3.round(t,2),r=d3.round(t/2,2),n=d3.round(t*Math.sqrt(3)/2,2);return\"M-\"+r+\",\"+n+\"H\"+r+\"L\"+e+\",0L\"+r+\",-\"+n+\"H-\"+r+\"L-\"+e+\",0Z\"}},octagon:{n:16,f:function(t){var e=d3.round(.924*t,2),r=d3.round(.383*t,2);return\"M-\"+r+\",-\"+e+\"H\"+r+\"L\"+e+\",-\"+r+\"V\"+r+\"L\"+r+\",\"+e+\"H-\"+r+\"L-\"+e+\",\"+r+\"V-\"+r+\"Z\"}},star:{n:17,f:function(t){var e=1.4*t,r=d3.round(.225*e,2),n=d3.round(.951*e,2),i=d3.round(.363*e,2),a=d3.round(.588*e,2),o=d3.round(-e,2),s=d3.round(e*-.309,2),l=d3.round(.118*e,2),u=d3.round(.809*e,2),c=d3.round(.382*e,2);return\"M\"+r+\",\"+s+\"H\"+n+\"L\"+i+\",\"+l+\"L\"+a+\",\"+u+\"L0,\"+c+\"L-\"+a+\",\"+u+\"L-\"+i+\",\"+l+\"L-\"+n+\",\"+s+\"H-\"+r+\"L0,\"+o+\"Z\"}},hexagram:{n:18,f:function(t){var e=d3.round(.66*t,2),r=d3.round(.38*t,2),n=d3.round(.76*t,2);return\"M-\"+n+\",0l-\"+r+\",-\"+e+\"h\"+n+\"l\"+r+\",-\"+e+\"l\"+r+\",\"+e+\"h\"+n+\"l-\"+r+\",\"+e+\"l\"+r+\",\"+e+\"h-\"+n+\"l-\"+r+\",\"+e+\"l-\"+r+\",-\"+e+\"h-\"+n+\"Z\"}},\"star-triangle-up\":{n:19,f:function(t){var e=d3.round(t*Math.sqrt(3)*.8,2),r=d3.round(.8*t,2),n=d3.round(1.6*t,2),i=d3.round(4*t,2),a=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M-\"+e+\",\"+r+a+e+\",\"+r+a+\"0,-\"+n+a+\"-\"+e+\",\"+r+\"Z\"}},\"star-triangle-down\":{n:20,f:function(t){var e=d3.round(t*Math.sqrt(3)*.8,2),r=d3.round(.8*t,2),n=d3.round(1.6*t,2),i=d3.round(4*t,2),a=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M\"+e+\",-\"+r+a+\"-\"+e+\",-\"+r+a+\"0,\"+n+a+e+\",-\"+r+\"Z\"}},\"star-square\":{n:21,f:function(t){var e=d3.round(1.1*t,2),r=d3.round(2*t,2),n=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",-\"+e+n+\"-\"+e+\",\"+e+n+e+\",\"+e+n+e+\",-\"+e+n+\"-\"+e+\",-\"+e+\"Z\"}},\"star-diamond\":{n:22,f:function(t){var e=d3.round(1.4*t,2),r=d3.round(1.9*t,2),n=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",0\"+n+\"0,\"+e+n+e+\",0\"+n+\"0,-\"+e+n+\"-\"+e+\",0Z\"}},\"diamond-tall\":{n:23,f:function(t){var e=d3.round(.7*t,2),r=d3.round(1.4*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},\"diamond-wide\":{n:24,f:function(t){var e=d3.round(1.4*t,2),r=d3.round(.7*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},hourglass:{n:25,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"L\"+e+\",-\"+e+\"H-\"+e+\"Z\"},noDot:!0},bowtie:{n:26,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"V-\"+e+\"L-\"+e+\",\"+e+\"V-\"+e+\"Z\"},noDot:!0},\"circle-cross\":{n:27,f:function(t){var e=d3.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"circle-x\":{n:28,f:function(t){var e=d3.round(t,2),r=d3.round(t/Math.sqrt(2),2);return\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"square-cross\":{n:29,f:function(t){var e=d3.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"square-x\":{n:30,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"diamond-cross\":{n:31,f:function(t){var e=d3.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM0,-\"+e+\"V\"+e+\"M-\"+e+\",0H\"+e},needLine:!0,noDot:!0},\"diamond-x\":{n:32,f:function(t){var e=d3.round(1.3*t,2),r=d3.round(.65*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM-\"+r+\",-\"+r+\"L\"+r+\",\"+r+\"M-\"+r+\",\"+r+\"L\"+r+\",-\"+r},needLine:!0,noDot:!0},\"cross-thin\":{n:33,f:function(t){var e=d3.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0},\"x-thin\":{n:34,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0},asterisk:{n:35,f:function(t){var e=d3.round(1.2*t,2),r=d3.round(.85*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r},needLine:!0,noDot:!0},hash:{n:36,f:function(t){var e=d3.round(t/2,2),r=d3.round(t,2);return\"M\"+e+\",\"+r+\"V-\"+r+\"m-\"+r+\",0V\"+r+\"M\"+r+\",\"+e+\"H-\"+r+\"m0,-\"+r+\"H\"+r},needLine:!0},\"y-up\":{n:37,f:function(t){var e=d3.round(1.2*t,2),r=d3.round(1.6*t,2),n=d3.round(.8*t,2);return\"M-\"+e+\",\"+n+\"L0,0M\"+e+\",\"+n+\"L0,0M0,-\"+r+\"L0,0\"},needLine:!0,noDot:!0},\"y-down\":{n:38,f:function(t){var e=d3.round(1.2*t,2),r=d3.round(1.6*t,2),n=d3.round(.8*t,2);return\"M-\"+e+\",-\"+n+\"L0,0M\"+e+\",-\"+n+\"L0,0M0,\"+r+\"L0,0\"},needLine:!0,noDot:!0},\"y-left\":{n:39,f:function(t){var e=d3.round(1.2*t,2),r=d3.round(1.6*t,2),n=d3.round(.8*t,2);return\"M\"+n+\",\"+e+\"L0,0M\"+n+\",-\"+e+\"L0,0M-\"+r+\",0L0,0\"},needLine:!0,noDot:!0},\"y-right\":{n:40,f:function(t){var e=d3.round(1.2*t,2),r=d3.round(1.6*t,2),n=d3.round(.8*t,2);return\"M-\"+n+\",\"+e+\"L0,0M-\"+n+\",-\"+e+\"L0,0M\"+r+\",0L0,0\"},needLine:!0,noDot:!0},\"line-ew\":{n:41,f:function(t){var e=d3.round(1.4*t,2);return\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0},\"line-ns\":{n:42,f:function(t){var e=d3.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e},needLine:!0,noDot:!0},\"line-ne\":{n:43,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0},\"line-nw\":{n:44,f:function(t){var e=d3.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e},needLine:!0,noDot:!0}};n.symbolNames=[],n.symbolFuncs=[],n.symbolNeedLines={},n.symbolNoDot={},n.symbolList=[],Object.keys(o).forEach(function(t){var e=o[t];n.symbolList=n.symbolList.concat([e.n,t,e.n+100,t+\"-open\"]),n.symbolNames[e.n]=t,n.symbolFuncs[e.n]=e.f,e.needLine&&(n.symbolNeedLines[e.n]=!0),e.noDot?n.symbolNoDot[e.n]=!0:n.symbolList=n.symbolList.concat([e.n+200,t+\"-dot\",e.n+300,t+\"-open-dot\"])});var s=n.symbolNames.length,l=\"M0,0.5L0.5,0L0,-0.5L-0.5,0Z\";n.symbolNumber=function(t){if(\"string\"==typeof t){var e=0;t.indexOf(\"-open\")>0&&(e=100,t=t.replace(\"-open\",\"\")),t.indexOf(\"-dot\")>0&&(e+=200,t=t.replace(\"-dot\",\"\")),t=n.symbolNames.indexOf(t),t>=0&&(t+=e)}return t%100>=s||t>=400?0:Math.floor(Math.max(t,0))},n.pointStyle=function(t,e){if(t.size()){var r=e.marker,a=r.line;if(i.Plots.traceIs(e,\"symbols\")){var o=i.Scatter.getBubbleSizeFn(e);t.attr(\"d\",function(t){var a;a=\"various\"===t.ms||\"various\"===r.size?3:i.Scatter.isBubble(e)?o(t.ms):(r.size||6)/2,t.mrc=a;var s=n.symbolNumber(t.mx||r.symbol)||0,u=s%100;return t.om=s%200>=100,n.symbolFuncs[u](a)+(s>=200?l:\"\")}).style(\"opacity\",function(t){return(t.mo+1||r.opacity+1)-1})}var s=(e._input||{}).marker||{},u=n.tryColorscale(r,s,\"\"),c=n.tryColorscale(r,s,\"line.\");t.each(function(t){var e,n,o;t.so?(o=a.outlierwidth,n=a.outliercolor,e=r.outliercolor):(o=(t.mlw+1||a.width+1||(t.trace?t.trace.marker.line.width:0)+1)-1,n=\"mlc\"in t?t.mlcc=c(t.mlc):Array.isArray(a.color)?i.Color.defaultLine:a.color,e=\"mc\"in t?t.mcc=u(t.mc):Array.isArray(r.color)?i.Color.defaultLine:r.color||\"rgba(0,0,0,0)\");var s=d3.select(this);t.om?s.call(i.Color.stroke,e).style({\"stroke-width\":(o||1)+\"px\",fill:\"none\"}):(s.style(\"stroke-width\",o+\"px\").call(i.Color.fill,e),o&&s.call(i.Color.stroke,n))})}},n.tryColorscale=function(t,e,r){var n=i.Lib.nestedProperty(t,r+\"color\").get(),o=i.Lib.nestedProperty(t,r+\"colorscale\").get(),s=i.Lib.nestedProperty(t,r+\"cauto\").get(),l=i.Lib.nestedProperty(t,r+\"cmin\"),u=i.Lib.nestedProperty(t,r+\"cmax\"),c=l.get(),f=u.get();return o&&Array.isArray(n)?(!s&&a(c)&&a(f)||(c=1/0,f=-1/0,n.forEach(function(t){a(t)&&(c>t&&(c=+t),t>f&&(f=+t))}),c>f&&(c=0,f=1),l.set(c),u.set(f),i.Lib.nestedProperty(e,r+\"cmin\").set(c),i.Lib.nestedProperty(e,r+\"cmax\").set(f)),i.Colorscale.makeScaleFunction(o,c,f)):i.Lib.identity};var u={start:1,end:-1,middle:0,bottom:1,top:-1},c=1.3;n.textPointStyle=function(t,e){t.each(function(t){var r=d3.select(this);if(!t.tx)return void r.remove();var o=t.tp||e.textposition,s=-1!==o.indexOf(\"top\")?\"top\":-1!==o.indexOf(\"bottom\")?\"bottom\":\"middle\",l=-1!==o.indexOf(\"left\")?\"end\":-1!==o.indexOf(\"right\")?\"start\":\"middle\",f=t.ts||e.textfont.size,h=t.mrc?t.mrc/.8+1:0;f=a(f)&&f>0?f:0,r.call(n.font,t.tf||e.textfont.family,f,t.tc||e.textfont.color).attr(\"text-anchor\",l).text(t.tx).call(i.util.convertToTspans);var d=d3.select(this.parentNode),p=r.selectAll(\"tspan.line\"),g=((p[0].length||1)-1)*c+1,v=u[l]*h,m=.75*f+u[s]*h+(u[s]-1)*g*f/2;d.attr(\"transform\",\"translate(\"+v+\",\"+m+\")\"),g>1&&p.attr({x:r.attr(\"x\"),y:r.attr(\"y\")})})};var f=.5;n.smoothopen=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\");var n,i=\"M\"+t[0],a=[];for(n=1;n<t.length-1;n++)a.push(r(t[n-1],t[n],t[n+1],e));for(i+=\"Q\"+a[0][0]+\" \"+t[1],n=2;n<t.length-1;n++)i+=\"C\"+a[n-2][1]+\" \"+a[n-1][0]+\" \"+t[n];return i+=\"Q\"+a[t.length-3][1]+\" \"+t[t.length-1]},n.smoothclosed=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\")+\"Z\";var n,i=\"M\"+t[0],a=t.length-1,o=[r(t[a],t[0],t[1],e)];for(n=1;a>n;n++)o.push(r(t[n-1],t[n],t[n+1],e));for(o.push(r(t[a-1],t[a],t[0],e)),n=1;a>=n;n++)i+=\"C\"+o[n-1][1]+\" \"+o[n][0]+\" \"+t[n];return i+=\"C\"+o[a][1]+\" \"+o[0][0]+\" \"+t[0]+\"Z\"};var h={hv:function(t,e){return\"H\"+d3.round(e[0],2)+\"V\"+d3.round(e[1],2)},vh:function(t,e){return\"V\"+d3.round(e[1],2)+\"H\"+d3.round(e[0],2)},hvh:function(t,e){return\"H\"+d3.round((t[0]+e[0])/2,2)+\"V\"+d3.round(e[1],2)+\"H\"+d3.round(e[0],2)},vhv:function(t,e){return\"V\"+d3.round((t[1]+e[1])/2,2)+\"H\"+d3.round(e[0],2)+\"V\"+d3.round(e[1],2)}},d=function(t,e){return\"L\"+d3.round(e[0],2)+\",\"+d3.round(e[1],2)};n.steps=function(t){var e=h[t]||d;return function(t){for(var r=\"M\"+d3.round(t[0][0],2)+\",\"+d3.round(t[0][1],2),n=1;n<t.length;n++)r+=e(t[n-1],t[n]);return r}},n.makeTester=function(t){var e=d3.select(\"body\").selectAll(\"#js-plotly-tester\").data([0]);e.enter().append(\"svg\").attr({id:\"js-plotly-tester\",xmlns:\"http://www.w3.org/2000/svg\",\"xmlns:xmlns:xlink\":\"http://www.w3.org/1999/xlink\"}).style({position:\"absolute\",left:\"-10000px\",top:\"-10000px\",width:\"9000px\",height:\"9000px\"});var r=e.selectAll(\".js-reference-point\").data([0]);r.enter().append(\"path\").classed(\"js-reference-point\",!0).attr(\"d\",\"M0,0H1V1H0Z\").style({\"stroke-width\":0,fill:\"black\"}),e.node()._cache||(e.node()._cache={}),t._tester=e,t._testref=r};var p=[],g=1e4;n.bBox=function(t){var e=t.attributes[\"data-bb\"];if(e&&e.value)return $.extend({},p[e.value]);var r=d3.select(\"#js-plotly-tester\"),n=r.node(),a=t.cloneNode(!0);n.appendChild(a),d3.select(a).attr({x:0,y:0,transform:\"\"});var o=a.getBoundingClientRect(),s=r.select(\".js-reference-point\").node().getBoundingClientRect();n.removeChild(a);var l={height:o.height,width:o.width,left:o.left-s.left,top:o.top-s.top,right:o.right-s.left,bottom:o.bottom-s.top};return p.length>=g&&(d3.selectAll(\"[data-bb]\").attr(\"data-bb\",null),p=[]),t.setAttribute(\"data-bb\",p.length),p.push(l),i.Lib.extendFlat(l)},n.setClipUrl=function(t,e){if(!e)return void t.attr(\"clip-path\",null);var r=\"#\"+e,n=d3.select(\"base\");n.size()&&n.attr(\"href\")&&(r=window.location.href+r),t.attr(\"clip-path\",\"url(\"+r+\")\")}},{\"./isnumeric\":619,\"./plotly\":626}],578:[function(t,e){\"use strict\";function r(t,e,r){return\"percent\"===t?Math.abs(e*r/100):\"constant\"===t?Math.abs(r):\"sqrt\"===t?Math.sqrt(Math.abs(e)):(console.log(\"unrecognized errorbar type\",t,r,e),0)}function n(t,e,r){var n={x:e.c2p(t.x),y:r.c2p(t.y)};return void 0!==t.yh&&(n.yh=r.c2p(t.yh),n.ys=r.c2p(t.ys),o(n.ys)||(n.noYS=!0,n.ys=r.c2p(t.ys,!0))),void 0!==t.xh&&(n.xh=e.c2p(t.xh),n.xs=e.c2p(t.xs),o(n.xs)||(n.noXS=!0,n.xs=e.c2p(t.xs,!0))),n}var i=e.exports={},a=t(\"./plotly\"),o=t(\"./isnumeric\");i.attributes={visible:{type:\"boolean\"},type:{type:\"enumerated\",values:[\"percent\",\"constant\",\"sqrt\",\"data\"]},symmetric:{type:\"boolean\"},array:{type:\"data_array\"},arrayminus:{type:\"data_array\"},value:{type:\"number\",min:0,dflt:10},valueminus:{type:\"number\",min:0,dflt:10},traceref:{type:\"integer\",min:0,dflt:0},tracerefminus:{type:\"integer\",min:0,dflt:0},copy_ystyle:{type:\"boolean\"},copy_zstyle:{type:\"boolean\"},color:{type:\"color\"},thickness:{type:\"number\",min:0,dflt:2},width:{type:\"number\",min:0}},i.supplyDefaults=function(t,e,r,n){function s(t,e){return a.Lib.coerce(c,u,i.attributes,t,e)}var l=\"error_\"+n.axis,u=e[l]={},c=t[l]||{},f=s(\"visible\",\"array\"in c||\"value\"in c);if(f){var h=s(\"type\",\"array\"in c?\"data\":\"percent\"),d=!0;if(\"sqrt\"!==h&&(d=s(\"symmetric\",!((\"data\"===h?\"arrayminus\":\"valueminus\")in c))),\"data\"===h){var p=s(\"array\");if(p||(u.array=[]),s(\"traceref\"),!d){var g=s(\"arrayminus\");g||(u.arrayminus=[]),s(\"tracerefminus\")}}else(\"percent\"===h||\"constant\"===h)&&(s(\"value\"),d||s(\"valueminus\"));var v=\"copy_\"+n.inherit+\"style\";if(n.inherit){var m=e[\"error_\"+n.inherit];(m||{}).visible&&s(v,!(c.color||o(c.thickness)||o(c.width)))}n.inherit&&u[v]||(s(\"color\",r),s(\"thickness\"),s(\"width\",a.Plots.traceIs(e,\"gl3d\")?0:4))}},i.pushRef2GDC=function(t,e,r,n){function i(e){var r=t.data[e][l];r[\"tracerefminus\"===u?\"arrayminus\":\"array\"]=f}var a,o=!1,s=r.split(\".\"),l=s[0],u=s[1],c=l.charAt(l.length-1);\"type\"===u?(\"various\"===e&&(o=!0,e=0),a=Number(t.calcdata[Number(e)][0].trace[\"error_\"+c].traceref)||0):(\"traceref\"===u||\"tracerefminus\"===u)&&(\"various\"===e&&(o=!0),a=Number(n)||0);var f=t.data[a][c].map(Number);if(o)for(var h=0;h<t.data.length;h++)i(h);else i(Number(e))},i.calc=function(t){(t.calcdata||[]).forEach(function(e){var n=e[0].trace;if(a.Plots.traceIs(n,\"errorBarsOK\")){var i=n.error_x||{},s=n.error_y||{},l=a.Axes.getFromId(t,n.xaxis),u=a.Axes.getFromId(t,n.yaxis),c=i.visible&&-1!==[\"linear\",\"log\"].indexOf(l.type),f=s.visible&&-1!==[\"linear\",\"log\"].indexOf(u.type);if(c||f){var h=[],d=[];e.forEach(function(t,e){try{o(u.c2l(t.y))&&o(l.c2l(t.x))&&[{letter:\"x\",obj:i,visible:c,vals:h},{letter:\"y\",obj:s,visible:f,vals:d}].forEach(function(n){if(n.visible){var i,a,s=t[n.letter],l=n.obj;if(\"data\"===n.obj.type?(i=Number(l.array[e]),a=!l.symmetric&&\"arrayminus\"in l?Number(l.arrayminus[e]):i):(i=r(l.type,s,l.value),a=!l.symmetric&&\"valueminus\"in l?r(l.type,s,l.valueminus):i),o(i)&&o(a)){var u=t[n.letter+\"h\"]=s+i,c=t[n.letter+\"s\"]=s-a;n.vals.push(u,c)}}})}catch(t){console.log(t)}}),a.Axes.expand(u,d,{padded:!0}),a.Axes.expand(l,h,{padded:!0})}}})},i.plot=function(t,e,r){var i=e.x(),s=e.y();e.plot.select(\".errorlayer\").selectAll(\"g.errorbars\").remove();var l;e.plot.select(\".errorlayer\").selectAll(\"g.errorbars\").data(r).enter().append(\"g\").attr(\"class\",\"errorbars\").each(function(t){var e=t[0].trace,r=e.error_x,u=e.error_y,c=a.Scatter.hasMarkers(e)&&e.marker.maxdisplayed>0;(u.visible||r.visible)&&d3.select(this).selectAll(\"g\").data(a.Lib.identity).enter().append(\"g\").each(function(t){l=n(t,i,s);var e,a=d3.select(this);if(!c||t.vis){if(u.visible&&o(l.x)&&o(l.yh)&&o(l.ys)){var f=u.width;e=\"M\"+(l.x-f)+\",\"+l.yh+\"h\"+2*f+\"m-\"+f+\",0V\"+l.ys,l.noYS||(e+=\"m-\"+f+\",0h\"+2*f),a.append(\"path\").classed(\"yerror\",!0).attr(\"d\",e)}if(r.visible&&o(l.y)&&o(l.xh)&&o(l.xs)){var h=(r.copy_ystyle?u:r).width;e=\"M\"+l.xh+\",\"+(l.y-h)+\"v\"+2*h+\"m0,-\"+h+\"H\"+l.xs,l.noXS||(e+=\"m0,-\"+h+\"v\"+2*h),a.append(\"path\").classed(\"xerror\",!0).attr(\"d\",e)}}})})},i.style=function(t){d3.select(t).selectAll(\"g.errorbars\").each(function(t){var e=d3.select(this),r=t[0].trace,n=r.error_y||{},i=r.error_x||{};e.selectAll(\"g path.yerror\").style(\"stroke-width\",n.thickness+\"px\").call(a.Color.stroke,n.color),i.copy_ystyle&&(i=n),e.selectAll(\"g path.xerror\").style(\"stroke-width\",i.thickness+\"px\").call(a.Color.stroke,i.color)})},i.hoverInfo=function(t,e,r){e.error_y.visible&&(r.yerr=t.yh-t.y,e.error_y.symmetric||(r.yerrneg=t.y-t.ys)),e.error_x.visible&&(r.xerr=t.xh-t.x,e.error_x.symmetric||(r.xerrneg=t.x-t.xs))}},{\"./isnumeric\":619,\"./plotly\":626}],579:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n=e.exports={};r.Plots.register(n,\"choropleth\",[\"geo\",\"noOpacity\"]);var i=r.ScatterGeo.attributes,a=i.marker.line,o=r.Colorbar.traceColorbarAttributes;n.attributes={locations:{type:\"data_array\"},locationmode:i.locationmode,z:{type:\"data_array\"},text:{type:\"data_array\"},marker:{line:{color:a.color,width:a.width}},zauto:o.zauto,zmin:o.zmin,zmax:o.zmax,colorscale:o.colorscale,autocolorscale:{type:\"boolean\",dflt:!0},reversescale:o.reversescale,showscale:o.showscale,_nestedModules:{colorbar:\"Colorbar\"}},n.supplyDefaults=function(t,e,i,a){function o(i,a){return r.Lib.coerce(t,e,n.attributes,i,a)}var s,l,u;return s=o(\"locations\"),s&&(l=s.length),s&&l?(u=o(\"z\"),Array.isArray(u)?(u.length>l&&(e.z=u.slice(0,l)),o(\"locationmode\"),o(\"text\"),o(\"marker.line.color\"),o(\"marker.line.width\"),void r.Colorscale.handleDefaults(t,e,a,o,{prefix:\"\",cLetter:\"z\"})):void(e.visible=!1)):void(e.visible=!1)},n.colorbar=r.Colorbar.traceColorbar,n.calc=function(t,e){r.Colorscale.calc(e,e.z,\"\",\"z\")}},{\"../../plotly\":626}],580:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n=t(\"../lib/params\"),i=e.exports={};i.layoutAttributes={range:[{type:\"number\"},{type:\"number\"}],showgrid:{type:\"boolean\",dflt:!1},tick0:{type:\"number\"},dtick:{type:\"number\"},gridcolor:{type:\"color\",dflt:r.Color.lightLine},gridwidth:{type:\"number\",min:0,dflt:1}},i.supplyLayoutDefaults=function(t,e){function a(t,e){return r.Lib.coerce(s,l,i.layoutAttributes,t,e)\n",
"}function o(t){var r,i,a,o,s,l,u=e.scope;return\"world\"===u?(r=e.projection,i=r.type,a=r.rotation,s=n[t+\"Span\"],l=void 0!==s[i]?s[i]/2:s[\"*\"]/2,o=\"lonaxis\"===t?a.lon:a.lat,[o-l,o+l]):n.scopeDefaults[u][t+\"Range\"]}for(var s,l,u,c,f,h,d=n.axesNames,p=0;p<d.length;p++)u=d[p],s=t[u]||{},l={},c=o(u),f=a(\"range[0]\",c[0]),a(\"range[1]\",c[1]),r.Lib.noneOrAll(s.range,l.range,[0,1]),a(\"tick0\",f),a(\"dtick\",\"lonaxis\"===u?30:10),h=a(\"showgrid\"),h&&(a(\"gridcolor\"),a(\"gridwidth\")),e[u]=l,e[u]._fullRange=c}},{\"../../plotly\":626,\"../lib/params\":585}],581:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n=t(\"../lib/params\"),i=e.exports={};i.layoutAttributes={domain:{x:[{type:\"number\",min:0,max:1,dflt:0},{type:\"number\",min:0,max:1,dflt:1}],y:[{type:\"number\",min:0,max:1},{type:\"number\",min:0,max:1}]},resolution:{type:\"enumerated\",values:[110,50],dflt:110,coerceNumber:!0},scope:{type:\"enumerated\",values:Object.keys(n.scopeDefaults),dflt:\"world\"},projection:{type:{type:\"enumerated\",values:Object.keys(n.projNames)},rotation:{lon:{type:\"number\"},lat:{type:\"number\"},roll:{type:\"number\"}},parallels:[{type:\"number\"},{type:\"number\"}],scale:{type:\"number\",min:0,max:10,dflt:1}},showcoastlines:{type:\"boolean\"},coastlinecolor:{type:\"color\",dflt:r.Color.defaultLine},coastlinewidth:{type:\"number\",min:0,dflt:1},showland:{type:\"boolean\",dflt:!1},landcolor:{type:\"color\",dflt:n.landColor},showocean:{type:\"boolean\",dflt:!1},oceancolor:{type:\"color\",dflt:n.waterColor},showlakes:{type:\"boolean\",dflt:!1},lakecolor:{type:\"color\",dflt:n.waterColor},showrivers:{type:\"boolean\",dflt:!1},rivercolor:{type:\"color\",dflt:n.waterColor},riverwidth:{type:\"number\",min:0,dflt:1},showcountries:{type:\"boolean\"},countrycolor:{type:\"color\",dflt:r.Color.defaultLine},countrywidth:{type:\"number\",min:0,dflt:1},showsubunits:{type:\"boolean\"},subunitcolor:{type:\"color\",dflt:r.Color.defaultLine},subunitwidth:{type:\"number\",min:0,dflt:1},showframe:{type:\"boolean\"},framecolor:{type:\"color\",dflt:r.Color.defaultLine},framewidth:{type:\"number\",min:0,dflt:1},bgcolor:{type:\"color\",dflt:r.Color.background},_nestedModules:{lonaxis:\"GeoAxes\",lataxis:\"GeoAxes\"}},i.supplyLayoutDefaults=function(t,e,n){function a(t,e){return r.Lib.coerce(s,l,i.layoutAttributes,t,e)}for(var o,s,l,u=r.Plots.getSubplotIdsInData(n,\"geo\"),c=u.length,f=0;c>f;f++)o=u[f],s=t[o]||{},l={},a(\"domain.x[0]\"),a(\"domain.x[1]\"),a(\"domain.y[0]\",f/c),a(\"domain.y[1]\",(f+1)/c),i.handleGeoDefaults(s,l,a),e[o]=l},i.handleGeoDefaults=function(t,e,i){var a,o,s,l,u,c,f,h,d,p;a=i(\"scope\"),f=\"world\"!==a,l=n.scopeDefaults[a],o=i(\"resolution\"),s=i(\"projection.type\",l.projType),h=\"albers usa\"===s,d=-1!==s.indexOf(\"conic\"),d&&(c=l.projParallels||[0,60],i(\"projection.parallels[0]\",c[0]),i(\"projection.parallels[1]\",c[1])),h?e.scope=\"usa\":(u=l.projRotate||[0,0,0],i(\"projection.rotation.lon\",u[0]),i(\"projection.rotation.lat\",u[1]),i(\"projection.rotation.roll\",u[2]),p=i(\"showcoastlines\",!f),p&&(i(\"coastlinecolor\"),i(\"coastlinewidth\")),p=i(\"showocean\"),p&&i(\"oceancolor\")),i(\"projection.scale\"),p=i(\"showland\"),p&&i(\"landcolor\"),p=i(\"showlakes\"),p&&i(\"lakecolor\"),p=i(\"showrivers\"),p&&(i(\"rivercolor\"),i(\"riverwidth\")),p=i(\"showcountries\",f),p&&(i(\"countrycolor\"),i(\"countrywidth\")),(\"usa\"===a||\"north america\"===a&&50===o)&&(i(\"showsubunits\",!0),i(\"subunitcolor\"),i(\"subunitwidth\")),f||(p=i(\"showframe\",!0),p&&(i(\"framecolor\"),i(\"framewidth\"))),i(\"bgcolor\"),r.GeoAxes.supplyLayoutDefaults(t,e),e._isHighRes=50===o,e._clipAngle=n.lonaxisSpan[s]/2,e._isAlbersUsa=h,e._isConic=d,e._isScoped=f;var g=e.projection.rotation||{};e.projection._rotate=[-g.lon||0,-g.lat||0,g.roll||0]}},{\"../../plotly\":626,\"../lib/params\":585}],582:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n=e.exports={};r.Plots.register(n,\"scattergeo\",[\"geo\",\"symbols\",\"markerColorscale\",\"showLegend\"]);var i=r.Scatter.attributes,a=i.marker,o=i.line,s=a.line,l=r.Lib.extendFlat;n.attributes={lon:{type:\"data_array\"},lat:{type:\"data_array\"},locations:{type:\"data_array\"},locationmode:{type:\"enumerated\",values:[\"ISO-3\",\"USA-states\",\"country names\"],dflt:\"ISO-3\"},mode:l(i.mode,{dflt:\"markers\"}),text:i.text,line:{color:o.color,width:o.width,dash:o.dash},marker:{symbol:a.symbol,opacity:a.opacity,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,color:a.color,colorscale:a.colorscale,cauto:a.cauto,cmax:a.cmax,cmin:a.cmin,autocolorscale:a.autocolorscale,reversescale:a.reversescale,showscale:a.showscale,line:{color:s.color,width:s.width,colorscale:s.colorscale,cauto:s.cauto,cmax:s.cmax,cmin:s.cmin,autocolorscale:s.autocolorscale,reversescale:s.reversescale}},textfont:i.textfont,textposition:i.textposition,_nestedModules:{\"marker.colorbar\":\"Colorbar\"}},n.supplyDefaults=function(t,e,i,a){function o(i,a){return r.Lib.coerce(t,e,n.attributes,i,a)}var s=r.Scatter,l=n.handleLonLatLocDefaults(t,e,o);return l?(o(\"text\"),o(\"mode\"),s.hasLines(e)&&s.lineDefaults(t,e,i,o),s.hasMarkers(e)&&s.markerDefaults(t,e,i,a,o),void(s.hasText(e)&&s.textDefaults(t,e,a,o))):void(e.visible=!1)},n.handleLonLatLocDefaults=function(t,e,r){var n,i,a=0,o=r(\"locations\");return o?(r(\"locationmode\"),a=o.length):(n=r(\"lon\")||[],i=r(\"lat\")||[],a=Math.min(n.length,i.length),a<n.length&&(e.lon=n.slice(0,a)),a<i.length&&(e.lat=i.slice(0,a)),a)},n.colorbar=r.Scatter.colorbar,n.calc=function(t,e){r.Scatter.calcMarkerColorscales(e)}},{\"../../plotly\":626}],583:[function(t,e){\"use strict\";function r(t,e){this.id=t.id,this.container=t.container,u(),this.showHover=\"closest\"===e.hovermode,this.hoverContainer=null,this.topojsonName=null,this.topojson=null,this.projectionType=null,this.projection=null,this.clipAngle=null,this.setScale=null,this.path=null,this.zoom=null,this.zoomReset=null,this.makeFramework()}function n(t,e,r){return d3.geo.graticule().extent([[t[0],e[0]],[t[1],e[1]]]).step(r)}function i(t,e,r){var n=l.layerNameToAdjective[e];t.select(\".\"+e).selectAll(\"path\").attr(\"stroke\",\"none\").call(s.Color.fill,r[n+\"color\"])}function a(t,e,r){var n=l.layerNameToAdjective[e];t.select(\".\"+e).selectAll(\"path\").attr(\"fill\",\"none\").call(s.Color.stroke,r[n+\"color\"]).call(s.Drawing.dashLine,\"\",r[n+\"width\"])}function o(t,e,r){t.select(\".\"+e+\"graticule\").selectAll(\"path\").attr(\"fill\",\"none\").call(s.Color.stroke,r[e].gridcolor).call(s.Drawing.dashLine,\"\",r[e].gridwidth)}var s=t(\"../plotly\"),l=t(\"./lib/params\"),u=t(\"./lib/projections\"),c=t(\"./lib/set-scale\"),f=t(\"./lib/zoom\"),h=t(\"./lib/zoom-reset\"),d=t(\"./plot/scattergeo\"),p=t(\"./plot/choropleth\"),g=t(\"./lib/topojson-utils\"),v=t(\"topojson\").feature;e.exports=r;var m=r.prototype;m.plot=function(t,e){var r,n,i=this,a=e[i.id],o=e._size;i.projection=null,i.setScale=c(a,o),i.makeProjection(a),i.makePath(),i.adjustLayout(a,o),i.zoom=f(i,a),i.zoomReset=h(i,a),i.framework.call(i.zoom).on(\"dblclick\",i.zoomReset),r=g.getTopojsonName(a),null===i.topojson||r!==i.topojsonName?(i.topojsonName=r,void 0!==PlotlyGeoAssets.topojsons[i.topojsonName]?(i.topojson=PlotlyGeoAssets.topojsons[i.topojsonName],i.onceTopojsonIsLoaded(t,a)):(n=g.getTopojsonPath(i.topojsonName),d3.json(n,function(e,r){i.topojson=r,PlotlyGeoAssets.topojsons[i.topojsonName]=r,i.onceTopojsonIsLoaded(t,a)}))):i.onceTopojsonIsLoaded(t,a)},m.onceTopojsonIsLoaded=function(t,e){var r,n,i=[],a=[];this.drawLayout(e);for(var o=0;o<t.length;o++)r=t[o],n=r.type,\"scattergeo\"===r.type?i.push(r):\"choropleth\"===r.type&&a.push(r);i.length>0&&d.plot(this,i),a.length>0&&p.plot(this,a,e),this.render()},m.makeProjection=function(t){var e,r=t.projection,n=r.type,i=null===this.projection||n!==this.projectionType;i?(this.projectionType=n,e=this.projection=d3.geo[l.projNames[n]]()):e=this.projection,e.translate(r._translate0).precision(l.precision),t._isAlbersUsa||e.rotate(r._rotate).center(r._center),t._clipAngle?(this.clipAngle=t._clipAngle,e.clipAngle(t._clipAngle-l.clipPad)):this.clipAngle=null,r.parallels&&e.parallels(r.parallels),i&&this.setScale(e),e.translate(r._translate).scale(r._scale)},m.makePath=function(){this.path=d3.geo.path().projection(this.projection)},m.makeFramework=function(){var t=this.geoDiv=d3.select(this.container).append(\"div\");t.attr(\"id\",this.id).style(\"position\",\"absolute\");var e=this.hoverContainer=t.append(\"svg\");e.attr({xmlns:\"http://www.w3.org/2000/svg\",\"xmlns:xmlns:xlink\":\"http://www.w3.org/1999/xlink\"}).style({position:\"absolute\",\"z-index\":20,\"pointer-events\":\"none\"});var r=this.framework=t.append(\"svg\");r.attr({xmlns:\"http://www.w3.org/2000/svg\",\"xmlns:xmlns:xlink\":\"http://www.w3.org/1999/xlink\",position:\"absolute\",preserveAspectRatio:\"none\"}),r.append(\"g\").attr(\"class\",\"bglayer\").append(\"rect\"),r.append(\"g\").attr(\"class\",\"baselayer\"),r.append(\"g\").attr(\"class\",\"choroplethlayer\"),r.append(\"g\").attr(\"class\",\"baselayeroverchoropleth\"),r.append(\"g\").attr(\"class\",\"scattergeolayer\"),r.on(\"dblclick.zoom\",null)},m.adjustLayout=function(t,e){var r=t.domain;this.geoDiv.style({left:e.l+e.w*r.x[0]+t._marginX+\"px\",top:e.t+e.h*(1-r.y[1])+t._marginY+\"px\",width:t._width+\"px\",height:t._height+\"px\"}),this.hoverContainer.attr({width:t._width,height:t._height}),this.framework.attr({width:t._width,height:t._height}),this.framework.select(\".bglayer\").select(\"rect\").attr({width:t._width,height:t._height}).style({fill:t.bgcolor,\"stroke-width\":0})},m.drawTopo=function(t,e,r){if(r[\"show\"+e]===!0){var n=this.topojson,i=\"frame\"===e?l.sphereSVG:v(n,n.objects[e]);t.append(\"g\").datum(i).attr(\"class\",e).append(\"path\").attr(\"class\",\"basepath\")}},m.drawGraticule=function(t,e,r){var i=r[e];if(i.showgrid===!0){var a=l.scopeDefaults[r.scope],o=a.lonaxisRange,s=a.lataxisRange,u=\"lonaxis\"===e?[i.dtick]:[0,i.dtick],c=n(o,s,u);t.append(\"g\").datum(c).attr(\"class\",e+\"graticule\").append(\"path\").attr(\"class\",\"graticulepath\")}},m.drawLayout=function(t){var e,r=this.framework.select(\"g.baselayer\"),n=l.baseLayers,i=l.axesNames;r.selectAll(\"*\").remove();for(var a=0;a<n.length;a++)e=n[a],-1!==i.indexOf(e)?this.drawGraticule(r,e,t):this.drawTopo(r,e,t);this.styleLayout(t)},m.styleLayer=function(t,e,r){var n=l.fillLayers,o=l.lineLayers;-1!==n.indexOf(e)?i(t,e,r):-1!==o.indexOf(e)&&a(t,e,r)},m.styleLayout=function(t){for(var e,r=this.framework.select(\"g.baselayer\"),n=l.baseLayers,i=l.axesNames,a=0;a<n.length;a++)e=n[a],-1!==i.indexOf(e)?o(r,e,t):this.styleLayer(r,e,t)},m.render=function(){function t(t){var e=a([t.lon,t.lat]);return e?\"translate(\"+e[0]+\",\"+e[1]+\")\":null}function e(t){var e=a.rotate(),r=d3.geo.distance([t.lon,t.lat],[-e[0],-e[1]]),n=s*Math.PI/180;return r>n?\"0\":\"1.0\"}var r=this.framework,n=r.select(\"g.choroplethlayer\"),i=r.select(\"g.scattergeolayer\"),a=this.projection,o=this.path,s=this.clipAngle;r.selectAll(\"path.basepath\").attr(\"d\",o),r.selectAll(\"path.graticulepath\").attr(\"d\",o),n.selectAll(\"path.choroplethlocation\").attr(\"d\",o),n.selectAll(\"path.basepath\").attr(\"d\",o),i.selectAll(\"path.js-line\").attr(\"d\",o),null!==s?(i.selectAll(\"path.point\").style(\"opacity\",e).attr(\"transform\",t),i.selectAll(\"text\").style(\"opacity\",e).attr(\"transform\",t)):(i.selectAll(\"path.point\").attr(\"transform\",t),i.selectAll(\"text\").attr(\"transform\",t))}},{\"../plotly\":626,\"./lib/params\":585,\"./lib/projections\":586,\"./lib/set-scale\":587,\"./lib/topojson-utils\":588,\"./lib/zoom\":590,\"./lib/zoom-reset\":589,\"./plot/choropleth\":591,\"./plot/scattergeo\":592,topojson:567}],584:[function(t,e){\"use strict\";function r(t){for(var e,r,n=0;n<a.length;n++)if(e=a[n],r=new RegExp(e.regex),r.test(t.toLowerCase()))return e.iso3;console.warn(\"unrecognized country name \"+t)}var n=e.exports={},i=t(\"../../plotly\"),a=t(\"../raw/country-name_to_iso3.json\"),o={\"ISO-3\":i.Lib.identity,\"USA-states\":i.Lib.identity,\"country names\":r};n.locationToId=function(t,e){var r=o[t];return r(e)}},{\"../../plotly\":626,\"../raw/country-name_to_iso3.json\":593}],585:[function(t,e){\"use strict\";var r=e.exports={};r.projNames={equirectangular:\"equirectangular\",mercator:\"mercator\",orthographic:\"orthographic\",\"natural earth\":\"naturalEarth\",kavrayskiy7:\"kavrayskiy7\",miller:\"miller\",robinson:\"robinson\",eckert4:\"eckert4\",\"azimuthal equal area\":\"azimuthalEqualArea\",\"azimuthal equidistant\":\"azimuthalEquidistant\",\"conic equal area\":\"conicEqualArea\",\"conic conformal\":\"conicConformal\",\"conic equidistant\":\"conicEquidistant\",gnomonic:\"gnomonic\",stereographic:\"stereographic\",mollweide:\"mollweide\",hammer:\"hammer\",\"transverse mercator\":\"transverseMercator\",\"albers usa\":\"albersUsa\"},r.axesNames=[\"lonaxis\",\"lataxis\"],r.lonaxisSpan={orthographic:180,\"azimuthal equal area\":360,\"azimuthal equidistant\":360,\"conic conformal\":180,gnomonic:160,stereographic:180,\"transverse mercator\":180,\"*\":360},r.lataxisSpan={\"conic conformal\":150,stereographic:179.5,\"*\":180},r.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:\"equirectangular\",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:\"albers usa\"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,80],projType:\"conic conformal\",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:\"mercator\",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:\"mercator\",projRotate:[0,0,0]},\"north america\":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:\"conic conformal\",projRotate:[-100,0,0],projParallels:[29.5,45.5]},\"south america\":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:\"mercator\",projRotate:[0,0,0]}},r.clipPad=.001,r.precision=.1,r.landColor=\"#F0DC82\",r.waterColor=\"#3399FF\",r.locationmodeToLayer={\"ISO-3\":\"countries\",\"USA-states\":\"subunits\",\"country names\":\"countries\"},r.sphereSVG={type:\"Sphere\"},r.fillLayers=[\"ocean\",\"land\",\"lakes\"],r.lineLayers=[\"subunits\",\"countries\",\"coastlines\",\"rivers\",\"frame\"],r.baseLayers=[\"ocean\",\"land\",\"lakes\",\"subunits\",\"countries\",\"coastlines\",\"rivers\",\"lataxis\",\"lonaxis\",\"frame\"],r.layerNameToAdjective={ocean:\"ocean\",land:\"land\",lakes:\"lake\",subunits:\"subunit\",countries:\"country\",coastlines:\"coastline\",rivers:\"river\",frame:\"frame\"},r.baseLayersOverChoropleth=[\"rivers\",\"lakes\"]},{}],586:[function(t,e){function r(){function t(t,r){return{type:\"Feature\",id:t.id,properties:t.properties,geometry:e(t.geometry,r)}}function e(t,r){if(!t)return null;if(\"GeometryCollection\"===t.type)return{type:\"GeometryCollection\",geometries:object.geometries.map(function(t){return e(t,r)})};if(!k.hasOwnProperty(t.type))return null;var n=k[t.type];return d3.geo.stream(t,r(n)),n.result()}function r(){}function n(t){if((e=t.length)<4)return!1;for(var e,r=0,n=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];++r<e;)n+=t[r-1][1]*t[r][0]-t[r-1][0]*t[r][1];return 0>=n}function i(t,e){for(var r=e[0],n=e[1],i=!1,a=0,o=t.length,s=o-1;o>a;s=a++){var l=t[a],u=l[0],c=l[1],f=t[s],h=f[0],d=f[1];c>n^d>n&&(h-u)*(n-c)/(d-c)+u>r&&(i=!i)}return i}function a(t){return t>1?E:-1>t?-E:Math.asin(t)}function o(t,e){var r=(2+E)*Math.sin(e);e/=2;for(var n=0,i=1/0;10>n&&Math.abs(i)>A;n++){var a=Math.cos(e);e-=i=(e+Math.sin(e)*(a+2)-r)/(2*a*(1+a))}return[2/Math.sqrt(L*(4+L))*t*(1+Math.cos(e)),2*Math.sqrt(L/(4+L))*Math.sin(e)]}function s(t,e){function r(r,n){var i=z(r/e,n);return i[0]*=t,i}return arguments.length<2&&(e=t),1===e?z:1/0===e?u:(r.invert=function(r,n){var i=z.invert(r/t,n);return i[0]*=e,i},r)}function l(){var t=2,e=T(s),r=e(t);return r.coefficient=function(r){return arguments.length?e(t=+r):t},r}function u(t,e){return[t*Math.cos(e)/Math.cos(e/=2),2*Math.sin(e)]}function c(t,e){return[3*t/(2*L)*Math.sqrt(L*L/3-e*e),e]}function f(t,e){return[t,1.25*Math.log(Math.tan(L/4+.4*e))]}function h(t){return function(e){var r,n=t*Math.sin(e),i=30;do e-=r=(e+Math.sin(e)-n)/(1+Math.cos(e));while(Math.abs(r)>A&&--i>0);return e/2}}function d(t,e,r){function n(r,n){return[t*r*Math.cos(n=i(n)),e*Math.sin(n)]}var i=h(r);return n.invert=function(n,i){var o=a(i/e);return[n/(t*Math.cos(o)),a((2*o+Math.sin(2*o))/r)]},n}function p(t,e){var r=e*e,n=r*r;return[t*(.8707-.131979*r+n*(-.013791+n*(.003971*r-.001529*n))),e*(1.007226+r*(.015085+n*(-.044475+.028874*r-.005916*n)))]}function g(t,e){var r,n=Math.min(18,36*Math.abs(e)/L),i=Math.floor(n),a=n-i,o=(r=I[i])[0],s=r[1],l=(r=I[++i])[0],u=r[1],c=(r=I[Math.min(19,++i)])[0],f=r[1];return[t*(l+a*(c-o)/2+a*a*(c-2*l+o)/2),(e>0?E:-E)*(u+a*(f-s)/2+a*a*(f-2*u+s)/2)]}function v(t,e){return[t*Math.cos(e),e]}d3.geo.project=function(t,r){var n=r.stream;if(!n)throw new Error(\"not yet supported\");return(t&&m.hasOwnProperty(t.type)?m[t.type]:e)(t,n)};var m={Feature:t,FeatureCollection:function(e,r){return{type:\"FeatureCollection\",features:e.features.map(function(e){return t(e,r)})}}},y=[],b=[],x={point:function(t,e){y.push([t,e])},result:function(){var t=y.length?y.length<2?{type:\"Point\",coordinates:y[0]}:{type:\"MultiPoint\",coordinates:y}:null;return y=[],t}},_={lineStart:r,point:function(t,e){y.push([t,e])},lineEnd:function(){y.length&&(b.push(y),y=[])},result:function(){var t=b.length?b.length<2?{type:\"LineString\",coordinates:b[0]}:{type:\"MultiLineString\",coordinates:b}:null;return b=[],t}},w={polygonStart:r,lineStart:r,point:function(t,e){y.push([t,e])},lineEnd:function(){var t=y.length;if(t){do y.push(y[0].slice());while(++t<4);b.push(y),y=[]}},polygonEnd:r,result:function(){if(!b.length)return null;var t=[],e=[];return b.forEach(function(r){n(r)?t.push([r]):e.push(r)}),e.forEach(function(e){var r=e[0];t.some(function(t){return i(t[0],r)?(t.push(e),!0):void 0})||t.push([e])}),b=[],t.length?t.length>1?{type:\"MultiPolygon\",coordinates:t}:{type:\"Polygon\",coordinates:t[0]}:null}},k={Point:x,MultiPoint:x,LineString:_,MultiLineString:_,Polygon:w,MultiPolygon:w,Sphere:w},A=1e-6,M=A*A,L=Math.PI,E=L/2,C=(Math.sqrt(L),L/180),j=180/L,S=d3.geo.projection,T=d3.geo.projectionMutator;d3.geo.interrupt=function(t){function e(e,r){for(var n=0>r?-1:1,i=s[+(0>r)],a=0,o=i.length-1;o>a&&e>i[a][2][0];++a);var l=t(e-i[a][1][0],r);return l[0]+=t(i[a][1][0],n*r>n*i[a][0][1]?i[a][0][1]:r)[0],l}function r(){o=s.map(function(e){return e.map(function(e){var r,n=t(e[0][0],e[0][1])[0],i=t(e[2][0],e[2][1])[0],a=t(e[1][0],e[0][1])[1],o=t(e[1][0],e[1][1])[1];return a>o&&(r=a,a=o,o=r),[[n,a],[i,o]]})})}function n(){for(var t=1e-6,e=[],r=0,n=s[0].length;n>r;++r){var a=s[0][r],o=180*a[0][0]/L,l=180*a[0][1]/L,u=180*a[1][1]/L,c=180*a[2][0]/L,f=180*a[2][1]/L;e.push(i([[o+t,l+t],[o+t,u-t],[c-t,u-t],[c-t,f+t]],30))}for(var r=s[1].length-1;r>=0;--r){var a=s[1][r],o=180*a[0][0]/L,l=180*a[0][1]/L,u=180*a[1][1]/L,c=180*a[2][0]/L,f=180*a[2][1]/L;e.push(i([[c-t,f-t],[c-t,u+t],[o+t,u+t],[o+t,l-t]],30))}return{type:\"Polygon\",coordinates:[d3.merge(e)]}}function i(t,e){for(var r,n,i,a=-1,o=t.length,s=t[0],l=[];++a<o;){r=t[a],n=(r[0]-s[0])/e,i=(r[1]-s[1])/e;for(var u=0;e>u;++u)l.push([s[0]+u*n,s[1]+u*i]);s=r}return l.push(r),l}function a(t,e){return Math.abs(t[0]-e[0])<A&&Math.abs(t[1]-e[1])<A}var o,s=[[[[-L,0],[0,E],[L,0]]],[[[-L,0],[0,-E],[L,0]]]];t.invert&&(e.invert=function(r,n){for(var i=o[+(0>n)],l=s[+(0>n)],u=0,c=i.length;c>u;++u){var f=i[u];if(f[0][0]<=r&&r<f[1][0]&&f[0][1]<=n&&n<f[1][1]){var h=t.invert(r-t(l[u][1][0],0)[0],n);return h[0]+=l[u][1][0],a(e(h[0],h[1]),[r,n])?h:null}}});var l=d3.geo.projection(e),u=l.stream;return l.stream=function(t){var e=l.rotate(),r=u(t),i=(l.rotate([0,0]),u(t));return l.rotate(e),r.sphere=function(){d3.geo.stream(n(),i)},r},l.lobes=function(t){return arguments.length?(s=t.map(function(t){return t.map(function(t){return[[t[0][0]*L/180,t[0][1]*L/180],[t[1][0]*L/180,t[1][1]*L/180],[t[2][0]*L/180,t[2][1]*L/180]]})}),r(),l):s.map(function(t){return t.map(function(t){return[[180*t[0][0]/L,180*t[0][1]/L],[180*t[1][0]/L,180*t[1][1]/L],[180*t[2][0]/L,180*t[2][1]/L]]})})},l},o.invert=function(t,e){var r=.5*e*Math.sqrt((4+L)/L),n=a(r),i=Math.cos(n);return[t/(2/Math.sqrt(L*(4+L))*(1+i)),a((n+r*(i+2))/(2+E))]},(d3.geo.eckert4=function(){return S(o)}).raw=o;var z=d3.geo.azimuthalEqualArea.raw;u.invert=function(t,e){var r=2*a(e/2);return[t*Math.cos(r/2)/Math.cos(r),r]},(d3.geo.hammer=l).raw=s,c.invert=function(t,e){return[2/3*L*t/Math.sqrt(L*L/3-e*e),e]},(d3.geo.kavrayskiy7=function(){return S(c)}).raw=c,f.invert=function(t,e){return[t,2.5*Math.atan(Math.exp(.8*e))-.625*L]},(d3.geo.miller=function(){return S(f)}).raw=f;var P=(h(L),d(Math.SQRT2/E,Math.SQRT2,L));(d3.geo.mollweide=function(){return S(P)}).raw=P,p.invert=function(t,e){var r,n=e,i=25;do{var a=n*n,o=a*a;n-=r=(n*(1.007226+a*(.015085+o*(-.044475+.028874*a-.005916*o)))-e)/(1.007226+a*(.045255+o*(-0.311325+.259866*a-.005916*11*o)))}while(Math.abs(r)>A&&--i>0);return[t/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]},(d3.geo.naturalEarth=function(){return S(p)}).raw=p;var I=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];I.forEach(function(t){t[1]*=1.0144}),g.invert=function(t,e){var r=e/E,n=90*r,i=Math.min(18,Math.abs(n/5)),a=Math.max(0,Math.floor(i));do{var o=I[a][1],s=I[a+1][1],l=I[Math.min(19,a+2)][1],u=l-o,c=l-2*s+o,f=2*(Math.abs(r)-s)/u,h=c/u,d=f*(1-h*f*(1-2*h*f));if(d>=0||1===a){n=(e>=0?5:-5)*(d+i);var p,g=50;do i=Math.min(18,Math.abs(n)/5),a=Math.floor(i),d=i-a,o=I[a][1],s=I[a+1][1],l=I[Math.min(19,a+2)][1],n-=(p=(e>=0?E:-E)*(s+d*(l-o)/2+d*d*(l-2*s+o)/2)-e)*j;while(Math.abs(p)>M&&--g>0);break}}while(--a>=0);var v=I[a][0],m=I[a+1][0],y=I[Math.min(19,a+2)][0];return[t/(m+d*(y-v)/2+d*d*(y-2*m+v)/2),n*C]},(d3.geo.robinson=function(){return S(g)}).raw=g,v.invert=function(t,e){return[t/Math.cos(e),e]},(d3.geo.sinusoidal=function(){return S(v)}).raw=v}e.exports=r},{}],587:[function(t,e){\"use strict\";function r(t,e){var r=t.projection,o=t.lonaxis,s=t.lataxis,l=t.domain,u=t.framewidth||0,c=e.w*(l.x[1]-l.x[0]),f=e.h*(l.y[1]-l.y[0]),h=o.range[0]+a,d=o.range[1]-a,p=s.range[0]+a,g=s.range[1]-a,v=o._fullRange[0]+a,m=o._fullRange[1]-a,y=s._fullRange[0]+a,b=s._fullRange[1]-a;r._translate0=[e.l+c/2,e.t+f/2];var x=d-h,_=g-p,w=[h+x/2,p+_/2],k=r._rotate;r._center=[w[0]+k[0],w[1]+k[1]];var A=function(e){function a(t){return Math.min(_*c/(t[1][0]-t[0][0]),_*f/(t[1][1]-t[0][1]))}var o,s,l,x,_=e.scale(),w=r._translate0,k=n(h,p,d,g),A=n(v,y,m,b);l=i(e,k),o=a(l),x=i(e,A),r._fullScale=a(x),e.scale(o),l=i(e,k),s=[w[0]-l[0][0]+u,w[1]-l[0][1]+u],r._translate=s,e.translate(s),l=i(e,k),t._isAlbersUsa||e.clipExtent(l),o=r.scale*o,r._scale=o,t._width=Math.round(l[1][0])+u,t._height=Math.round(l[1][1])+u,t._marginX=(c-Math.round(l[1][0]))/2,t._marginY=(f-Math.round(l[1][1]))/2};return A}function n(t,e,r,n){var i=(r-t)/4;return{type:\"Polygon\",coordinates:[[[t,e],[t,n],[t+i,n],[t+2*i,n],[t+3*i,n],[r,n],[r,e],[r-i,e],[r-2*i,e],[r-3*i,e],[t,e]]]}}function i(t,e){return d3.geo.path().projection(t).bounds(e)}var a=t(\"./params\").clipPad;e.exports=r},{\"./params\":585}],588:[function(t,e){\"use strict\";var r=e.exports={},n=t(\"./params\").locationmodeToLayer,i=t(\"topojson\").feature;r.getTopojsonName=function(t){return[t.scope.replace(/ /g,\"-\"),\"_\",t.resolution.toString(),\"m\"].join(\"\")},r.getTopojsonPath=function(t){var e=window.PLOTLYENV&&window.PLOTLYENV.TOPOJSON_URL||\"./topojson/\";return e+t+\".json\"},r.extractTopojson=function(t,e){var r=n[t.locationmode],a=e.objects[r];return{features:i(e,a).features,ids:a.properties.ids}}},{\"./params\":585,topojson:567}],589:[function(t,e){\"use strict\";function r(t,e){var r=t.projection,i=t.zoom,a=function(){t.makeProjection(e),t.makePath(),i.scale(r.scale()),i.translate(r.translate()),n(t.hoverContainer),t.render()};return a}var n=t(\"../../plotly\").Fx.loneUnhover;e.exports=r},{\"../../plotly\":626}],590:[function(t,e){\"use strict\";function r(t,e){var r;return(r=e._isScoped?i:e._clipAngle?o:a)(t,e.projection)}function n(t,e){var r=e._fullScale;return d3.behavior.zoom().translate(t.translate()).scale(t.scale()).scaleExtent([.5*r,100*r])}function i(t,e){function r(){d3.select(this).style(w)}function i(){o.scale(d3.event.scale).translate(d3.event.translate),t.render()}function a(){d3.select(this).style(k)}var o=t.projection,s=n(o,e);return s.on(\"zoomstart\",r).on(\"zoom\",i).on(\"zoomend\",a),s}function a(t,e){function r(t){return v.invert(t)}function i(t){var e=v(r(t));return Math.abs(e[0]-t[0])>y||Math.abs(e[1]-t[1])>y}function a(){d3.select(this).style(w),l=d3.mouse(this),u=v.rotate(),c=v.translate(),f=u,h=r(l)}function o(){return d=d3.mouse(this),i(l)?(m.scale(v.scale()),void m.translate(v.translate())):(v.scale(d3.event.scale),v.translate([c[0],d3.event.translate[1]]),h?r(d)&&(g=r(d),p=[f[0]+(g[0]-h[0]),u[1],u[2]],v.rotate(p),f=p):(l=d,h=r(l)),void t.render())}function s(){d3.select(this).style(k)}var l,u,c,f,h,d,p,g,v=t.projection,m=n(v,e),y=2;return m.on(\"zoomstart\",a).on(\"zoom\",o).on(\"zoomend\",s),m}function o(t,e){function r(t){m++||t({type:\"zoomstart\"})}function i(t){t({type:\"zoom\"})}function a(t){--m||t({type:\"zoomend\"})}var o,h=t.projection,d={r:h.rotate(),k:h.scale()},p=n(h,e),v=b(p,\"zoomstart\",\"zoom\",\"zoomend\"),m=0,y=p.on;return p.on(\"zoomstart\",function(){d3.select(this).style(w);var t=d3.mouse(this),e=h.rotate(),n=e,a=h.translate(),m=l(e);o=s(h,t),y.call(p,\"zoom\",function(){var r=d3.mouse(this);if(h.scale(d.k=d3.event.scale),o){if(s(h,r)){h.rotate(e).translate(a);var l=s(h,r),p=c(o,l),y=g(u(m,p)),b=d.r=f(y,o,n);isFinite(b[0])&&isFinite(b[1])&&isFinite(b[2])||(b=n),h.rotate(b),n=b}}else t=r,o=s(h,t);i(v.of(this,arguments))}),r(v.of(this,arguments))}).on(\"zoomend\",function(){d3.select(this).style(k),y.call(p,\"zoom\",null),a(v.of(this,arguments))}).on(\"zoom.redraw\",function(){t.render()}),d3.rebind(p,v,\"on\")}function s(t,e){var r=t.invert(e);return r&&isFinite(r[0])&&isFinite(r[1])&&v(r)}function l(t){var e=.5*t[0]*x,r=.5*t[1]*x,n=.5*t[2]*x,i=Math.sin(e),a=Math.cos(e),o=Math.sin(r),s=Math.cos(r),l=Math.sin(n),u=Math.cos(n);return[a*s*u+i*o*l,i*s*u-a*o*l,a*o*u+i*s*l,a*s*l-i*o*u]}function u(t,e){var r=t[0],n=t[1],i=t[2],a=t[3],o=e[0],s=e[1],l=e[2],u=e[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function c(t,e){if(t&&e){var r=y(t,e),n=Math.sqrt(m(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,m(t,e)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function f(t,e,r){var n=p(e,2,t[0]);n=p(n,1,t[1]),n=p(n,0,t[2]-r[2]);var i,a,o=e[0],s=e[1],l=e[2],u=n[0],c=n[1],f=n[2],d=Math.atan2(s,o)*_,g=Math.sqrt(o*o+s*s);Math.abs(c)>g?(a=(c>0?90:-90)-d,i=0):(a=Math.asin(c/g)*_-d,i=Math.sqrt(g*g-c*c));var v=180-a-2*d,m=(Math.atan2(f,u)-Math.atan2(l,i))*_,y=(Math.atan2(f,u)-Math.atan2(l,-i))*_,b=h(r[0],r[1],a,m),x=h(r[0],r[1],v,y);return x>=b?[a,m,r[2]]:[v,y,r[2]]}function h(t,e,r,n){var i=d(r-t),a=d(n-e);return Math.sqrt(i*i+a*a)}function d(t){return(t%360+540)%360-180}function p(t,e,r){var n=r*x,i=t.slice(),a=0===e?1:0,o=2===e?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=t[a]*s-t[o]*l,i[o]=t[o]*s+t[a]*l,i}function g(t){return[Math.atan2(2*(t[0]*t[1]+t[2]*t[3]),1-2*(t[1]*t[1]+t[2]*t[2]))*_,Math.asin(Math.max(-1,Math.min(1,2*(t[0]*t[2]-t[3]*t[1]))))*_,Math.atan2(2*(t[0]*t[3]+t[1]*t[2]),1-2*(t[2]*t[2]+t[3]*t[3]))*_]}function v(t){var e=t[0]*x,r=t[1]*x,n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}function m(t,e){for(var r=0,n=t.length,i=0;n>r;++r)i+=t[r]*e[r];return i}function y(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function b(t){for(var e=0,r=arguments.length,n=[];++e<r;)n.push(arguments[e]);var i=d3.dispatch.apply(null,n);return i.of=function(e,r){return function(n){var a;try{a=n.sourceEvent=d3.event,n.target=t,d3.event=n,i[n.type].apply(e,r)}finally{d3.event=a}}},i}var x=Math.PI/180,_=180/Math.PI,w={cursor:\"pointer\"},k={cursor:\"auto\"};e.exports=r},{}],591:[function(t,e){\"use strict\";function r(t,e,r,n){Array.isArray(t)&&(e[r]=t[n])}var n=t(\"../../plotly\"),i=t(\"../lib/params\"),a=t(\"../lib/topojson-utils\").extractTopojson,o=t(\"../lib/location-utils\").locationToId,s=e.exports={};s.calcGeoJSON=function(t,e){for(var n,i,s=[],l=t.locations,u=l.length,c=a(t,e),f=c.features,h=c.ids,d=(t.marker||{}).line||{},p=0;u>p;p++)n=h.indexOf(o(t.locationmode,l[p])),-1!==n&&(i=f[n],i.z=t.z[p],void 0!==t.text&&(i.tx=t.text[p]),r(d.color,i,\"mlc\",p),r(d.width,i,\"mlw\",p),s.push(i));return s.length>0&&(s[0].trace=t),s},s.plot=function(t,e,r){function a(e){if(t.showHover){var r=t.projection(e.properties.centroid);n.Fx.loneHover({x:r[0],y:r[1],name:e.id,zLabel:e.z,text:e.tx},{container:t.hoverContainer.node()})}}var o,l=t.framework,u=t.topojson,c=l.select(\"g.choroplethlayer\"),f=l.select(\"g.baselayer\"),h=l.select(\"g.baselayeroverchoropleth\"),d=i.baseLayersOverChoropleth;c.selectAll(\"*\").remove(),h.selectAll(\"*\").remove();var p=c.selectAll(\"g.trace.scatter\").data(e);p.enter().append(\"g\").attr(\"class\",\"trace choropleth\"),p.each(function(e){if(e.visible===!0){var r=s.calcGeoJSON(e,u);d3.select(this).selectAll(\"path.choroplethlocation\").data(r).enter().append(\"path\").attr(\"class\",\"choroplethlocation\").on(\"mouseover\",a).on(\"mouseout\",function(){n.Fx.loneUnhover(t.hoverContainer)}).on(\"mousedown\",function(){n.Fx.loneUnhover(t.hoverContainer)}).on(\"mouseup\",a)}});for(var g=0;g<d.length;g++)o=d[g],f.select(\"g.\"+o).remove(),t.drawTopo(h,o,r),t.styleLayer(h,o,r);s.style(t)},s.style=function(t){t.framework.selectAll(\"g.trace.choropleth\").each(function(t){var e=d3.select(this),r=t.marker||{},i=r.line||{},a=t.zmin,o=t.zmax,s=n.Colorscale.getScale(t.colorscale),l=n.Colorscale.makeScaleFunction(s,a,o);e.selectAll(\"path.choroplethlocation\").each(function(t){d3.select(this).attr(\"fill\",function(t){return l(t.z)}).call(n.Color.stroke,t.mlc||i.color).call(n.Drawing.dashLine,\"\",t.mlw||i.width)})})}},{\"../../plotly\":626,\"../lib/location-utils\":584,\"../lib/params\":585,\"../lib/topojson-utils\":588}],592:[function(t,e){\"use strict\";function r(t){for(var e=t.lon.length,r=new Array(e),n=0;e>n;n++)r[n]=[t.lon[n],t.lat[n]];return{type:\"LineString\",coordinates:r,trace:t}}var n=t(\"../../plotly\"),i=t(\"../lib/topojson-utils\").extractTopojson,a=t(\"../lib/location-utils\").locationToId,o=e.exports={};o.calcGeoJSON=function(t,e){var r,o,s,l,u,c,f,h,d=[],p=t.marker||{},g=Array.isArray(t.locations);g?(f=t.locations,r=f.length,o=i(t,e),s=o.features,l=o.ids,u=function(t,e){return h=l.indexOf(a(t.locationmode,f[e])),-1!==h?s[h].properties.centroid:void 0}):(r=t.lon.length,u=function(t,e){return[t.lon[e],t.lat[e]]});for(var v=0;r>v;v++)c=u(t,v),c&&d.push({lon:c[0],lat:c[1],location:g?t.locations[v]:null});return d.length>0&&(d[0].trace=t,n.Lib.mergeArray(p.size,d,\"ms\"),n.Scatter.arraysToCalcdata(d)),d},o.plot=function(t,e){function i(e){if(t.showHover){var r,i=t.projection([e.lon,e.lat]),a=d3.select(this.parentNode).data()[0];r=Array.isArray(a.locations)?e.location:\"(\"+e.lon+\", \"+e.lat+\")\",e.tx&&(r+=\"<br>\"+e.tx),n.Fx.loneHover({x:i[0],y:i[1],text:r,name:a.name,color:e.mc||(a.marker||{}).color},{container:t.hoverContainer.node()})}}var a=t.framework.select(\"g.scattergeolayer\"),s=n.Scatter,l=t.topojson;a.selectAll(\"*\").remove();var u=a.selectAll(\"g.trace.scatter\").data(e);u.enter().append(\"g\").attr(\"class\",\"trace scattergeo\"),u.each(function(t){s.hasLines(t)&&t.visible===!0&&d3.select(this).append(\"path\").datum(r(t)).attr(\"class\",\"js-line\")}),u.append(\"g\").attr(\"class\",\"points\").each(function(e){var r=d3.select(this),a=s.hasMarkers(e),u=s.hasText(e);if(!a&&!u||e.visible!==!0)return void r.remove();var c=o.calcGeoJSON(e,l);a&&r.selectAll(\"path.point\").data(c).enter().append(\"path\").attr(\"class\",\"point\").on(\"mouseover\",i).on(\"mouseout\",function(){n.Fx.loneUnhover(t.hoverContainer)}).on(\"mousedown\",function(){n.Fx.loneUnhover(t.hoverContainer)}).on(\"mouseup\",i),u&&r.selectAll(\"g\").data(c).enter().append(\"g\").append(\"text\")}),o.style(t)},o.style=function(t){var e=t.framework.selectAll(\"g.trace.scattergeo\");e.style(\"opacity\",function(t){return t.opacity}),e.selectAll(\"g.points\").each(function(t){d3.select(this).selectAll(\"path.point\").call(n.Drawing.pointStyle,t),d3.select(this).selectAll(\"text\").call(n.Drawing.textPointStyle,t)}),e.selectAll(\"path.js-line\").style(\"fill\",\"none\").each(function(t){var e=t.trace,r=e.line||{};d3.select(this).call(n.Color.stroke,r.color).call(n.Drawing.dashLine,r.dash||\"\",r.width||0)})}},{\"../../plotly\":626,\"../lib/location-utils\":584,\"../lib/topojson-utils\":588}],593:[function(t,e){e.exports=[{regex:\"afghan\",iso3:\"AFG\"},{regex:\"\\\\b(a|\\xe5)land\",iso3:\"ALA\"},{regex:\"albania\",iso3:\"ALB\"},{regex:\"algeria\",iso3:\"DZA\"},{regex:\"^(?=.*americ).*samoa\",iso3:\"ASM\"},{regex:\"andorra\",iso3:\"AND\"},{regex:\"angola\",iso3:\"AGO\"},{regex:\"anguill?a\",iso3:\"AIA\"},{regex:\"antarctica\",iso3:\"ATA\"},{regex:\"antigua\",iso3:\"ATG\"},{regex:\"argentin\",iso3:\"ARG\"},{regex:\"armenia\",iso3:\"ARM\"},{regex:\"^(?!.*bonaire).*\\\\baruba\",iso3:\"ABW\"},{regex:\"australia\",iso3:\"AUS\"},{regex:\"^(?!.*hungary).*austria|\\\\baust.*\\\\bemp\",iso3:\"AUT\"},{regex:\"azerbaijan\",iso3:\"AZE\"},{regex:\"bahamas\",iso3:\"BHS\"},{regex:\"bahrain\",iso3:\"BHR\"},{regex:\"bangladesh|^(?=.*east).*paki?stan\",iso3:\"BGD\"},{regex:\"barbados\",iso3:\"BRB\"},{regex:\"belarus|byelo\",iso3:\"BLR\"},{regex:\"^(?!.*luxem).*belgium\",iso3:\"BEL\"},{regex:\"belize|^(?=.*british).*honduras\",iso3:\"BLZ\"},{regex:\"benin|dahome\",iso3:\"BEN\"},{regex:\"bermuda\",iso3:\"BMU\"},{regex:\"bhutan\",iso3:\"BTN\"},{regex:\"bolivia\",iso3:\"BOL\"},{regex:\"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\\\bbes.?islands\",iso3:\"BES\"},{regex:\"herzegovina|bosnia\",iso3:\"BIH\"},{regex:\"botswana|bechuana\",iso3:\"BWA\"},{regex:\"bouvet\",iso3:\"BVT\"},{regex:\"brazil\",iso3:\"BRA\"},{regex:\"british.?indian.?ocean\",iso3:\"IOT\"},{regex:\"brunei\",iso3:\"BRN\"},{regex:\"bulgaria\",iso3:\"BGR\"},{regex:\"burkina|\\\\bfaso|upper.?volta\",iso3:\"BFA\"},{regex:\"burundi\",iso3:\"BDI\"},{regex:\"cambodia|kampuchea|khmer|^p\\\\.?r\\\\.?k\\\\.?$\",iso3:\"KHM\"},{regex:\"cameroon\",iso3:\"CMR\"},{regex:\"canada\",iso3:\"CAN\"},{regex:\"verde\",iso3:\"CPV\"},{regex:\"cayman\",iso3:\"CYM\"},{regex:\"\\\\bcen.*\\\\baf|^c\\\\.?a\\\\.?r\\\\.?$\",iso3:\"CAF\"},{regex:\"\\\\bchad\",iso3:\"TCD\"},{regex:\"\\\\bchile\",iso3:\"CHL\"},{regex:\"^(?!.*\\\\bmac)(?!.*\\\\bhong)(?!.*\\\\btai).*china|^p\\\\.?r\\\\.?c\\\\.?$\",iso3:\"CHN\"},{regex:\"christmas\",iso3:\"CXR\"},{regex:\"\\\\bcocos|keeling\",iso3:\"CCK\"},{regex:\"colombia\",iso3:\"COL\"},{regex:\"comoro\",iso3:\"COM\"},{regex:\"\\\\bdem.*congo|congo.*\\\\bdem|congo.*\\\\bdr|\\\\bdr.*congo|\\\\bd\\\\.?r\\\\.?c|\\\\bd\\\\.?r\\\\.?o\\\\.?c|\\\\br\\\\.?d\\\\.?c|belgian.?congo|congo.?free.?state|kinshasa|zaire|l\\\\w{1,2}opoldville\",iso3:\"COD\"},{regex:\"^(?!.*\\\\bdem)(?!.*\\\\bdr)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l\\\\w{1,2}opoldville)(?!.*free).*\\\\bcongo\",iso3:\"COG\"},{regex:\"\\\\bcook\",iso3:\"COK\"},{regex:\"costa.?rica\",iso3:\"CRI\"},{regex:\"ivoire|ivory\",iso3:\"CIV\"},{regex:\"croatia\",iso3:\"HRV\"},{regex:\"\\\\bcuba\",iso3:\"CUB\"},{regex:\"^(?!.*bonaire).*\\\\bcura(c|\\xe7)ao\",iso3:\"CUW\"},{regex:\"cyprus\",iso3:\"CYP\"},{regex:\"^(?=.*rep).*czech|czechia|bohemia\",iso3:\"CZE\"},{regex:\"czechoslovakia\",iso3:\"CSK\"},{regex:\"denmark\",iso3:\"DNK\"},{regex:\"djibouti\",iso3:\"DJI\"},{regex:\"dominica(?!n)\",iso3:\"DMA\"},{regex:\"dominican\",iso3:\"DOM\"},{regex:\"ecuador\",iso3:\"ECU\"},{regex:\"egypt\",iso3:\"EGY\"},{regex:\"el.?salvador\",iso3:\"SLV\"},{regex:\"guine.*eq|eq.*guine|^(?=.*span).*guinea\",iso3:\"GNQ\"},{regex:\"eritrea\",iso3:\"ERI\"},{regex:\"estonia\",iso3:\"EST\"},{regex:\"ethiopia|abyssinia\",iso3:\"ETH\"},{regex:\"falkland|malvinas\",iso3:\"FLK\"},{regex:\"faroe|faeroe\",iso3:\"FRO\"},{regex:\"fiji\",iso3:\"FJI\"},{regex:\"finland\",iso3:\"FIN\"},{regex:\"^(?!.*\\\\bdep)(?!.*martinique).*france|french.?republic|\\\\bgaul\",iso3:\"FRA\"},{regex:\"^(?=.*french).*guiana\",iso3:\"GUF\"},{regex:\"french.?polynesia\",iso3:\"PYF\"},{regex:\"french.?southern|\\\\bfr.*\\\\bso.*\\\\ban.*\\\\b\\\\bt\",iso3:\"ATF\"},{regex:\"gabon\",iso3:\"GAB\"},{regex:\"gambia\",iso3:\"GMB\"},{regex:\"^(?!.*south).*georgia\",iso3:\"GEO\"},{regex:\"german.?democratic.?republic|^(d|g)\\\\.?d\\\\.?r\\\\.?$|^(?=.*east).*germany\",iso3:\"DDR\"},{regex:\"^(?!.*east).*germany|^(?=.*\\\\bfed.*\\\\brep).*german\",iso3:\"DEU\"},{regex:\"ghana|gold.?coast\",iso3:\"GHA\"},{regex:\"gibraltar\",iso3:\"GIB\"},{regex:\"greece|hellenic|hellas\",iso3:\"GRC\"},{regex:\"greenland\",iso3:\"GRL\"},{regex:\"grenada\",iso3:\"GRD\"},{regex:\"guadeloupe\",iso3:\"GLP\"},{regex:\"\\\\bguam\",iso3:\"GUM\"},{regex:\"guatemala\",iso3:\"GTM\"},{regex:\"guernsey\",iso3:\"GGY\"},{regex:\"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea\",iso3:\"GIN\"},{regex:\"bissau|^(?=.*portu).*guinea\",iso3:\"GNB\"},{regex:\"guyana|british.?guiana\",iso3:\"GUY\"},{regex:\"haiti\",iso3:\"HTI\"},{regex:\"heard.*mcdonald\",iso3:\"HMD\"},{regex:\"holy.?see|vatican|papal.?st\",iso3:\"VAT\"},{regex:\"^(?!.*brit).*honduras\",iso3:\"HND\"},{regex:\"hong.?kong\",iso3:\"HKG\"},{regex:\"^(?!.*austr).*hungary\",iso3:\"HUN\"},{regex:\"iceland\",iso3:\"ISL\"},{regex:\"india(?!.*ocea)\",iso3:\"IND\"},{regex:\"indonesia\",iso3:\"IDN\"},{regex:\"\\\\biran|persia\",iso3:\"IRN\"},{regex:\"\\\\biraq|mesopotamia\",iso3:\"IRQ\"},{regex:\"ireland\",iso3:\"IRL\"},{regex:\"^(?=.*isle).*\\\\bman\",iso3:\"IMN\"},{regex:\"israel\",iso3:\"ISR\"},{regex:\"italy\",iso3:\"ITA\"},{regex:\"jamaica\",iso3:\"JAM\"},{regex:\"japan\",iso3:\"JPN\"},{regex:\"jersey\",iso3:\"JEY\"},{regex:\"jordan\",iso3:\"JOR\"},{regex:\"kazak\",iso3:\"KAZ\"},{regex:\"kenya|british.?east.?africa|east.?africa.?prot\",iso3:\"KEN\"},{regex:\"kiribati\",iso3:\"KIR\"},{regex:\"^(?=.*dem).*\\\\bkorea|^(?=.*peo).*\\\\bkorea|^(?=.*nor).*\\\\bkorea|\\\\bd\\\\.?p\\\\.?r\\\\.?k\",iso3:\"PRK\"},{regex:\"^(?!.*dem)(?!.*peo)(?!.*nor).*\\\\bkorea|\\\\br\\\\.?o\\\\.?k\\\\b\",iso3:\"KOR\"},{regex:\"kuwait\",iso3:\"KWT\"},{regex:\"kyrgyz|kirghiz\",iso3:\"KGZ\"},{regex:\"\\\\blaos?\\\\b\",iso3:\"LAO\"},{regex:\"latvia\",iso3:\"LVA\"},{regex:\"lebanon\",iso3:\"LBN\"},{regex:\"lesotho|basuto\",iso3:\"LSO\"},{regex:\"liberia\",iso3:\"LBR\"},{regex:\"libya\",iso3:\"LBY\"},{regex:\"liechtenstein\",iso3:\"LIE\"},{regex:\"lithuania\",iso3:\"LTU\"},{regex:\"^(?!.*belg).*luxem\",iso3:\"LUX\"},{regex:\"maca(o|u)\",iso3:\"MAC\"},{regex:\"macedonia|^f\\\\.?y\\\\.?r\\\\.?o\\\\.?m\\\\.?$\",iso3:\"MKD\"},{regex:\"madagascar|malagasy\",iso3:\"MDG\"},{regex:\"malawi|nyasa\",iso3:\"MWI\"},{regex:\"malaysia\",iso3:\"MYS\"},{regex:\"maldive\",iso3:\"MDV\"},{regex:\"\\\\bmali\\\\b\",iso3:\"MLI\"},{regex:\"\\\\bmalta\",iso3:\"MLT\"},{regex:\"marshall\",iso3:\"MHL\"},{regex:\"martinique\",iso3:\"MTQ\"},{regex:\"mauritania\",iso3:\"MRT\"},{regex:\"mauritius\",iso3:\"MUS\"},{regex:\"mayotte\",iso3:\"MYT\"},{regex:\"\\\\bmexic\",iso3:\"MEX\"},{regex:\"micronesia\",iso3:\"FSM\"},{regex:\"moldov|b(a|e)ssarabia\",iso3:\"MDA\"},{regex:\"monaco\",iso3:\"MCO\"},{regex:\"mongolia\",iso3:\"MNG\"},{regex:\"^(?!.*serbia).*montenegro\",iso3:\"MNE\"},{regex:\"montserrat\",iso3:\"MSR\"},{regex:\"morocco|\\\\bmaroc\",iso3:\"MAR\"},{regex:\"mozambique\",iso3:\"MOZ\"},{regex:\"myanmar|burma\",iso3:\"MMR\"},{regex:\"namibia\",iso3:\"NAM\"},{regex:\"nauru\",iso3:\"NRU\"},{regex:\"nepal\",iso3:\"NPL\"},{regex:\"^(?!.*\\\\bant)(?!.*\\\\bcarib).*netherlands\",iso3:\"NLD\"},{regex:\"^(?=.*\\\\bant).*(nether|dutch)\",iso3:\"ANT\"},{regex:\"new.?caledonia\",iso3:\"NCL\"},{regex:\"new.?zealand\",iso3:\"NZL\"},{regex:\"nicaragua\",iso3:\"NIC\"},{regex:\"\\\\bniger(?!ia)\",iso3:\"NER\"},{regex:\"nigeria\",iso3:\"NGA\"},{regex:\"niue\",iso3:\"NIU\"},{regex:\"norfolk\",iso3:\"NFK\"},{regex:\"mariana\",iso3:\"MNP\"},{regex:\"norway\",iso3:\"NOR\"},{regex:\"\\\\boman|trucial\",iso3:\"OMN\"},{regex:\"^(?!.*east).*paki?stan\",iso3:\"PAK\"},{regex:\"palau\",iso3:\"PLW\"},{regex:\"palestin|\\\\bgaza|west.?bank\",iso3:\"PSE\"},{regex:\"panama\",iso3:\"PAN\"},{regex:\"papua|\\\\bp.*\\\\bn.*\\\\bguin.*|^p\\\\.?n\\\\.?g\\\\.?$|new.?guinea\",iso3:\"PNG\"},{regex:\"paraguay\",iso3:\"PRY\"},{regex:\"peru\",iso3:\"PER\"},{regex:\"philippines\",iso3:\"PHL\"},{regex:\"pitcairn\",iso3:\"PCN\"},{regex:\"poland\",iso3:\"POL\"},{regex:\"portugal\",iso3:\"PRT\"},{regex:\"puerto.?rico\",iso3:\"PRI\"},{regex:\"qatar\",iso3:\"QAT\"},{regex:\"r(e|\\xe9)union\",iso3:\"REU\"},{regex:\"r(o|u|ou)mania\",iso3:\"ROU\"},{regex:\"\\\\brussia|soviet.?union|u\\\\.?s\\\\.?s\\\\.?r|socialist.?republics\",iso3:\"RUS\"},{regex:\"rwanda\",iso3:\"RWA\"},{regex:\"barth(e|\\xe9)lemy\",iso3:\"BLM\"},{regex:\"helena\",iso3:\"SHN\"},{regex:\"kitts|\\\\bnevis\",iso3:\"KNA\"},{regex:\"\\\\blucia\",iso3:\"LCA\"},{regex:\"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)\",iso3:\"MAF\"},{regex:\"miquelon\",iso3:\"SPM\"},{regex:\"vincent\",iso3:\"VCT\"},{regex:\"^(?!.*amer).*samoa\",iso3:\"WSM\"},{regex:\"san.?marino\",iso3:\"SMR\"},{regex:\"\\\\bs(a|\\xe3)o.?tom(e|\\xe9)\",iso3:\"STP\"},{regex:\"\\\\bsa\\\\w*.?arabia\",iso3:\"SAU\"},{regex:\"senegal\",iso3:\"SEN\"},{regex:\"^(?!.*monte).*serbia\",iso3:\"SRB\"},{regex:\"seychell\",iso3:\"SYC\"},{regex:\"sierra\",iso3:\"SLE\"},{regex:\"singapore\",iso3:\"SGP\"},{regex:\"^(?!.*martin)(?!.*saba).*maarten\",iso3:\"SXM\"},{regex:\"^(?!.*cze).*slovak\",iso3:\"SVK\"},{regex:\"slovenia\",iso3:\"SVN\"},{regex:\"solomon\",iso3:\"SLB\"},{regex:\"somali\",iso3:\"SOM\"},{regex:\"\\\\bs\\\\w*.?africa\",iso3:\"ZAF\"},{regex:\"south.?georgia|sandwich\",iso3:\"SGS\"},{regex:\"\\\\bs\\\\w*.?sudan\",iso3:\"SSD\"},{regex:\"spain\",iso3:\"ESP\"},{regex:\"sri.?lanka|ceylon\",iso3:\"LKA\"},{regex:\"^(?!.*\\\\bs(?!u)).*sudan\",iso3:\"SDN\"},{regex:\"surinam|dutch.?guiana\",iso3:\"SUR\"},{regex:\"svalbard\",iso3:\"SJM\"},{regex:\"swaziland\",iso3:\"SWZ\"},{regex:\"sweden\",iso3:\"SWE\"},{regex:\"switz|swiss\",iso3:\"CHE\"},{regex:\"syria\",iso3:\"SYR\"},{regex:\"taiwan|taipei|formosa\",iso3:\"TWN\"},{regex:\"tajik\",iso3:\"TJK\"},{regex:\"tanzania\",iso3:\"TZA\"},{regex:\"thailand|\\\\bsiam\",iso3:\"THA\"},{regex:\"^(?=.*leste).*timor|^(?=.*east).*timor\",iso3:\"TLS\"},{regex:\"togo\",iso3:\"TGO\"},{regex:\"tokelau\",iso3:\"TKL\"},{regex:\"tonga\",iso3:\"TON\"},{regex:\"trinidad|tobago\",iso3:\"TTO\"},{regex:\"tunisia\",iso3:\"TUN\"},{regex:\"turkey\",iso3:\"TUR\"},{regex:\"turkmen\",iso3:\"TKM\"},{regex:\"turks\",iso3:\"TCA\"},{regex:\"tuvalu\",iso3:\"TUV\"},{regex:\"uganda\",iso3:\"UGA\"},{regex:\"ukrain\",iso3:\"UKR\"},{regex:\"emirates|^u\\\\.?a\\\\.?e\\\\.?$|united.?arab.?em\",iso3:\"ARE\"},{regex:\"united.?kingdom|britain|^u\\\\.?k\\\\.?$\",iso3:\"GBR\"},{regex:\"^(?!.*islands).*united.?states|^u\\\\.?s\\\\.?a\\\\.?$|^u\\\\.?s\\\\.?$\",iso3:\"USA\"},{regex:\"minor.?outlying.?is\",iso3:\"UMI\"},{regex:\"uruguay\",iso3:\"URY\"},{regex:\"uzbek\",iso3:\"UZB\"},{regex:\"vanuatu|new.?hebrides\",iso3:\"VUT\"},{regex:\"venezuela\",iso3:\"VEN\"},{regex:\"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam\",iso3:\"VNM\"},{regex:\"^(?=.*\\\\bu\\\\.?\\\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin\",iso3:\"VGB\"},{regex:\"^(?=.*\\\\bu\\\\.?\\\\s?s).*virgin|^(?=.*states).*virgin\",iso3:\"VIR\"},{regex:\"futuna|wallis\",iso3:\"WLF\"},{regex:\"sahara\",iso3:\"ESH\"},{regex:\"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\\\bp\\\\.?d\\\\.?r).*yemen\",iso3:\"YEM\"},{regex:\"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\\\bp\\\\.?d\\\\.?r).*yemen\",iso3:\"YMD\"},{regex:\"yugoslavia\",iso3:\"YUG\"},{regex:\"zambia|northern.?rhodesia\",iso3:\"ZMB\"},{regex:\"zanz\",iso3:\"EAZ\"},{regex:\"zimbabwe|^(?!.*northern).*rhodesia\",iso3:\"ZWE\"}]\n",
"},{}],594:[function(t,e){\"use strict\";function r(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=[\"Open Sans\",\"Open Sans\",\"Open Sans\"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=o(this.tickPad),this._defaultLabelPad=o(this.labelPad),this._defaultLineTickLength=o(this.lineTickLength)}function n(t){var e=new r;return e.merge(t),e}var i=t(\"arraytools\"),a=t(\"../lib/html2unicode\"),o=i.copy1D,s=t(\"../lib/str2rgbarray\"),l=[\"xaxis\",\"yaxis\",\"zaxis\"],u=r.prototype;u.merge=function(t){for(var e=this,r=0;3>r;++r){var n=t[l[r]];e.labels[r]=a(n.title),\"titlefont\"in n&&(n.titlefont.color&&(e.labelColor[r]=s(n.titlefont.color)),n.titlefont.family&&(e.labelFont[r]=n.titlefont.family),n.titlefont.size&&(e.labelSize[r]=n.titlefont.size)),\"showline\"in n&&(e.lineEnable[r]=n.showline),\"linecolor\"in n&&(e.lineColor[r]=s(n.linecolor)),\"linewidth\"in n&&(e.lineWidth[r]=n.linewidth),\"showgrid\"in n&&(e.gridEnable[r]=n.showgrid),\"gridcolor\"in n&&(e.gridColor[r]=s(n.gridcolor)),\"gridwidth\"in n&&(e.gridWidth[r]=n.gridwidth),\"zeroline\"in n&&(e.zeroEnable[r]=n.zeroline),\"zerolinecolor\"in n&&(e.zeroLineColor[r]=s(n.zerolinecolor)),\"zerolinewidth\"in n&&(e.zeroLineWidth[r]=n.zerolinewidth),e.lineTickEnable[r]=\"ticks\"in n&&n.ticks?!0:!1,\"ticklen\"in n&&(e.lineTickLength[r]=e._defaultLineTickLength[r]=n.ticklen),\"tickcolor\"in n&&(e.lineTickColor[r]=s(n.tickcolor)),\"tickwidth\"in n&&(e.lineTickWidth[r]=n.tickwidth),\"tickangle\"in n&&(e.tickAngle[r]=\"auto\"===n.tickangle?0:n.tickangle),\"showticklabels\"in n&&(e.tickEnable[r]=n.showticklabels),\"tickfont\"in n&&(n.tickfont.color&&(e.tickColor[r]=s(n.tickfont.color)),n.tickfont.family&&(e.tickFont[r]=n.tickfont.family),n.tickfont.size&&(e.tickSize[r]=n.tickfont.size)),\"mirror\"in n?-1!==[\"ticks\",\"all\",\"allticks\"].indexOf(n.mirror)?(e.lineTickMirror[r]=!0,e.lineMirror[r]=!0):n.mirror===!0?(e.lineTickMirror[r]=!1,e.lineMirror[r]=!0):(e.lineTickMirror[r]=!1,e.lineMirror[r]=!1):e.lineMirror[r]=!1,\"showbackground\"in n&&n.showbackground!==!1?(e.backgroundEnable[r]=!0,e.backgroundColor[r]=s(n.backgroundcolor)):e.backgroundEnable[r]=!1}},e.exports=n},{\"../lib/html2unicode\":608,\"../lib/str2rgbarray\":611,arraytools:53}],595:[function(t,e){\"use strict\";function r(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.color=\"#fff\",this.data=null,this.showContour=!1}function n(t){return t.map(function(t){var e=t[0],r=u(t[1]),n=r.toRgb();return{index:e,rgb:[n.r,n.g,n.b,1]}})}function i(t){return t.map(l)}function a(t,e,r){for(var n=new Array(t.length),i=0;i<t.length;++i)n[i]=[t[i],e[i],r[i]];return n}function o(t,e){var n=t.glplot.gl,i=s({gl:n}),a=new r(t,i,e.uid);return a.update(e),t.glplot.add(i),a}var s=t(\"gl-mesh3d\"),l=t(\"../lib/str2rgbarray\"),u=t(\"tinycolor2\"),c=t(\"delaunay-triangulate\"),f=t(\"alpha-shape\"),h=t(\"convex-hull\"),d=r.prototype;d.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index;return t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]],!0}},d.update=function(t){function e(t,e,r,n){return e.map(function(e){return t.d2l(e)*r-n})}var r=this.scene,o=r.fullSceneLayout;this.data=t;var s,u=a(e(o.xaxis,t.x,r.dataScale[0],r.dataCenter[0]),e(o.yaxis,t.y,r.dataScale[1],r.dataCenter[1]),e(o.zaxis,t.z,r.dataScale[2],r.dataCenter[2]));if(t.i&&t.j&&t.k)s=a(t.i,t.j,t.k);else if(0===t.alphahull)s=h(u);else if(t.alphahull>0)s=f(t.alphahull,u);else{var d=[\"x\",\"y\",\"z\"].indexOf(t.delaunayaxis);s=c(u.map(function(t){return[t[(d+1)%3],t[(d+2)%3]]}))}var p={positions:u,cells:s,ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,opacity:t.opacity,contourEnable:t.contour.show,contourColor:l(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading};t.intensity?(this.color=\"#fff\",p.vertexIntensity=t.intensity,p.colormap=n(t.colorscale)):t.vertexColor?(this.color=t.vertexColor[0],p.vertexColors=i(t.vertexColor)):t.faceColor?(this.color=t.faceColor[0],p.cellColors=i(t.faceColor)):(this.color=t.color,p.meshColor=l(t.color)),this.mesh.update(p)},d.dispose=function(){this.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=o},{\"../lib/str2rgbarray\":611,\"alpha-shape\":35,\"convex-hull\":54,\"delaunay-triangulate\":93,\"gl-mesh3d\":158,tinycolor2:566}],596:[function(t,e){\"use strict\";function r(t,e){this.scene=t,this.uid=e,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode=\"\",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}function n(t,e,r){for(var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s=0;s<t.length;++s){var l=t[s];!isNaN(l[n])&&isFinite(l[n])&&!isNaN(l[i])&&isFinite(l[i])&&(a.push([l[n],l[i]]),o.push(s))}for(var u=v(a),s=0;s<u.length;++s)for(var c=u[s],f=0;f<c.length;++f)c[f]=o[c[f]];return{positions:t,cells:u,meshColor:e}}function i(t){var e,r,n=[0,0,0],i=[[0,0,0],[0,0,0],[0,0,0]],a=[0,0,0];for(e=0;3>e;++e)r=t[e],r&&r.copy_zstyle!==!1&&(r=t[2]),r&&(n[e]=r.width/100,i[e]=m(r.color),a=r.thickness);return{capSize:n,color:i,lineWidth:a}}function a(t){var e=[0,0];return Array.isArray(t)?[0,-1]:(t.indexOf(\"bottom\")>=0&&(e[1]+=1),t.indexOf(\"top\")>=0&&(e[1]-=1),t.indexOf(\"left\")>=0&&(e[0]-=1),t.indexOf(\"right\")>=0&&(e[0]+=1),e)}function o(t,e){return e(4*t)}function s(t){return _[t]}function l(t,e,r,n,i){var a=null;if(Array.isArray(t)){a=[];for(var o=0;e>o;o++)a[o]=void 0===t[o]?n:r(t[o],i)}else a=r(t,w.Lib.identity);return a}function u(t,e){var r,n,u,c,f,h=[],d=t.fullSceneLayout,p=t.dataScale,g=t.dataCenter,v=d.xaxis,x=d.yaxis,_=d.zaxis,k=e.marker,A=e.line,M=i([e.error_x,e.error_y,e.error_z]),L=e.x||[],E=e.y||[],C=e.z||[],j=L.length;for(n=0;j>n;n++)u=v.d2l(L[n])*p[0]-g[0],c=x.d2l(E[n])*p[1]-g[1],f=_.d2l(C[n])*p[2]-g[2],h[n]=[u,c,f];if(r={position:h,mode:e.mode,text:e.text},\"line\"in e&&(r.lineColor=m(A.color),r.lineWidth=A.width,r.lineDashes=A.dash),\"marker\"in e){var S=w.Scatter.getBubbleSizeFn(e);r.scatterColor=y(k,1,j),r.scatterSize=l(k.size,j,o,20,S),r.scatterMarker=l(k.symbol,j,s,\"\\u25cf\"),r.scatterLineWidth=k.line.width,r.scatterLineColor=y(k.line,1,j),r.scatterAngle=0}\"textposition\"in e&&(r.textOffset=a(e.textposition),r.textColor=y(e.textfont,1,j),r.textSize=l(e.textfont.size,j,w.Lib.identity,12),r.textFont=e.textfont.family,r.textAngle=0);var T=[\"x\",\"y\",\"z\"];for(r.project=[!1,!1,!1],r.projectScale=[1,1,1],r.projectOpacity=[1,1,1],n=0;3>n;++n){var z=e.projection[T[n]];(r.project[n]=z.show)&&(r.projectOpacity[n]=z.opacity,r.projectScale[n]=z.scale)}return r.errorBounds=b(e),r.errorColor=M.color,r.errorLineWidth=M.lineWidth,r.errorCapSize=M.capSize,r.delaunayAxis=e.surfaceaxis,r.delaunayColor=m(e.surfacecolor),r}function c(t){if(Array.isArray(t)){var e=t[0];return Array.isArray(e)&&(t=e),\"rgb(\"+t.slice(0,3).map(function(t){return Math.round(255*t)})+\")\"}return null}function f(t,e){var n=new r(t,e.uid);return n.update(e),n}var h=t(\"gl-line3d\"),d=t(\"gl-scatter3d\"),p=t(\"gl-error3d\"),g=t(\"gl-mesh3d\"),v=t(\"delaunay-triangulate\"),m=t(\"../lib/str2rgbarray\"),y=t(\"../lib/format-color\"),b=t(\"../lib/calc-errors\"),x=t(\"../lib/dashes.json\"),_=t(\"../lib/markers.json\"),w=t(\"../../plotly\"),k=r.prototype;k.handlePick=function(t){if(t.object&&(t.object===this.linePlot||t.object===this.delaunayMesh||t.object===this.textMarkers||t.object===this.scatterPlot)){t.object.highlight&&t.object.highlight(null),this.scatterPlot&&(t.object=this.scatterPlot,this.scatterPlot.highlight(t.data)),t.textLabel=this.textLabels&&void 0!==this.textLabels[t.data.index]?this.textLabels[t.data.index]:\"\";var e=t.data.index;return t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]],!0}},k.update=function(t){var e,r,i,a,o=this.scene.glplot.gl,s=x.solid;this.data=t;var l=u(this.scene,t);\"mode\"in l&&(this.mode=l.mode),\"lineDashes\"in l&&l.lineDashes in x&&(s=x[l.lineDashes]),this.color=c(l.scatterColor)||c(l.lineColor),this.dataPoints=l.position,e={gl:o,position:l.position,color:l.lineColor,lineWidth:l.lineWidth||1,dashes:s[0],dashScale:s[1],opacity:t.opacity},-1!==this.mode.indexOf(\"lines\")?this.linePlot?this.linePlot.update(e):(this.linePlot=h(e),this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var f=t.opacity;if(t.marker&&\"number\"==typeof t.marker.opacity&&(f*=t.marker.opacity),r={gl:o,position:l.position,color:l.scatterColor,size:l.scatterSize,glyph:l.scatterMarker,opacity:f,orthographic:!0,lineWidth:l.scatterLineWidth,lineColor:l.scatterLineColor,project:l.project,projectScale:l.projectScale,projectOpacity:l.projectOpacity},-1!==this.mode.indexOf(\"markers\")?this.scatterPlot?this.scatterPlot.update(r):(this.scatterPlot=d(r),this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),a={gl:o,position:l.position,glyph:l.text,color:l.textColor,size:l.textSize,angle:l.textAngle,alignment:l.textOffset,font:l.textFont,orthographic:!0,lineWidth:0,project:!1,opacity:t.opacity},this.textLabels=l.text,-1!==this.mode.indexOf(\"text\")?this.textMarkers?this.textMarkers.update(a):(this.textMarkers=d(a),this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),i={gl:o,position:l.position,color:l.errorColor,error:l.errorBounds,lineWidth:l.errorLineWidth,capSize:l.errorCapSize,opacity:t.opacity},this.errorBars?l.errorBounds?this.errorBars.update(i):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):l.errorBounds&&(this.errorBars=p(i),this.scene.glplot.add(this.errorBars)),l.delaunayAxis>=0){var v=n(l.position,l.delaunayColor,l.delaunayAxis);this.delaunayMesh?this.delaunayMesh.update(v):(v.gl=o,this.delaunayMesh=g(v),this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},k.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.textMarkers),this.delaunayMesh.dispose())},e.exports=f},{\"../../plotly\":626,\"../lib/calc-errors\":604,\"../lib/dashes.json\":606,\"../lib/format-color\":607,\"../lib/markers.json\":609,\"../lib/str2rgbarray\":611,\"delaunay-triangulate\":93,\"gl-error3d\":95,\"gl-line3d\":115,\"gl-mesh3d\":158,\"gl-scatter3d\":485}],597:[function(t,e){\"use strict\";function r(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}function n(t){var e=new r;return e.merge(t),e}var i=t(\"../lib/str2rgbarray\"),a=[\"xaxis\",\"yaxis\",\"zaxis\"],o=r.prototype;o.merge=function(t){for(var e=0;3>e;++e){var r=t[a[e]];this.enabled[e]=r.showspikes,this.colors[e]=i(r.spikecolor),this.drawSides[e]=r.spikesides,this.lineWidth[e]=r.spikethickness}},e.exports=n},{\"../lib/str2rgbarray\":611}],598:[function(t,e){\"use strict\";function r(t,e,r){this.scene=t,this.uid=r,this.surface=e,this.data=null,this.showContour=[!1,!1,!1],this.dataScale=1}function n(t,e){return void 0===e&&(e=1),t.map(function(t){var r=t[0],n=d(t[1]),i=n.toRgb();return{index:r,rgb:[i.r,i.g,i.b,e]}})}function i(t){var e=t.shape,r=[e[0]+2,e[1]+2],n=l(new Float32Array(r[0]*r[1]),r);return f.assign(n.lo(1,1).hi(e[0],e[1]),t),f.assign(n.lo(1).hi(e[0],1),t.hi(e[0],1)),f.assign(n.lo(1,r[1]-1).hi(e[0],1),t.lo(0,e[1]-1).hi(e[0],1)),f.assign(n.lo(0,1).hi(1,e[1]),t.hi(1)),f.assign(n.lo(r[0]-1,1).hi(1,e[1]),t.lo(e[0]-1)),n.set(0,0,t.get(0,0)),n.set(0,r[1]-1,t.get(0,e[1]-1)),n.set(r[0]-1,0,t.get(e[0]-1,0)),n.set(r[0]-1,r[1]-1,t.get(e[0]-1,e[1]-1)),n}function a(t){var e=Math.max(t[0].shape[0],t[0].shape[1]);if(p>e){for(var r=p/e,n=[0|Math.floor(t[0].shape[0]*r+1),0|Math.floor(t[0].shape[1]*r+1)],a=n[0]*n[1],o=0;3>o;++o){var s=i(t[o]),c=l(new Float32Array(a),n);u(c,s,[r,0,0,0,r,0,0,0,1]),t[o]=c}return r}return 1}function o(t,e){var n=t.glplot.gl,i=s({gl:n}),a=new r(t,i,e.uid);return a.update(e),t.glplot.add(i),a}var s=t(\"gl-surface3d\"),l=t(\"ndarray\"),u=t(\"ndarray-homography\"),c=t(\"ndarray-fill\"),f=t(\"ndarray-ops\"),h=t(\"../lib/str2rgbarray\"),d=t(\"tinycolor2\"),p=128,g=r.prototype;g.handlePick=function(t){if(t.object===this.surface){var e=[Math.min(0|Math.round(t.data.index[0]/this.dataScale-1),this.data.z[0].length-1),Math.min(0|Math.round(t.data.index[1]/this.dataScale-1),this.data.z.length-1)],r=[0,0,0];r[0]=Array.isArray(this.data.x[0])?this.data.x[e[1]][e[0]]:this.data.x[e[0]],r[1]=Array.isArray(this.data.y[0])?this.data.y[e[1]][e[0]]:this.data.y[e[1]],r[2]=this.data.z[e[1]][e[0]],t.traceCoordinate=r;var n=this.scene.fullSceneLayout;t.dataCoordinate=[n.xaxis.d2l(r[0])*this.scene.dataScale[0]-this.scene.dataCenter[0],n.yaxis.d2l(r[1])*this.scene.dataScale[1]-this.scene.dataCenter[1],n.zaxis.d2l(r[2])*this.scene.dataScale[2]-this.scene.dataCenter[2]];var i=this.data.text;return t.textLabel=i&&i[e[1]]&&void 0!==i[e[1]][e[0]]?i[e[1]][e[0]]:\"\",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}},g.setContourLevels=function(){for(var t=[[],[],[]],e=!1,r=0;3>r;++r)this.showContour[r]&&(e=!0,t[r]=this.scene.contourLevels[r]);e&&this.surface.update({levels:t})},g.update=function(t){var e,r=this.scene,i=r.fullSceneLayout,o=this.surface,s=t.opacity,u=n(t.colorscale,s),f=t.z,d=t.x,p=t.y,g=i.xaxis,v=i.yaxis,m=i.zaxis,y=r.dataScale,b=r.dataCenter,x=f[0].length,_=f.length,w=[l(new Float32Array(x*_),[x,_]),l(new Float32Array(x*_),[x,_]),l(new Float32Array(x*_),[x,_])],k=w[0],A=w[1],M=r.contourLevels;this.data=t,c(w[2],function(t,e){return m.d2l(f[e][t])*y[2]-b[2]}),Array.isArray(d[0])?c(k,function(t,e){return g.d2l(d[e][t])*y[0]-b[0]}):c(k,function(t){return g.d2l(d[t])*y[0]-b[0]}),Array.isArray(p[0])?c(A,function(t,e){return v.d2l(p[e][t])*y[1]-b[1]}):c(A,function(t,e){return v.d2l(p[e])*y[1]-b[1]}),this.dataScale=a(w);var L={colormap:u,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!t.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacity:1};\"opacity\"in t&&t.opacity<1&&(L.opacity=.25*t.opacity);var E=[!0,!0,!0],C=[!0,!0,!0],j=[\"x\",\"y\",\"z\"];for(e=0;3>e;++e){var S=t.contours[j[e]];E[e]=S.highlight,C[e]=S.show,L.showContour[e]=S.show||S.highlight,L.showContour[e]&&(L.contourProject[e]=[S.project.x,S.project.y,S.project.z],S.show?(this.showContour[e]=!0,L.levels[e]=M[e],o.highlightColor[e]=L.contourColor[e]=h(S.color),o.highlightTint[e]=L.contourTint[e]=S.usecolormap?0:1,L.contourWidth[e]=S.width):this.showContour[e]=!1,S.highlight&&(L.dynamicColor[e]=h(S.highlightColor),L.dynamicWidth[e]=S.highlightWidth))}L.coords=w,o.update(L),o.highlightEnable=E,o.contourEnable=C,o.visible=t.visible,o.snapToData=!0,\"lighting\"in t&&(o.ambientLight=t.lighting.ambient,o.diffuseLight=t.lighting.diffuse,o.specularLight=t.lighting.specular,o.roughness=t.lighting.roughness,o.fresnel=t.lighting.fresnel),s&&1>s&&(o.supportsTransparency=!0)},g.dispose=function(){this.glplot.remove(this.surface),this.surface.dispose()},e.exports=o},{\"../lib/str2rgbarray\":611,\"gl-surface3d\":532,ndarray:560,\"ndarray-fill\":538,\"ndarray-homography\":554,\"ndarray-ops\":555,tinycolor2:566}],599:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n={},i=r.Axes.layoutAttributes,a=r.Lib.extendFlat;e.exports=n,n.axesNames=[\"xaxis\",\"yaxis\",\"zaxis\"],n.layoutAttributes={showspikes:{type:\"boolean\",dflt:!0},spikesides:{type:\"boolean\",dflt:!0},spikethickness:{type:\"number\",min:0,dflt:2},spikecolor:{type:\"color\",dflt:\"rgb(0,0,0)\"},showbackground:{type:\"boolean\",dflt:!1},backgroundcolor:{type:\"color\",dflt:\"rgba(204, 204, 204, 0.5)\"},showaxeslabels:{type:\"boolean\",dflt:!0},title:i.title,titlefont:i.titlefont,type:i.type,autorange:i.autorange,rangemode:i.rangemode,range:i.range,fixedrange:i.fixedrange,tickmode:i.tickmode,nticks:i.nticks,tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,mirror:i.mirror,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,showticklabels:i.showticklabels,tickfont:i.tickfont,tickangle:i.tickangle,tickprefix:i.tickprefix,showtickprefix:i.showtickprefix,ticksuffix:i.ticksuffix,showticksuffix:i.showticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,tickformat:i.tickformat,hoverformat:i.hoverformat,showline:i.showline,linecolor:i.linecolor,linewidth:i.linewidth,showgrid:i.showgrid,gridcolor:a(i.gridcolor,{dflt:\"rgb(204, 204, 204)\"}),gridwidth:i.gridwidth,zeroline:i.zeroline,zerolinecolor:i.zerolinecolor,zerolinewidth:i.zerolinewidth};var o=function(){};n.supplyLayoutDefaults=function(t,e,i){function a(t,e){return r.Lib.coerce(s,l,n.layoutAttributes,t,e)}for(var s,l,u=r.Axes,c=0;c<n.axesNames.length;c++){var f=n.axesNames[c];s=t[f]||{},l={_id:f[0]+i.scene,_name:f},e[f]=l=u.handleAxisDefaults(s,l,a,{font:i.font,letter:f[0],data:i.data,showGrid:!0}),a(\"gridcolor\"),a(\"title\",f[0]),l.setScale=o,a(\"showspikes\")&&(a(\"spikesides\"),a(\"spikethickness\"),a(\"spikecolor\")),a(\"showbackground\")&&a(\"backgroundcolor\"),a(\"showaxeslabels\")}},n.setConvert=function(t){r.Axes.setConvert(t),t.setScale=o},n.initAxes=function(t){var e=t._fullLayout;delete e.xaxis,delete e.yaxis;for(var i=r.Plots.getSubplotIds(e,\"gl3d\"),a=0;a<i.length;++a)for(var o=i[a],s=e[o],l=0;3>l;++l){var u=n.axesNames[l],c=s[u];c._td=t}}},{\"../../plotly\":626}],600:[function(t,e){\"use strict\";function r(t,e,r){return{x:{type:\"number\",dflt:t},y:{type:\"number\",dflt:e},z:{type:\"number\",dflt:r}}}var n=t(\"../../plotly\"),i={};e.exports=i,i.layoutAttributes={bgcolor:{type:\"color\",dflt:\"rgba(0,0,0,0)\"},camera:{up:r(0,0,1),center:r(0,0,0),eye:r(1.25,1.25,1.25)},domain:{x:[{type:\"number\",min:0,max:1},{type:\"number\",min:0,max:1}],y:[{type:\"number\",min:0,max:1,dflt:0},{type:\"number\",min:0,max:1,dflt:1}]},_nestedModules:{xaxis:\"Gl3dAxes\",yaxis:\"Gl3dAxes\",zaxis:\"Gl3dAxes\"},aspectmode:{type:\"enumerated\",values:[\"auto\",\"cube\",\"data\",\"manual\"],dflt:\"auto\"},aspectratio:{x:{type:\"number\",min:0},y:{type:\"number\",min:0},z:{type:\"number\",min:0}}},i.supplyLayoutDefaults=function(t,e,r){function a(t,e){return n.Lib.coerce(c,h,l,t,e)}if(e._hasGL3D){var o,s=n.Plots.getSubplotIdsInData(r,\"gl3d\"),l=i.layoutAttributes;delete e.xaxis,delete e.yaxis;var u=s.length;for(o=0;u>o;++o){var c,f=s[o];void 0!==t[f]?c=t[f]:t[f]=c={};var h=e[f]||{};a(\"bgcolor\");for(var d=Object.keys(l.camera),p=0;p<d.length;p++)a(\"camera.\"+d[p]+\".x\"),a(\"camera.\"+d[p]+\".y\"),a(\"camera.\"+d[p]+\".z\");a(\"domain.x[0]\",o/u),a(\"domain.x[1]\",(o+1)/u),a(\"domain.y[0]\"),a(\"domain.y[1]\");var g=!!a(\"aspectratio.x\")&&!!a(\"aspectratio.y\")&&!!a(\"aspectratio.z\"),v=g?\"manual\":\"auto\",m=a(\"aspectmode\",v);g||(c.aspectratio=h.aspectratio={x:1,y:1,z:1},\"manual\"===m&&(h.aspectmode=\"auto\")),n.Gl3dAxes.supplyLayoutDefaults(c,h,{font:e.font,scene:f,data:r}),e[f]=h}}},i.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),\"scene\"+e}}},{\"../../plotly\":626}],601:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n={};e.exports=n,r.Plots.register(n,\"mesh3d\",[\"gl3d\"]);var i=r.Colorbar.traceColorbarAttributes;n.attributes={x:{type:\"data_array\"},y:{type:\"data_array\"},z:{type:\"data_array\"},i:{type:\"data_array\"},j:{type:\"data_array\"},k:{type:\"data_array\"},delaunayaxis:{type:\"enumerated\",values:[\"x\",\"y\",\"z\"],dflt:\"z\"},alphahull:{type:\"number\",dflt:-1},intensity:{type:\"data_array\"},color:{type:\"color\"},vertexcolor:{type:\"data_array\"},facecolor:{type:\"data_array\"},opacity:{type:\"number\",min:0,max:1,dflt:1},flatshading:{type:\"boolean\",dflt:!1},contour:{show:{type:\"boolean\",dflt:!1},color:{type:\"color\",dflt:\"#000\"},width:{type:\"number\",min:1,max:16,dflt:2}},colorscale:i.colorscale,reversescale:i.reversescale,showscale:i.showscale,lighting:{ambient:{type:\"number\",min:0,max:1,dflt:.8},diffuse:{type:\"number\",min:0,max:1,dflt:.8},specular:{type:\"number\",min:0,max:2,dflt:.05},roughness:{type:\"number\",min:0,max:1,dflt:.5},fresnel:{type:\"number\",min:0,max:5,dflt:.2}},_nestedModules:{colorbar:\"Colorbar\"}},n.supplyDefaults=function(t,e,n,i){function a(n,i){return r.Lib.coerce(t,e,s.attributes,n,i)}function o(t){var e=t.map(function(t){var e=a(t);return e&&Array.isArray(e)?e:null});return e.every(function(t){return t&&t.length===e[0].length})&&e}var s=this,l=o([\"x\",\"y\",\"z\"]),u=o([\"i\",\"j\",\"k\"]);return l?(u&&u.forEach(function(t){for(var e=0;e<t.length;++e)t[e]|=0}),[\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"contour.show\",\"contour.color\",\"contour.width\",\"colorscale\",\"reversescale\",\"flatshading\",\"alphahull\",\"delaunayaxis\",\"opacity\"].forEach(function(t){a(t)}),\"intensity\"in t?(a(\"intensity\"),a(\"showscale\",!0)):(e.showscale=!1,\"vertexColor\"in t?a(\"vertexColor\"):\"faceColor\"in t?a(\"faceColor\"):a(\"color\",n)),e.reversescale&&(e.colorscale=e.colorscale.map(function(t){return[1-t[0],t[1]]}).reverse()),void(e.showscale&&r.Colorbar.supplyDefaults(t,e,i))):void(e.visible=!1)},n.colorbar=r.Colorbar.traceColorbar},{\"../../plotly\":626}],602:[function(t,e){\"use strict\";var r=t(\"../lib/markers.json\"),n=t(\"../../plotly\"),i=n.Scatter.attributes,a=i.line,o=i.marker,s=o.line,l=n.Lib.extendFlat,u={};n.Plots.register(u,\"scatter3d\",[\"gl3d\",\"symbols\",\"markerColorscale\",\"showLegend\"]),u.attributes={x:{type:\"data_array\"},y:{type:\"data_array\"},z:{type:\"data_array\"},text:i.text,surfaceaxis:{type:\"enumerated\",values:[-1,0,1,2],dflt:-1},surfacecolor:{type:\"color\"},projection:{x:{show:{type:\"boolean\",dflt:!1},opacity:{type:\"number\",min:0,max:1,dflt:1},scale:{type:\"number\",min:0,max:10,dflt:2/3}},y:{show:{type:\"boolean\",dflt:!1},opacity:{type:\"number\",min:0,max:1,dflt:1},scale:{type:\"number\",min:0,max:10,dflt:2/3}},z:{show:{type:\"boolean\",dflt:!1},opacity:{type:\"number\",min:0,max:1,dflt:1},scale:{type:\"number\",min:0,max:10,dflt:2/3}}},mode:l(i.mode,{dflt:\"lines+markers\"}),line:{color:a.color,width:a.width,dash:a.dash},marker:{color:o.color,symbol:o.symbol,size:l(o.size,{dflt:8}),sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,opacity:o.opacity,colorscale:o.colorscale,cauto:o.cauto,cmax:o.cmax,cmin:o.cmin,autocolorscale:o.autocolorscale,reversescale:o.reversescale,showscale:o.showscale,line:{color:s.color,width:l(s.width,{arrayOk:!1}),colorscale:s.colorscale,cauto:s.cauto,cmax:s.cmax,cmin:s.cmin,autocolorscale:s.autocolorscale,reversescale:s.reversescale}},textposition:l(i.textposition,{dflt:\"top center\"}),textfont:i.textfont,_nestedModules:{error_x:\"ErrorBars\",error_y:\"ErrorBars\",error_z:\"ErrorBars\",\"marker.colorbar\":\"Colorbar\"}},e.exports=u,u.handleXYZDefaults=function(t,e,r){var n=0,i=r(\"x\"),a=r(\"y\"),o=r(\"z\");return i&&a&&o&&(n=Math.min(i.length,a.length,o.length),n<i.length&&(e.x=i.slice(0,n)),n<a.length&&(e.y=a.slice(0,n)),n<o.length&&(e.z=o.slice(0,n))),n},u.markerSymbols=r,u.supplyDefaults=function(t,e,r,i){function a(r,i){return n.Lib.coerce(t,e,u.attributes,r,i)}var o=n.Scatter,s=u.handleXYZDefaults(t,e,a);if(!s)return void(e.visible=!1);a(\"text\"),a(\"mode\"),o.hasLines(e)&&o.lineDefaults(t,e,r,a),o.hasMarkers(e)&&o.markerDefaults(t,e,r,i,a),o.hasText(e)&&o.textDefaults(t,e,i,a);var l=(e.line||{}).color,c=(e.marker||{}).color;a(\"surfaceaxis\")>=0&&a(\"surfacecolor\",l||c);for(var f=[\"x\",\"y\",\"z\"],h=0;3>h;++h){var d=\"projection.\"+f[h];a(d+\".show\")&&(a(d+\".opacity\"),a(d+\".scale\"))}n.ErrorBars&&(n.ErrorBars.supplyDefaults(t,e,r,{axis:\"z\"}),n.ErrorBars.supplyDefaults(t,e,r,{axis:\"y\",inherit:\"z\"}),n.ErrorBars.supplyDefaults(t,e,r,{axis:\"x\",inherit:\"z\"}))},u.colorbar=n.Scatter.colorbar,u.calc=function(t,e){var r=[{x:!1,y:!1,trace:e,t:{}}];return n.Scatter.arraysToCalcdata(r),n.Scatter.calcMarkerColorscales(e),r}},{\"../../plotly\":626,\"../lib/markers.json\":609}],603:[function(t,e){\"use strict\";var r=t(\"../../plotly\"),n={};e.exports=n,r.Plots.register(n,\"surface\",[\"gl3d\",\"noOpacity\"]);var i=r.Colorbar.traceColorbarAttributes,a={show:{type:\"boolean\",dflt:!1},project:{x:{type:\"boolean\",dflt:!1},y:{type:\"boolean\",dflt:!1},z:{type:\"boolean\",dflt:!1}},color:{type:\"color\",dflt:\"#000\"},usecolormap:{type:\"boolean\",dflt:!1},width:{type:\"number\",min:1,max:16,dflt:2},highlight:{type:\"boolean\",dflt:!1},highlightColor:{type:\"color\",dflt:\"#000\"},highlightWidth:{type:\"number\",min:1,max:16,dflt:2}};n.attributes={x:{type:\"data_array\"},y:{type:\"data_array\"},z:{type:\"data_array\"},text:{type:\"data_array\"},zauto:i.zauto,zmin:i.zmin,zmax:i.zmax,colorscale:i.colorscale,autocolorscale:{type:\"boolean\",dflt:!1},reversescale:i.reversescale,showscale:i.showscale,contours:{x:a,y:a,z:a},hidesurface:{type:\"boolean\",dflt:!1},lighting:{ambient:{type:\"number\",min:0,max:1,dflt:.8},diffuse:{type:\"number\",min:0,max:1,dflt:.8},specular:{type:\"number\",min:0,max:2,dflt:.05},roughness:{type:\"number\",min:0,max:1,dflt:.5},fresnel:{type:\"number\",min:0,max:5,dflt:.2}},opacity:{type:\"number\",min:0,max:1,dflt:1},_nestedModules:{colorbar:\"Colorbar\"}},n.supplyDefaults=function(t,e,n,i){function a(n,i){return r.Lib.coerce(t,e,l.attributes,n,i)}var o,s,l=this,u=a(\"z\");if(!u)return void(e.visible=!1);var c=u[0].length,f=u.length;if(a(\"x\"),a(\"y\"),!Array.isArray(e.x))for(e.x=[],o=0;c>o;++o)e.x[o]=o;if(a(\"text\"),!Array.isArray(e.y))for(e.y=[],o=0;f>o;++o)e.y[o]=o;a(\"lighting.ambient\"),a(\"lighting.diffuse\"),a(\"lighting.specular\"),a(\"lighting.roughness\"),a(\"lighting.fresnel\"),a(\"hidesurface\"),a(\"opacity\"),a(\"colorscale\");var h=[\"x\",\"y\",\"z\"];for(o=0;3>o;++o){var d=\"contours.\"+h[o],p=a(d+\".show\"),g=a(d+\".highlight\");if(p||g)for(s=0;3>s;++s)a(d+\".project.\"+h[s]);p&&(a(d+\".color\"),a(d+\".width\"),a(d+\".usecolormap\")),g&&(a(d+\".highlightColor\"),a(d+\".highlightWidth\"))}r.Colorscale.handleDefaults(t,e,i,a,{prefix:\"\",cLetter:\"z\"})},n.colorbar=r.Colorbar.traceColorbar,n.calc=function(t,e){r.Colorscale.calc(e,e.z,\"\",\"z\")}},{\"../../plotly\":626}],604:[function(t,e){\"use strict\";function r(t,e){function r(t,r){return t in e?e[t]:r}if(!e||!e.visible)return null;var n,i,a,o,s,l=new Array(t.length),u=r(\"type\",\"percent\"),c=r(\"symmetric\",!0),f=+r(\"value\",10),h=+r(\"valueminus\",10),d=r(\"array\",null),p=r(\"arrayminus\",null);if(c&&(h=f,p=d),!(\"data\"!==u||d&&p))return null;for(s=0;s<t.length;++s)switch(n=+t[s],u){case\"percent\":i=Math.abs(n)*f/100,a=Math.abs(n)*h/100,l[s]=[-a,i];break;case\"constant\":l[s]=[-h,f];break;case\"sqrt\":o=Math.sqrt(Math.abs(n)),l[s]=[-o,o];break;case\"data\":l[s]=[+p[s]-n,+d[s]-n]}return l}function n(t){for(var e=0;e<t.length;++e)if(t[e])return t[e].length;return 0}function i(t){var e,i,a,o,s,l=[r(t.x,t.error_x),r(t.y,t.error_y),r(t.z,t.error_z)],u=n(l);if(0===u)return null;for(e=new Array(u),i=0;u>i;++i){for(s=[[0,0,0],[0,0,0]],a=0;3>a;++a)if(l[a])for(o=0;2>o;++o)s[o][a]=l[a][i][o];e[i]=s}return e}e.exports=i},{}],605:[function(t,e){\"use strict\";function r(t,e){t=t||document.body,e=e||{};var r=[.01,1/0];\"distanceLimits\"in e&&(r[0]=e.distanceLimits[0],r[1]=e.distanceLimits[1]),\"zoomMin\"in e&&(r[0]=e.zoomMin),\"zoomMax\"in e&&(r[1]=e.zoomMax);var s=i({center:e.center||[0,0,0],up:e.up||[0,1,0],eye:e.eye||[0,0,10],mode:e.mode||\"orbit\",distanceLimits:r}),l=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],u=0,c=t.clientWidth,f=t.clientHeight,h={keyBindingMode:\"rotate\",view:s,element:t,delay:e.delay||16,rotateSpeed:e.rotateSpeed||1,zoomSpeed:e.zoomSpeed||1,translateSpeed:e.translateSpeed||1,flipX:!!e.flipX,flipY:!!e.flipY,modes:s.modes,tick:function(){var e=n(),r=this.delay,i=e-2*r;s.idle(e-r),s.recalcMatrix(i),s.flush(e-(100+2*r));for(var a=!0,o=s.computedMatrix,h=0;16>h;++h)a=a&&l[h]===o[h],l[h]=o[h];var d=t.clientWidth===c&&t.clientHeight===f;return c=t.clientWidth,f=t.clientHeight,a?!d:(u=Math.exp(s.computedRadius[0]),!0)},lookAt:function(t,e,r){s.lookAt(s.lastT(),t,e,r)},rotate:function(t,e,r){s.rotate(s.lastT(),t,e,r)},pan:function(t,e,r){s.pan(s.lastT(),t,e,r)},translate:function(t,e,r){s.translate(s.lastT(),t,e,r)}};Object.defineProperties(h,{matrix:{get:function(){return s.computedMatrix},set:function(t){return s.setMatrix(s.lastT(),t),s.computedMatrix},enumerable:!0},mode:{get:function(){return s.getMode()},set:function(t){var e=s.computedUp.slice(),r=s.computedEye.slice(),i=s.computedCenter.slice();if(s.setMode(t),\"turntable\"===t){var a=n();s._active.lookAt(a,r,i,e),s._active.lookAt(a+500,r,i,[0,0,1]),s._active.flush(a)}return s.getMode()},enumerable:!0},center:{get:function(){return s.computedCenter},set:function(t){return s.lookAt(s.lastT(),null,t),s.computedCenter},enumerable:!0},eye:{get:function(){return s.computedEye},set:function(t){return s.lookAt(s.lastT(),t),s.computedEye},enumerable:!0},up:{get:function(){return s.computedUp},set:function(t){return s.lookAt(s.lastT(),null,null,t),s.computedUp},enumerable:!0},distance:{get:function(){return u},set:function(t){return s.setDistance(s.lastT(),t),t},enumerable:!0},distanceLimits:{get:function(){return s.getDistanceLimits(r)},set:function(t){return s.setDistanceLimits(t),t},enumerable:!0}}),t.addEventListener(\"contextmenu\",function(t){return t.preventDefault(),!1});var d=0,p=0;return a(t,function(e,r,i,a){var o=\"rotate\"===h.keyBindingMode,l=\"pan\"===h.keyBindingMode,c=\"zoom\"===h.keyBindingMode,f=!!a.control,g=!!a.alt,v=!!a.shift,m=!!(1&e),y=!!(2&e),b=!!(4&e),x=1/t.clientHeight,_=x*(r-d),w=x*(i-p),k=h.flipX?1:-1,A=h.flipY?1:-1,M=n(),L=Math.PI*h.rotateSpeed;if((o&&m&&!f&&!g&&!v||m&&!f&&!g&&v)&&s.rotate(M,k*L*_,-A*L*w,0),(l&&m&&!f&&!g&&!v||y||m&&f&&!g&&!v)&&s.pan(M,-h.translateSpeed*_*u,h.translateSpeed*w*u,0),c&&m&&!f&&!g&&!v||b||m&&!f&&g&&!v){var E=-h.zoomSpeed*w/window.innerHeight*(M-s.lastT())*100;s.pan(M,0,0,u*(Math.exp(E)-1))}return d=r,p=i,!0}),o(t,function(t,e){var r=h.flipX?1:-1,i=h.flipY?1:-1,a=n();if(Math.abs(t)>Math.abs(e))s.rotate(a,0,0,-t*r*Math.PI*h.rotateSpeed/window.innerWidth);else{var o=-h.zoomSpeed*i*e/window.innerHeight*(a-s.lastT())/100;s.pan(a,0,0,u*(Math.exp(o)-1))}},!0),h}e.exports=r;var n=t(\"right-now\"),i=t(\"3d-view\"),a=t(\"mouse-change\"),o=t(\"mouse-wheel\")},{\"3d-view\":34,\"mouse-change\":533,\"mouse-wheel\":537,\"right-now\":564}],606:[function(t,e){e.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},{}],607:[function(t,e){\"use strict\";function r(t,e){var r=l(t);return r[3]*=e,r}function n(t){return o(t).isValid()?t:c}function i(t){return s(t)?t:f}function a(t,e,a){var o,s,l,h,d,p=t.color,g=Array.isArray(p),v=Array.isArray(e),m=[];if(o=void 0!==t.colorscale?u.Colorscale.makeScaleFunction(t.colorscale,t.cmin,t.cmax):n,s=g?function(t,e){return void 0===t[e]?c:o(t[e])}:n,l=v?function(t,e){return void 0===t[e]?f:i(t[e])}:i,g||v)for(var y=0;a>y;y++)h=s(p,y),d=l(e,y),m[y]=r(h,d);else m=r(p,e);return m}var o=t(\"tinycolor2\"),s=t(\"../../isnumeric\"),l=t(\"./str2rgbarray\"),u=t(\"../../plotly\"),c=u.Color.defaultLine,f=1;\n",
"e.exports=a},{\"../../isnumeric\":619,\"../../plotly\":626,\"./str2rgbarray\":611,tinycolor2:566}],608:[function(t,e){\"use strict\";function r(t){for(var e=0;(e=t.indexOf(\"<sup>\",e))>=0;){var r=t.indexOf(\"</sup>\",e);if(e>r)break;t=t.slice(0,e)+s(t.slice(e+5,r))+t.slice(r+6)}return t}function n(t){return t.replace(/\\<br\\>/g,\"\\n\")}function i(t){return t.replace(/\\<.*\\>/g,\"\")}function a(t){for(var e=0;(e=t.indexOf(\"&\",e))>=0;){var r=t.indexOf(\";\",e);if(e>r)e+=1;else{var n=l[t.slice(e+1,r)];t=n?t.slice(0,e)+n+t.slice(r+1):t.slice(0,e)+t.slice(r+1)}}return t}function o(t){return\"\"+a(i(r(n(t))))}var s=t(\"superscript-text\"),l={mu:\"\\u03bc\",amp:\"&\",lt:\"<\",gt:\">\"};e.exports=o},{\"superscript-text\":565}],609:[function(t,e){e.exports={circle:\"\\u25cf\",\"circle-open\":\"\\u25cb\",square:\"\\u25a0\",\"square-open\":\"\\u25a1\",diamond:\"\\u25c6\",\"diamond-open\":\"\\u25c7\",cross:\"+\",x:\"\\u274c\"}},{}],610:[function(t,e){\"use strict\";function r(t,e){var r,n,i=[0,0,0,0];for(r=0;4>r;++r)for(n=0;4>n;++n)i[n]+=t[4*r+n]*e[r];return i}function n(t,e){var n=r(t.projection,r(t.view,r(t.model,[e[0],e[1],e[2],1])));return n}e.exports=n},{}],611:[function(t,e){\"use strict\";function r(t){return t=n(t),i.str2RgbaArray(t.toRgbString())}var n=t(\"tinycolor2\"),i=t(\"arraytools\");e.exports=r},{arraytools:53,tinycolor2:566}],612:[function(t,e){\"use strict\";function r(t){for(var e=new Array(3),r=0;3>r;++r){for(var n=t[r],i=new Array(n.length),a=0;a<n.length;++a)i[a]=n[a].x;e[r]=i}return e}function n(t){for(var e=t.axesOptions,n=t.glplot.axesPixels,l=t.fullSceneLayout,u=[[],[],[]],c=0;3>c;++c){var f=l[o[c]];if(f._length=(n[c].hi-n[c].lo)*n[c].pixelsPerDataUnit/t.dataScale[c],1/0===Math.abs(f._length))u[c]=[];else{f.range[0]=(n[c].lo+t.dataCenter[c])/t.dataScale[c],f.range[1]=(n[c].hi+t.dataCenter[c])/t.dataScale[c],f._m=1/(t.dataScale[c]*n[c].pixelsPerDataUnit),f.range[0]===f.range[1]&&(f.range[0]-=1,f.range[1]+=1);var h=f.tickmode;if(\"auto\"===f.tickmode){f.tickmode=\"linear\";var d=f.nticks||i.Lib.constrain(f._length/40,4,9);i.Axes.autoTicks(f,Math.abs(f.range[1]-f.range[0])/d)}for(var p=i.Axes.calcTicks(f),g=0;g<p.length;++g)p[g].x=p[g].x*t.dataScale[c]-t.dataCenter[c],p[g].text=a(p[g].text);u[c]=p,f.tickmode=h}}e.ticks=u;for(var c=0;3>c;++c){s[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]);for(var g=0;2>g;++g)e.bounds[g][c]=t.glplot.bounds[g][c]}t.contourLevels=r(u)}e.exports=n;var i=t(\"../../plotly\"),a=t(\"./html2unicode\"),o=[\"xaxis\",\"yaxis\",\"zaxis\"],s=[0,0,0]},{\"../../plotly\":626,\"./html2unicode\":608}],613:[function(t,e){\"use strict\";function r(t){var e=t.svgContainer,r=t.container.getBoundingClientRect(),n=r.width,i=r.height;e.setAttributeNS(null,\"viewBox\",\"0 0 \"+n+\" \"+i),e.setAttributeNS(null,\"width\",n),e.setAttributeNS(null,\"height\",i),g(t),t.glplot.axes.update(t.axesOptions);for(var a=Object.keys(t.traces),o=null,s=null,l=t.glplot.selection,u=0;u<a.length;++u){var c=t.traces[a[u]];c.handlePick(l)&&(o=c,s=t.glplot.selection.index),c.setContourLevels&&c.setContourLevels()}if(null!==o){var f=y(t.glplot.cameraParams,l.dataCoordinate);b.Fx.loneHover({x:(.5+.5*f[0]/f[3])*n,y:(.5-.5*f[1]/f[3])*i,xLabel:l.traceCoordinate[0]+\"\",yLabel:l.traceCoordinate[1]+\"\",zLabel:l.traceCoordinate[2]+\"\",text:l.textLabel||\"\",name:o.name,color:o.color},{container:e})}else b.Fx.loneUnhover(e)}function n(t,e,n,i){var a={canvas:n,gl:i,container:t.container,axes:t.axesOptions,spikes:t.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1};if(t.staticMode){if(!l){s=document.createElement(\"canvas\");try{l=s.getContext(\"webgl\",{preserveDrawingBuffer:!0,premultipliedAlpha:!0})}catch(t){throw new Error(\"error creating static canvas/context for image server\")}}a.pixelRatio=t.pixelRatio,a.gl=l,a.canvas=s}try{t.glplot=u(a)}catch(e){var o=function(){};for(var c in t)\"function\"==typeof t[c]&&(t[c]=o);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var f=document.createElement(\"div\");return f.textContent=\"Webgl is not supported by your browser - visit http://get.webgl.org for more info\",f.style.cursor=\"pointer\",f.style.fontSize=\"24px\",f.style.color=b.Color.defaults[0],t.container.appendChild(f),t.container.style.background=\"#FFFFFF\",t.container.onclick=function(){window.open(\"http://get.webgl.org\")},!1}if(t.staticMode||t.glplot.canvas.addEventListener(\"webglcontextlost\",function(t){console.log(\"lost context\"),t.preventDefault()}),!t.camera){var h=e.scene.camera;t.camera=v(t.container,{center:[h.center.x,h.center.y,h.center.z],eye:[h.eye.x,h.eye.y,h.eye.z],up:[h.up.x,h.up.y,h.up.z],zoomMin:.1,zoomMax:100,mode:\"orbit\"})}return t.glplot.mouseListener.enabled=!1,t.glplot.camera=t.camera,t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=r.bind(null,t),t.traces={},!0}function i(t,e){var r=document.createElement(\"div\"),i=t.container,a=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");a.style.position=\"absolute\",a.style.top=a.style.left=\"0px\",a.style.width=a.style.height=\"100%\",a.style[\"z-index\"]=20,a.style[\"pointer-events\"]=\"none\",r.appendChild(a),this.svgContainer=a,r.id=t.id,r.style.position=\"absolute\",r.style.top=r.style.left=\"0px\",r.style.width=r.style.height=\"100%\",i.appendChild(r),this.fullLayout=e,this.id=t.id||\"scene\",this.plotArgs=[[],{},{}],this.axesOptions=c(e[this.id]),this.spikeOptions=f(e[this.id]),this.container=r,this.staticMode=!!t.staticPlot,this.pixelRatio=t.plot3dPixelRatio||2,this.dataScale=[1,1,1],this.dataCenter=[0,0,0],this.contourLevels=[[],[],[]],!n(this,e)}function a(t,e,r,n){for(var i=0;i<e.length;++i)if(Array.isArray(e[i]))for(var a=0;a<e[i].length;++a){var o=t.d2l(e[i][a]);!isNaN(o)&&isFinite(o)&&(n[0][r]=Math.min(n[0][r],o),n[1][r]=Math.max(n[1][r],o))}else{var o=t.d2l(e[i]);!isNaN(o)&&isFinite(o)&&(n[0][r]=Math.min(n[0][r],o),n[1][r]=Math.max(n[1][r],o))}}function o(t,e,r){var n=t.fullSceneLayout;a(n.xaxis,e.x,0,r),a(n.yaxis,e.y,1,r),a(n.zaxis,e.z,2,r)}var s,l,u=t(\"gl-plot3d\"),c=t(\"./convert/axes\"),f=t(\"./convert/spikes\"),h=t(\"./convert/scatter\"),d=t(\"./convert/surface\"),p=t(\"./convert/mesh\"),g=t(\"./lib/tick-marks\"),v=t(\"./lib/camera\"),m=t(\"./lib/str2rgbarray\"),y=t(\"./lib/project\"),b=t(\"../plotly\"),x=i.prototype;x.recoverContext=function(){function t(){return r.isContextLost()?void requestAnimationFrame(t):n(e,e.fullLayout,i,r)?void e.plot.apply(e,e.plotArgs):void console.error(\"catastrophic/unrecoverable webgl error. context lost.\")}var e=this,r=this.glplot.gl,i=this.glplot.canvas;this.glplot.dispose(),requestAnimationFrame(t)};var _=[\"xaxis\",\"yaxis\",\"zaxis\"];x.plot=function(t,e,r){if(this.plotArgs=[t,e,r],!this.glplot.contextLost){var n,i,a,s,l=e[this.id],u=r[this.id];for(this.glplot.clearColor=l.bgcolor?m(l.bgcolor):[0,0,0,0],this.glplot.snapToData=!0,this.fullSceneLayout=l,this.glplotLayout=l,this.axesOptions.merge(l),this.spikeOptions.merge(l),this.handleDragmode(e.dragmode),this.glplot.update({}),a=0;3>a;++a){var c=l[_[a]];b.Gl3dAxes.setConvert(c)}t?Array.isArray(t)||(t=[t]):t=[];for(var f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],a=0;a<t.length;++a){var n=t[a];n.visible===!0&&o(this,n,f)}for(var g=[1,1,1],v=[0,0,0],s=0;3>s;++s)f[0][s]>f[1][s]?(g[s]=1,v[s]=0):(g[s]=f[1][s]===f[0][s]?1:1/(f[1][s]-f[0][s]),v[s]=.5*(f[0][s]+f[1][s])*g[s]);this.dataScale=g,this.dataCenter=v;for(var a=0;a<t.length;++a)if(n=t[a],n.visible===!0){if(i=this.traces[n.uid])i.update(n);else{switch(n.type){case\"scatter3d\":i=h(this,n);break;case\"surface\":i=d(this,n);break;case\"mesh3d\":i=p(this,n)}this.traces[n.uid]=i}i.name=n.name}var y=Object.keys(this.traces);t:for(a=0;a<y.length;++a){for(s=0;s<t.length;++s)if(t[s].uid===y[a]&&t[s].visible===!0)continue t;i=this.traces[y[a]],i.dispose(),delete this.traces[y[a]]}var x=[[0,0,0],[0,0,0]],w=[],k={};for(a=0;3>a;++a){var c=l[_[a]],A=c.type;if(A in k?(k[A].acc*=g[a],k[A].count+=1):k[A]={acc:g[a],count:1},c.autorange){for(x[0][a]=1/0,x[1][a]=-1/0,s=0;s<this.glplot.objects.length;++s){var M=this.glplot.objects[s].bounds;x[0][a]=Math.min(x[0][a],(M[0][a]+v[a])/g[a]),x[1][a]=Math.max(x[1][a],(M[1][a]+v[a])/g[a])}if(\"rangemode\"in c&&\"tozero\"===c.rangemode&&(x[0][a]=Math.min(x[0][a],0),x[1][a]=Math.max(x[1][a],0)),x[0][a]>x[1][a])x[0][a]=-1,x[1][a]=1;else{var L=x[1][a]-x[0][a];x[0][a]-=L/32,x[1][a]+=L/32}}else{var E=l[_[a]].range;x[0][a]=E[0],x[1][a]=E[1]}x[0][a]===x[1][a]&&(x[0][a]-=1,x[1][a]+=1),w[a]=x[1][a]-x[0][a],this.glplot.bounds[0][a]=x[0][a]*g[a]-v[a],this.glplot.bounds[1][a]=x[1][a]*g[a]-v[a]}for(var C=[1,1,1],a=0;3>a;++a){var c=l[_[a]],A=c.type,j=k[A];C[a]=Math.pow(j.acc,1/j.count)/g[a]}var S,T=4;if(\"auto\"===l.aspectmode)S=Math.max.apply(null,C)/Math.min.apply(null,C)<=T?C:[1,1,1];else if(\"cube\"===l.aspectmode)S=[1,1,1];else if(\"data\"===l.aspectmode)S=C;else{if(\"manual\"!==l.aspectmode)throw new Error(\"scene.js aspectRatio was not one of the enumerated types\");var z=l.aspectratio;S=[z.x,z.y,z.z]}l.aspectratio.x=u.aspectratio.x=S[0],l.aspectratio.y=u.aspectratio.y=S[1],l.aspectratio.z=u.aspectratio.z=S[2],this.glplot.aspect=S;var P=l.domain||null,I=e._size||null;if(P&&I){var O=this.container.style;O.position=\"absolute\",O.left=I.l+P.x[0]*I.w+\"px\",O.top=I.t+(1-P.y[1])*I.h+\"px\",O.width=I.w*(P.x[1]-P.x[0])+\"px\",O.height=I.h*(P.y[1]-P.y[0])+\"px\"}}},x.destroy=function(){this.glplot.dispose(),this.container.parentNode.removeChild(this.container),this.glplot=null},x.setCameraToDefault=function(){this.glplot.camera.lookAt([1.25,1.25,1.25],[0,0,0],[0,0,1])},x.getCamera=function(){this.glplot.camera.view.recalcMatrix(this.camera.view.lastT());var t=this.glplot.camera.up,e=this.glplot.camera.center,r=this.glplot.camera.eye;return{up:{x:t[0],y:t[1],z:t[2]},center:{x:e[0],y:e[1],z:e[2]},eye:{x:r[0],y:r[1],z:r[2]}}},x.setCamera=function(t){var e=t.up,r=t.center,n=t.eye;this.glplot.camera.lookAt([n.x,n.y,n.z],[r.x,r.y,r.z],[e.x,e.y,e.z])},x.saveCamera=function(t){function e(t,e,r,n){var i=[\"up\",\"center\",\"eye\"],a=[\"x\",\"y\",\"z\"];return t[i[r]][a[n]]===e[i[r]][a[n]]}var r=this.getCamera(),n=b.Lib.nestedProperty(t,this.id+\".camera\"),i=n.get(),a=!1;if(void 0===i)a=!0;else for(var o=0;3>o;o++)for(var s=0;3>s;s++)if(!e(r,i,o,s)){a=!0;break}return a&&n.set(r),a},x.handleDragmode=function(t){var e=this.camera;e&&(\"orbit\"===t?(e.mode=\"orbit\",e.keyBindingMode=\"rotate\"):\"turntable\"===t?(e.up=[0,0,1],e.mode=\"turntable\",e.keyBindingMode=\"rotate\"):e.keyBindingMode=t)},x.toImage=function(t){t||(t=\"png\"),this.staticMode&&this.container.appendChild(s),this.glplot.redraw();var e=this.glplot.gl,r=e.drawingBufferWidth,n=e.drawingBufferHeight;e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*n*4);e.readPixels(0,0,r,n,e.RGBA,e.UNSIGNED_BYTE,i);for(var a=0,o=n-1;o>a;++a,--o)for(var l=0;r>l;++l)for(var u=0;4>u;++u){var c=i[4*(r*a+l)+u];i[4*(r*a+l)+u]=i[4*(r*o+l)+u],i[4*(r*o+l)+u]=c}var f=document.createElement(\"canvas\");f.width=r,f.height=n;var h=f.getContext(\"2d\"),d=h.createImageData(r,n);d.data.set(i),h.putImageData(d,0,0);var p;switch(t){case\"jpeg\":p=f.toDataURL(\"image/jpeg\");break;case\"webp\":p=f.toDataURL(\"image/webp\");break;default:p=f.toDataURL(\"image/png\")}return this.staticMode&&this.container.removeChild(s),p},e.exports=i},{\"../plotly\":626,\"./convert/axes\":594,\"./convert/mesh\":595,\"./convert/scatter\":596,\"./convert/spikes\":597,\"./convert/surface\":598,\"./lib/camera\":605,\"./lib/project\":610,\"./lib/str2rgbarray\":611,\"./lib/tick-marks\":612,\"gl-plot3d\":356}],614:[function(t,e){\"use strict\";function r(t,e){for(var r=[],n=t.length;n>0;n--)r.push(e);return r}function n(t,e){for(var r=[],n=0;n<t.length;n++)r.push(t[n].p2c(e));return r}function i(t,e){return function(r){var n=t(r),i=e(r);return Math.sqrt(n*n+i*i)}}function a(t,e,i){i||(i=\"xy\");var a=t._fullLayout,h=a._plots[i],d=[i].concat(h.overlays.map(function(t){return t.id})),p=d.map(function(e){return x.Axes.getFromId(t,e,\"x\")}),g=d.map(function(e){return x.Axes.getFromId(t,e,\"y\")}),v=e.hovermode||a.hovermode;if(-1===[\"x\",\"y\",\"closest\"].indexOf(v)||!t.calcdata||t.querySelector(\".zoombox\")||t._dragging)return f(t,e);var m,y,b,_,A,M,L,E,C,j,S,T,z=[],P=[];if(Array.isArray(e))for(v=\"array\",b=0;b<e.length;b++)A=t.calcdata[e[b].curveNumber||0],\"none\"!==A[0].trace.hoverinfo&&P.push(A);else{for(_=0;_<t.calcdata.length;_++)A=t.calcdata[_],M=A[0].trace,\"none\"!==M.hoverinfo&&-1!==d.indexOf(M.xaxis+M.yaxis)&&P.push(A);var I,O;if(e.target&&\"clientX\"in e&&\"clientY\"in e){if($(t).triggerHandler(\"plotly_beforehover\",e)===!1)return;var D=e.target.getBoundingClientRect();if(I=e.clientX-D.left,O=e.clientY-D.top,0>I||I>D.width||0>O||O>D.height)return f(t,e)}else I=\"xpx\"in e?e.xpx:p[0]._length/2,O=\"ypx\"in e?e.ypx:g[0]._length/2;if(m=\"xval\"in e?r(d,e.xval):n(p,I),y=\"yval\"in e?r(d,e.yval):n(g,O),!w(m[0])||!w(y[0]))return console.log(\"Plotly.Fx.hover failed\",e,t),f(t,e)}var R=1/0;for(_=0;_<P.length;_++)if(A=P[_],A&&A[0]&&A[0].trace&&A[0].trace.visible===!0){if(M=A[0].trace,L=d.indexOf(M.xaxis+M.yaxis),E=v,S={cd:A,trace:M,xa:p[L],ya:g[L],name:t.data.length>1||-1!==M.hoverinfo.indexOf(\"name\")?M.name:void 0,index:!1,distance:Math.min(R,k.MAXDIST),color:x.Color.defaultLine,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},T=z.length,\"array\"===E){var N=e[_];\"pointNumber\"in N?(S.index=N.pointNumber,E=\"closest\"):(E=\"\",\"xval\"in N&&(C=N.xval,E=\"x\"),\"yval\"in N&&(j=N.yval,E=E?\"closest\":\"y\"))}else C=m[L],j=y[L];if(M._module&&M._module.hoverPoints){var B=M._module.hoverPoints(S,C,j,E);if(B)for(var F,U=0;U<B.length;U++)F=B[U],w(F.x0)&&w(F.y0)&&z.push(o(F,v))}else console.log(\"unrecognized trace type in hover\",M);\"closest\"===v&&z.length>T&&(z.splice(0,T),R=z[0].distance)}if(0===z.length)return f(t,e);var V=\"y\"===v&&P.length>1;z.sort(function(t,e){return t.distance-e.distance});var H={hovermode:v,rotateLabels:V,bgColor:x.Color.combine(a.plot_bgcolor,a.paper_bgcolor),container:a._hoverlayer,outerContainer:a._paperdiv},q=s(z,H);l(z,V?p[0]:g[0]),u(q,V);var G=t._hoverdata,Y=[];for(b=0;b<z.length;b++){var W=z[b],X={data:W.trace._input,fullData:W.trace,curveNumber:W.trace.index,pointNumber:W.index,x:W.xVal,y:W.yVal,xaxis:W.xa,yaxis:W.ya};void 0!==W.zLabelVal&&(X.z=W.zLabelVal),Y.push(X)}t._hoverdata=Y,c(t,e,G)&&(G&&$(t).trigger(\"plotly_unhover\",{points:G}),$(t).trigger(\"plotly_hover\",{points:t._hoverdata,xaxes:p,yaxes:g,xvals:m,yvals:y}))}function o(t,e){t.posref=\"y\"===e?(t.x0+t.x1)/2:(t.y0+t.y1)/2,t.x0=x.Lib.constrain(t.x0,0,t.xa._length),t.x1=x.Lib.constrain(t.x1,0,t.xa._length),t.y0=x.Lib.constrain(t.y0,0,t.ya._length),t.y1=x.Lib.constrain(t.y1,0,t.ya._length);var r;if(void 0!==t.xLabelVal){r=\"log\"===t.xa.type&&t.xLabelVal<=0;var n=x.Axes.tickText(t.xa,t.xa.c2l(r?-t.xLabelVal:t.xLabelVal),\"hover\");t.xLabel=r?0===t.xLabelVal?\"0\":\"-\"+n.text:n.text,t.xVal=t.xa.c2d(t.xLabelVal)}if(void 0!==t.yLabelVal){r=\"log\"===t.ya.type&&t.yLabelVal<=0;var i=x.Axes.tickText(t.ya,t.ya.c2l(r?-t.yLabelVal:t.yLabelVal),\"hover\");t.yLabel=r?0===t.yLabelVal?\"0\":\"-\"+i.text:i.text,t.yVal=t.ya.c2d(t.yLabelVal)}if(void 0!==t.zLabelVal&&(t.zLabel=String(t.zLabelVal)),void 0!==t.xerr){var a=x.Axes.tickText(t.xa,t.xa.c2l(t.xerr),\"hover\").text;t.xLabel+=void 0!==t.xerrneg?\" +\"+a+\" / -\"+x.Axes.tickText(t.xa,t.xa.c2l(t.xerrneg),\"hover\").text:\" &plusmn; \"+a,\"x\"===e&&(t.distance+=1)}if(void 0!==t.yerr){var o=x.Axes.tickText(t.ya,t.ya.c2l(t.yerr),\"hover\").text;t.yLabel+=void 0!==t.yerrneg?\" +\"+o+\" / -\"+x.Axes.tickText(t.ya,t.ya.c2l(t.yerrneg),\"hover\").text:\" &plusmn; \"+o,\"y\"===e&&(t.distance+=1)}var s=t.trace.hoverinfo;return\"all\"!==s&&(s=s.split(\"+\"),-1===s.indexOf(\"x\")&&(t.xLabel=void 0),-1===s.indexOf(\"y\")&&(t.yLabel=void 0),-1===s.indexOf(\"z\")&&(t.zLabel=void 0),-1===s.indexOf(\"text\")&&(t.text=void 0),-1===s.indexOf(\"name\")&&(t.name=void 0)),t}function s(t,e){var r,n,i=e.hovermode,a=e.rotateLabels,o=e.bgColor,s=e.container,l=e.outerContainer,u=t[0],c=u.xa,f=u.ya,h=\"y\"===i?\"yLabel\":\"xLabel\",d=u[h],p=(d||\"\").split(\" \")[0],g=l.node().getBoundingClientRect(),v=g.top,m=g.width,y=g.height,b=u.distance<=k.MAXDIST&&(\"x\"===i||\"y\"===i);for(r=0;r<t.length;r++)if(n=t[r].trace.hoverinfo,-1===n.indexOf(\"all\")&&-1===n.indexOf(i)){b=!1;break}var w=s.selectAll(\"g.axistext\").data(b?[0]:[]);w.enter().append(\"g\").classed(\"axistext\",!0),w.exit().remove(),w.each(function(){var e=d3.select(this),r=e.selectAll(\"path\").data([0]),n=e.selectAll(\"text\").data([0]);r.enter().append(\"path\").style({fill:x.Color.defaultLine,\"stroke-width\":\"1px\",stroke:x.Color.background}),n.enter().append(\"text\").call(x.Drawing.font,P,z,x.Color.background).attr(\"data-notex\",1),n.text(d).call(x.util.convertToTspans).call(x.Drawing.setPosition,0,0).selectAll(\"tspan.line\").call(x.Drawing.setPosition,0,0),e.attr(\"transform\",\"\");var a=n.node().getBoundingClientRect();if(\"x\"===i){n.attr(\"text-anchor\",\"middle\").call(x.Drawing.setPosition,0,\"top\"===c.side?v-a.bottom-S-T:v-a.top+S+T).selectAll(\"tspan.line\").attr({x:n.attr(\"x\"),y:n.attr(\"y\")});var o=\"top\"===c.side?\"-\":\"\";r.attr(\"d\",\"M0,0L\"+S+\",\"+o+S+\"H\"+(T+a.width/2)+\"v\"+o+(2*T+a.height)+\"H-\"+(T+a.width/2)+\"V\"+o+S+\"H-\"+S+\"Z\"),e.attr(\"transform\",\"translate(\"+(c._offset+(u.x0+u.x1)/2)+\",\"+(f._offset+(\"top\"===c.side?0:f._length))+\")\")}else{n.attr(\"text-anchor\",\"right\"===f.side?\"start\":\"end\").call(x.Drawing.setPosition,(\"right\"===f.side?1:-1)*(T+S),v-a.top-a.height/2).selectAll(\"tspan.line\").attr({x:n.attr(\"x\"),y:n.attr(\"y\")});var s=\"right\"===f.side?\"\":\"-\";r.attr(\"d\",\"M0,0L\"+s+S+\",\"+S+\"V\"+(T+a.height/2)+\"h\"+s+(2*T+a.width)+\"V-\"+(T+a.height/2)+\"H\"+s+S+\"V-\"+S+\"Z\"),e.attr(\"transform\",\"translate(\"+(c._offset+(\"right\"===f.side?c._length:0))+\",\"+(f._offset+(u.y0+u.y1)/2)+\")\")}t=t.filter(function(t){return void 0!==t.zLabelVal||(t[h]||\"\").split(\" \")[0]===p})});var A=s.selectAll(\"g.hovertext\").data(t,function(t){return[t.trace.index,t.index,t.x0,t.y0,t.name,t.attr||\"\"].join(\",\")});return A.enter().append(\"g\").classed(\"hovertext\",!0).each(function(){var t=d3.select(this);t.append(\"rect\").call(x.Color.fill,x.Color.addOpacity(o,.8)),t.append(\"text\").classed(\"name\",!0).call(x.Drawing.font,P,z),t.append(\"path\").style(\"stroke-width\",\"1px\"),t.append(\"text\").classed(\"nums\",!0).call(x.Drawing.font,P,z)}),A.exit().remove(),A.each(function(t){var e=d3.select(this).attr(\"transform\",\"\"),r=\"\",n=\"\",s=x.Color.opacity(t.color)?t.color:x.Color.defaultLine,l=x.Color.combine(s,o),u=_(l).getBrightness()>128?\"#000\":x.Color.background;if(t.name&&void 0===t.zLabelVal){var h=document.createElement(\"p\");h.innerHTML=t.name,r=h.textContent||\"\",r.length>15&&(r=r.substr(0,12)+\"...\")}void 0!==t.zLabel?(void 0!==t.xLabel&&(n+=\"x: \"+t.xLabel+\"<br>\"),void 0!==t.yLabel&&(n+=\"y: \"+t.yLabel+\"<br>\"),n+=(n?\"z: \":\"\")+t.zLabel):b&&t[i+\"Label\"]===d?n=t[(\"x\"===i?\"y\":\"x\")+\"Label\"]||\"\":void 0===t.xLabel?void 0!==t.yLabel&&(n=t.yLabel):n=void 0===t.yLabel?t.xLabel:\"(\"+t.xLabel+\", \"+t.yLabel+\")\",t.text&&(n+=(n?\"<br>\":\"\")+t.text),\"\"===n&&(\"\"===r&&e.remove(),n=r);var p=e.select(\"text.nums\").style(\"fill\",u).call(x.Drawing.setPosition,0,0).text(n).attr(\"data-notex\",1).call(x.util.convertToTspans);p.selectAll(\"tspan.line\").call(x.Drawing.setPosition,0,0);var g=e.select(\"text.name\"),w=0;r&&r!==n?(g.style(\"fill\",l).text(r).call(x.Drawing.setPosition,0,0).attr(\"data-notex\",1).call(x.util.convertToTspans),g.selectAll(\"tspan.line\").call(x.Drawing.setPosition,0,0),w=g.node().getBoundingClientRect().width+2*T):(g.remove(),e.select(\"rect\").remove()),e.select(\"path\").style({fill:l,stroke:u});var k,A,L=p.node().getBoundingClientRect(),E=c._offset+(t.x0+t.x1)/2,C=f._offset+(t.y0+t.y1)/2,j=Math.abs(t.x1-t.x0),z=Math.abs(t.y1-t.y0),P=L.width+S+T+w;t.ty0=v-L.top,t.bx=L.width+2*T,t.by=L.height+2*T,t.anchor=\"start\",t.txwidth=L.width,t.tx2width=w,t.offset=0,a?(t.pos=E,k=y>=C+z/2+P,A=C-z/2-P>=0,\"top\"!==t.idealAlign&&k||!A?k?(C+=z/2,t.anchor=\"start\"):t.anchor=\"middle\":(C-=z/2,t.anchor=\"end\")):(t.pos=C,k=m>=E+j/2+P,A=E-j/2-P>=0,\"left\"!==t.idealAlign&&k||!A?k?(E+=j/2,t.anchor=\"start\"):t.anchor=\"middle\":(E-=j/2,t.anchor=\"end\")),p.attr(\"text-anchor\",t.anchor),w&&g.attr(\"text-anchor\",t.anchor),e.attr(\"transform\",\"translate(\"+E+\",\"+C+\")\"+(a?\"rotate(\"+M+\")\":\"\"))}),A}function l(t,e){function r(t){var e=t[0],r=t[t.length-1];if(i=f-e.pos-e.dp+e.size,a=r.pos+r.dp+r.size-h,i>.01){for(s=t.length-1;s>=0;s--)t[s].dp+=i;n=!1}if(!(.01>a)){if(-.01>i){for(s=t.length-1;s>=0;s--)t[s].dp-=a;n=!1}if(n){var u=0;for(o=0;o<t.length;o++)l=t[o],l.pos+l.dp+l.size>h&&u++;for(o=t.length-1;o>=0&&!(0>=u);o--)l=t[o],l.pos>h-1&&(l.del=!0,u--);for(o=0;o<t.length&&!(0>=u);o++)if(l=t[o],l.pos<f+1)for(l.del=!0,u--,a=2*l.size,s=t.length-1;s>=0;s--)t[s].dp-=a;for(o=t.length-1;o>=0&&!(0>=u);o--)l=t[o],l.pos+l.dp+l.size>h&&(l.del=!0,u--)}}}for(var n,i,a,o,s,l,u,c=0,f=e._offset,h=e._offset+e._length,d=t.map(function(t,r){return[{i:r,dp:0,pos:t.pos,posref:t.posref,size:t.by*(\"x\"===e._id.charAt(0)?E:1)/2}]}).sort(function(t,e){return t[0].posref-e[0].posref});!n&&c<=t.length;){for(c++,n=!0,o=0;o<d.length-1;){var p=d[o],g=d[o+1],v=p[p.length-1],m=g[0];if(i=v.pos+v.dp+v.size-m.pos-m.dp+m.size,i>.01){for(s=g.length-1;s>=0;s--)g[s].dp+=i;for(p.push.apply(p,g),d.splice(o+1,1),u=0,s=p.length-1;s>=0;s--)u+=p[s].dp;for(a=u/p.length,s=p.length-1;s>=0;s--)p[s].dp-=a;n=!1}else o++}d.forEach(r)}for(o=d.length-1;o>=0;o--){var y=d[o];for(s=y.length-1;s>=0;s--){var b=y[s],x=t[b.i];x.offset=b.dp,x.del=b.del}}}function u(t,e){t.each(function(t){var r=d3.select(this);if(t.del)return void r.remove();var n=\"end\"===t.anchor?-1:1,i=r.select(\"text.nums\"),a={start:1,end:-1,middle:0}[t.anchor],o=a*(S+T),s=o+a*(t.txwidth+T),l=0,u=t.offset;\"middle\"===t.anchor&&(o-=t.tx2width/2,s-=t.tx2width/2),e&&(u*=-j,l=t.offset*C),r.select(\"path\").attr(\"d\",\"middle\"===t.anchor?\"M-\"+t.bx/2+\",-\"+t.by/2+\"h\"+t.bx+\"v\"+t.by+\"h-\"+t.bx+\"Z\":\"M0,0L\"+(n*S+l)+\",\"+(S+u)+\"v\"+(t.by/2-S)+\"h\"+n*t.bx+\"v-\"+t.by+\"H\"+(n*S+l)+\"V\"+(u-S)+\"Z\"),i.call(x.Drawing.setPosition,o+l,u+t.ty0-t.by/2+T).selectAll(\"tspan.line\").attr({x:i.attr(\"x\"),y:i.attr(\"y\")}),t.tx2width&&(r.select(\"text.name, text.name tspan.line\").call(x.Drawing.setPosition,s+a*T+l,u+t.ty0-t.by/2+T),r.select(\"rect\").call(x.Drawing.setRect,s+(a-1)*t.tx2width/2+l,u-t.by/2-1,t.tx2width,t.by+2))})}function c(t,e,r){if(!e.target)return!1;if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=t._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber))return!0}return!1}function f(t,e){var r=t._fullLayout;e||(e={}),e.target&&$(t).triggerHandler(\"plotly_beforehover\",e)===!1||(r._hoverlayer.selectAll(\"g\").remove(),e.target&&t._hoverdata&&$(t).trigger(\"plotly_unhover\",{points:t._hoverdata}),t._hoverdata=void 0)}function h(t){if(t._hasGL3D)return[[\"toImage\"],[\"orbitRotation\",\"tableRotation\",\"zoom3d\",\"pan3d\"],[\"resetCameraDefault3d\",\"resetCameraLastSave3d\"],[\"hoverClosest3d\"]];if(t._hasGeo)return[[\"toImage\"],[\"zoomInGeo\",\"zoomOutGeo\",\"resetGeo\"],[\"hoverClosestGeo\"]];var e,r,n=x.Axes.list({_fullLayout:t},null,!0),i=!0;for(e=0;e<n.length;e++)if(!n[e].fixedrange){i=!1;break}return r=i?[[\"toImage\"]]:[[\"toImage\"],[\"zoom2d\",\"pan2d\"],[\"zoomIn2d\",\"zoomOut2d\",\"resetScale2d\",\"autoScale2d\"]],t._hasCartesian?r.push([\"hoverClosest2d\",\"hoverCompare2d\"]):t._hasPie&&r.push([\"hoverClosestPie\"]),r}function d(t,e){return t?\"nsew\"===t?\"pan\"===e?\"move\":\"crosshair\":t.toLowerCase()+\"-resize\":\"pointer\"}function p(t,e,r,n,i,a,o,s){function l(t,e){for(C=0;C<t.length;C++)if(!t[C].fixedrange)return e;return\"\"}function u(t){t[0]=Number(t[0]),t[1]=Number(t[1])}function c(r,n,i){var a=q.getBoundingClientRect();for(Y=n-a.left,W=i-a.top,X={l:Y,r:Y,w:0,t:W,b:W,h:0},Z=t._hmpixcount?t._hmlumcount/t._hmpixcount:_(t._fullLayout.plot_bgcolor).getLuminance(),$=$=\"M0,0H\"+D+\"V\"+R+\"H0V0\",K=!1,J=\"xy\",Q=e.plot.append(\"path\").attr(\"class\",\"zoombox\").style({fill:Z>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"d\",$+\"Z\"),te=e.plot.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:x.Color.background,stroke:x.Color.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"d\",\"M0,0Z\"),C=0;C<N.length;C++)u(N[C].range)}function f(t,e){var r=Math.max(0,Math.min(D,t+Y)),n=Math.max(0,Math.min(R,e+W)),i=Math.abs(r-Y),a=Math.abs(n-W),o=Math.floor(Math.min(a,i,k.MINZOOM)/2);X.l=Math.min(Y,r),X.r=Math.max(Y,r),X.t=Math.min(W,n),X.b=Math.max(W,n),!F||a<Math.min(Math.max(.6*i,k.MINDRAG),k.MINZOOM)?i<k.MINDRAG?(J=\"\",X.r=X.l,X.t=X.b,te.attr(\"d\",\"M0,0Z\")):(X.t=0,X.b=R,J=\"x\",te.attr(\"d\",\"M\"+(X.l-.5)+\",\"+(W-k.MINZOOM-.5)+\"h-3v\"+(2*k.MINZOOM+1)+\"h3ZM\"+(X.r+.5)+\",\"+(W-k.MINZOOM-.5)+\"h3v\"+(2*k.MINZOOM+1)+\"h-3Z\")):!B||i<Math.min(.6*a,k.MINZOOM)?(X.l=0,X.r=D,J=\"y\",te.attr(\"d\",\"M\"+(Y-k.MINZOOM-.5)+\",\"+(X.t-.5)+\"v-3h\"+(2*k.MINZOOM+1)+\"v3ZM\"+(Y-k.MINZOOM-.5)+\",\"+(X.b+.5)+\"v3h\"+(2*k.MINZOOM+1)+\"v-3Z\")):(J=\"xy\",te.attr(\"d\",\"M\"+(X.l-3.5)+\",\"+(X.t-.5+o)+\"h3v\"+-o+\"h\"+o+\"v-3h-\"+(o+3)+\"ZM\"+(X.r+3.5)+\",\"+(X.t-.5+o)+\"h-3v\"+-o+\"h\"+-o+\"v-3h\"+(o+3)+\"ZM\"+(X.r+3.5)+\",\"+(X.b+.5-o)+\"h-3v\"+o+\"h\"+-o+\"v3h\"+(o+3)+\"ZM\"+(X.l-3.5)+\",\"+(X.b+.5-o)+\"h3v\"+o+\"h\"+o+\"v3h-\"+(o+3)+\"Z\")),X.w=X.r-X.l,X.h=X.b-X.t,Q.attr(\"d\",$+\"M\"+X.l+\",\"+X.t+\"v\"+X.h+\"h\"+X.w+\"v-\"+X.h+\"h-\"+X.w+\"Z\"),K||(Q.transition().style(\"fill\",Z>.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),te.transition().style(\"opacity\",1).duration(200),K=!0)}function h(t,e,r){var n,i,a;for(n=0;n<t.length;n++)i=t[n],i.fixedrange||(a=i.range,i.range=[a[0]+(a[1]-a[0])*e,a[0]+(a[1]-a[0])*r])}function p(e,r){return Math.min(X.h,X.w)<2*k.MINDRAG?(2===r?M():v(t),y(t)):((\"xy\"===J||\"x\"===J)&&h(P,X.l/D,X.r/D),(\"xy\"===J||\"y\"===J)&&h(I,(R-X.b)/R,(R-X.t)/R),y(t),L(J),void(O&&t.data&&t._context.showTips&&(x.Lib.notifier(\"Double-click to<br>zoom back out\",\"long\"),O=!1)))}function m(e,r){var n=1===(o+s).length;if(e)L();else if(2!==r||n)if(1===r&&n){var i=o?I[0]:P[0],a=\"s\"===o||\"w\"===s?0:1,l=i._name+\".range[\"+a+\"]\",u=g(i,a),c=\"left\",f=\"middle\";if(i.fixedrange)return;o?(f=\"n\"===o?\"top\":\"bottom\",\"right\"===i.side&&(c=\"right\")):\"e\"===s&&(c=\"right\"),H.call(x.util.makeEditable,null,{immediate:!0,background:T.paper_bgcolor,text:String(u),fill:i.tickfont?i.tickfont.color:\"#444\",horizontalAlign:c,verticalAlign:f}).on(\"edit\",function(e){var r=\"category\"===i.type?i.c2l(e):i.d2l(e);void 0!==r&&x.relayout(t,l,r)})}else v(t);else M()}function b(e){function r(t,e,r){if(!t.fixedrange){u(t.range);var n=t.range,i=n[0]+(n[1]-n[0])*e;t.range=[i+(n[0]-i)*r,i+(n[1]-i)*r]}}if(t._context.scrollZoom||T._enablescrollzoom){var n=t.querySelector(\".plotly\");if(!(n.scrollHeight-n.clientHeight>10||n.scrollWidth-n.clientWidth>10)){clearTimeout(re);var i=-e.deltaY;if(isFinite(i)||(i=e.wheelDelta/10),!isFinite(i))return void console.log(\"did not find wheel motion attributes\",e);var a,l=Math.exp(-Math.min(Math.max(i,-20),20)/100),c=ie.draglayer.select(\".nsewdrag\").node().getBoundingClientRect(),f=(e.clientX-c.left)/c.width,h=ee[0]+ee[2]*f,d=(c.bottom-e.clientY)/c.height,p=ee[1]+ee[3]*(1-d);if(s){for(a=0;a<P.length;a++)r(P[a],f,l);ee[2]*=l,ee[0]=h-ee[2]*f}if(o){for(a=0;a<I.length;a++)r(I[a],d,l);ee[3]*=l,ee[1]=p-ee[3]*(1-d)}return E(ee),A(o,s),re=setTimeout(function(){ee=[0,0,D,R],L()},ne),x.Lib.pauseEvent(e)}}}function w(t,e){function r(t,e){for(var r=0;r<t.length;r++){var n=t[r];n.fixedrange||(n.range=[n._r[0]-e/n._m,n._r[1]-e/n._m])}}function n(t){return 1-(t>=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function i(t,e,r){for(var i=1-e,a=0,o=0;o<t.length;o++){var s=t[o];s.fixedrange||(a=o,s.range[e]=s._r[i]+(s._r[e]-s._r[i])/n(r/s._length))}return t[a]._length*(t[a]._r[e]-t[a].range[e])/(t[a]._r[e]-t[a]._r[i])}return\"ew\"===B||\"ns\"===F?(B&&r(P,t),F&&r(I,e),E([B?-t:0,F?-e:0,D,R]),void A(F,B)):(\"w\"===B?t=i(P,0,t):\"e\"===B?t=i(P,1,-t):B||(t=0),\"n\"===F?e=i(I,1,e):\"s\"===F?e=i(I,0,-e):F||(e=0),E([\"w\"===B?t:0,\"n\"===F?e:0,D-t,R-e]),void A(F,B))}function A(e,r){function n(t){for(a=0;a<t.length;a++)t[a].fixedrange||o.push(t[a]._id)}function i(n,i){var s;for(a=0;a<n.length;a++)s=n[a],(r&&-1!==o.indexOf(s.xref)||e&&-1!==o.indexOf(s.yref))&&i.draw(t,a)}var a,o=[];for(r&&n(P),e&&n(I),a=0;a<o.length;a++)x.Axes.doTicks(t,o[a],!0);i(T.annotations||[],x.Annotations),i(T.shapes||[],x.Shapes)}function M(){var e,r,n=t._context.doubleClick,i=(B?P:[]).concat(F?I:[]),a={};if(\"autosize\"===n)for(r=0;r<i.length;r++)e=i[r],e.fixedrange||(a[e._name+\".autorange\"]=!0);else if(\"reset\"===n)for(r=0;r<i.length;r++)e=i[r],a[e._name+\".range\"]=e._rangeInitial.slice();else if(\"reset+autosize\"===n)for(r=0;r<i.length;r++)e=i[r],e.fixedrange||(void 0===e._rangeInitial||e.range[0]===e._rangeInitial[0]&&e.range[1]===e._rangeInitial[1]?a[e._name+\".autorange\"]=!0:a[e._name+\".range\"]=e._rangeInitial.slice());x.relayout(t,a)}function L(e){for(var r={},n=0;n<N.length;n++){var i=N[n];e&&-1===e.indexOf(i._id.charAt(0))||(i._r[0]!==i.range[0]&&(r[i._name+\".range[0]\"]=i.range[0]),i._r[1]!==i.range[1]&&(r[i._name+\".range[1]\"]=i.range[1]),i.range=i._r.slice())}E([0,0,D,R]),x.relayout(t,r)}function E(t){var e,r,n,i,a,l,u=T._plots,c=Object.keys(u);for(e=0;e<c.length;e++)if(r=u[c[e]],n=r.x(),i=r.y(),a=s&&-1!==P.indexOf(n)&&!n.fixedrange,l=o&&-1!==I.indexOf(i)&&!i.fixedrange,a||l){var f=[0,0,n._length,i._length];a&&(f[0]=t[0],f[2]=t[2]),l&&(f[1]=t[1],f[3]=t[3]),r.plot.attr(\"viewBox\",f.join(\" \"))}}var C,j,S,T=t._fullLayout,z=[e].concat(o&&s?e.overlays:[]),P=[e.x()],I=[e.y()],D=P[0]._length,R=I[0]._length;for(C=1;C<z.length;C++)j=z[C].x(),S=z[C].y(),-1===P.indexOf(j)&&P.push(j),-1===I.indexOf(S)&&I.push(S);var N=P.concat(I),B=l(P,s),F=l(I,o),U=d(F+B,T.dragmode),V=o+s+\"drag\",H=e.draglayer.selectAll(\".\"+V).data([0]);H.enter().append(\"rect\").classed(\"drag\",!0).classed(V,!0).style({fill:\"transparent\",\"stroke-width\":0}).attr(\"data-subplot\",e.id),H.call(x.Drawing.setRect,r,n,i,a).call(k.setCursor,U);var q=H.node();if(!F&&!B)return q.onmousedown=null,q.style.pointerEvents=o+s===\"nsew\"?\"all\":\"none\",q;var G={element:q,prepFn:function(t,e,r){o+s===\"nsew\"&&(\"zoom\"===T.dragmode?!t.shiftKey:t.shiftKey)?(G.moveFn=f,G.doneFn=p,c(t,e,r)):(G.moveFn=w,G.doneFn=m)}};k.dragElement(G);var Y,W,X,Z,$,K,J,Q,te,ee=[0,0,D,R],re=null,ne=300,ie=e.mainplot?T._plots[e.mainplot]:e;return o.length*s.length!==1&&(void 0!==q.onwheel?q.onwheel=b:void 0!==q.onmousewheel&&(q.onmousewheel=b)),q}function g(t,e){var r,n=t.range[e],i=Math.abs(n-t.range[1-e]);return\"date\"===t.type?x.Lib.ms2DateTime(n,i):\"log\"===t.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,d3.format(\".\"+r+\"g\")(Math.pow(10,n))):(r=Math.floor(Math.log(Math.abs(n))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,d3.format(\".\"+String(r)+\"g\")(n))}function v(t){t._dragging=!0;var e=t._replotPending;t._replotPending=!1,setTimeout(function(){t._replotPending=e,m(t)},k.DBLCLICKDELAY)}function m(t){t._dragging=!1,t._replotPending&&x.plot(t)}function y(t){d3.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}function b(){var t=document.createElement(\"div\");t.className=\"dragcover\";var e=t.style;return e.position=\"fixed\",e.left=0,e.right=0,e.top=0,e.bottom=0,e[\"z-index\"]=999999999,e.background=\"none\",document.body.appendChild(t),t}var x=t(\"./plotly\"),_=t(\"tinycolor2\"),w=t(\"./isnumeric\"),k=e.exports={};k.layoutAttributes={dragmode:{type:\"enumerated\",values:[\"zoom\",\"pan\",\"orbit\",\"turntable\"]},hovermode:{type:\"enumerated\",values:[\"x\",\"y\",\"closest\",!1]}},k.supplyLayoutDefaults=function(t,e,r){function n(r,n){return x.Lib.coerce(t,e,k.layoutAttributes,r,n)}var i,a;n(\"dragmode\",e._hasGL3D?\"turntable\":\"zoom\"),e._hasCartesian?(i=e._isHoriz=k.isHoriz(r),a=i?\"y\":\"x\"):a=\"closest\",n(\"hovermode\",a)},k.isHoriz=function(t){var e,r,n=!0;for(e=0;e<t.length;e++)if(r=t[e],\"h\"!==r.orientation){n=!1;break}return n},k.DBLCLICKDELAY=600,k.MINDRAG=8,k.MINZOOM=20;var A=20;k.init=function(t){var e=t._fullLayout;if(!(e._hasGL3D||e._hasGeo||t._context.staticPlot)){var r=Object.keys(e._plots).sort(function(t,r){if((e._plots[t].mainplot&&!0)===(e._plots[r].mainplot&&!0)){var n=t.split(\"y\"),i=r.split(\"y\");return n[0]===i[0]?Number(n[1]||1)-Number(i[1]||1):Number(n[0]||1)-Number(i[0]||1)}return e._plots[t].mainplot?1:-1});r.forEach(function(r){var n=e._plots[r],i=n.x(),a=n.y(),o=(i._linepositions[r]||[])[3],s=(a._linepositions[r]||[])[3];if(w(o)&&\"top\"===i.side&&(o-=A),w(s)&&\"right\"!==a.side&&(s-=A),!n.mainplot){var l=p(t,n,0,0,i._length,a._length,\"ns\",\"ew\");$(l).mousemove(function(n){k.hover(t,n,r),e._lasthover=l,e._hoversubplot=r}).mouseout(function(e){x.Lib.isIE()||k.unhover(t,e)\n",
"}).click(function(e){k.click(t,e)}),p(t,n,-A,-A,A,A,\"n\",\"w\"),p(t,n,i._length,-A,A,A,\"n\",\"e\"),p(t,n,-A,a._length,A,A,\"s\",\"w\"),p(t,n,i._length,a._length,A,A,\"s\",\"e\")}w(o)&&(\"free\"===i.anchor&&(o-=e._size.h*(1-a.domain[1])),p(t,n,.1*i._length,o,.8*i._length,A,\"\",\"ew\"),p(t,n,0,o,.1*i._length,A,\"\",\"w\"),p(t,n,.9*i._length,o,.1*i._length,A,\"\",\"e\")),w(s)&&(\"free\"===a.anchor&&(s-=e._size.w*i.domain[0]),p(t,n,s,.1*a._length,A,.8*a._length,\"ns\",\"\"),p(t,n,s,.9*a._length,A,.1*a._length,\"s\",\"\"),p(t,n,s,0,A,.1*a._length,\"n\",\"\"))}),$(e._hoverlayer.node()).off(\"mousemove click\").on(\"mousemove\",function(r){r.target=e._lasthover,k.hover(t,r,e._hoversubplot)}).on(\"click\",function(r){r.target=e._lasthover,k.click(t,r)}),e._hoverlayer.node().onmousedown=function(t){e._lasthover.onmousedown(t)}}};var M=60,L=Math.PI*M/180,E=1/Math.sin(L),C=Math.cos(L),j=Math.sin(L),S=6,T=3,z=13,P=\"Arial, sans-serif\";k.MAXDIST=20;var I=100;k.hover=function(t,e,r){return\"string\"==typeof t&&(t=document.getElementById(t)),void 0===t._lastHoverTime&&(t._lastHoverTime=0),void 0!==t._hoverTimer&&(clearTimeout(t._hoverTimer),t._hoverTimer=void 0),Date.now()>t._lastHoverTime+I?(a(t,e,r),void(t._lastHoverTime=Date.now())):void(t._hoverTimer=setTimeout(function(){a(t,e,r),t._lastHoverTime=Date.now(),t._hoverTimer=void 0},I))},k.unhover=function(t,e,r){\"string\"==typeof t&&(t=document.getElementById(t)),t._hoverTimer&&(clearTimeout(t._hoverTimer),t._hoverTimer=void 0),f(t,e,r)},k.getDistanceFunction=function(t,e,r,n){return\"closest\"===t?n||i(e,r):\"x\"===t?e:r},k.getClosest=function(t,e,r){if(r.index!==!1)r.index>=0&&r.index<t.length?r.distance=0:r.index=!1;else for(var n=0;n<t.length;n++){var i=e(t[n]);i<r.distance&&(r.index=n,r.distance=i)}return r},k.loneHover=function(t,e){var r={color:t.color||x.Color.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,trace:{index:0,hoverinfo:\"\"},xa:{_offset:0},ya:{_offset:0},index:0},n=d3.select(e.container),i=e.outerContainer?d3.select(e.outerContainer):n,a={hovermode:\"closest\",rotateLabels:!1,bgColor:e.bgColor||x.Color.background,container:n,outerContainer:i},o=s([r],a);return u(o,a.rotateLabels),o.node()},k.loneUnhover=function(t){var e=t instanceof d3.selection?t:d3.select(t);e.selectAll(\"g.hovertext\").remove()},k.click=function(t,e){t._hoverdata&&e&&e.target&&($(t).trigger(\"plotly_click\",{points:t._hoverdata}),e.stopImmediatePropagation())},k.modeBar=function(t){function e(){var e=new x.ModeBar({buttons:a,container:i._paperdiv.node(),Plotly:x,graphInfo:t});return i._privateplot&&d3.select(e.element).append(\"span\").classed(\"badge-private float--left\",!0).text(\"PRIVATE\"),e}function r(){x.Lib.removeElement(t.querySelector(\".modebar\"))}var n,i=t._fullLayout||{};if(!t._context.displayModeBar)return r();var a=h(i);i._modebar||(r(),i._modebar=e()),n=i._modebar,n.hasButtons(a)||(i._modebar.cleanup(),i._modebar=e())};var O=!0;k.dragAlign=function(t,e,r,n,i){var a=(t-r)/(n-r),o=a+e/(n-r),s=(a+o)/2;return\"left\"===i||\"bottom\"===i?a:\"center\"===i||\"middle\"===i?s:\"right\"===i||\"top\"===i?o:2/3-s>a?a:o>4/3-s?o:s};var D=[[\"sw-resize\",\"s-resize\",\"se-resize\"],[\"w-resize\",\"move\",\"e-resize\"],[\"nw-resize\",\"n-resize\",\"ne-resize\"]];k.dragCursors=function(t,e,r,n){return t=\"left\"===r?0:\"center\"===r?1:\"right\"===r?2:x.Lib.constrain(Math.floor(3*t),0,2),e=\"bottom\"===n?0:\"middle\"===n?1:\"top\"===n?2:x.Lib.constrain(Math.floor(3*e),0,2),D[e][t]},k.dragElement=function(t){function e(e){var f=document.querySelector(\".plugin-editable\");return f&&d3.select(f).on(\"blur\").call(f),u._dragged=!1,u._dragging=!0,i=e.clientX,a=e.clientY,l=e.target,o=(new Date).getTime(),o-u._mouseDownTime<k.DBLCLICKDELAY?c+=1:(c=1,u._mouseDownTime=o),t.prepFn&&t.prepFn(e,i,a),s=b(),s.onmousemove=r,s.onmouseup=n,s.onmouseout=n,x.Lib.pauseEvent(e)}function r(e){var r=e.clientX-i,n=e.clientY-a;return Math.abs(r)<k.MINDRAG&&(r=0),Math.abs(n)<k.MINDRAG&&(n=0),(r||n)&&(u._dragged=!0),t.moveFn&&t.moveFn(r,n,u._dragged),x.Lib.pauseEvent(e)}function n(e){if(s.onmousemove=null,s.onmouseup=null,s.onmouseout=null,x.Lib.removeElement(s),!u._dragging)return void(u._dragged=!1);if(u._dragging=!1,(new Date).getTime()-u._mouseDownTime>k.DBLCLICKDELAY&&(c=Math.max(c-1,1)),t.doneFn&&t.doneFn(u._dragged,c),!u._dragged){var r=document.createEvent(\"MouseEvents\");r.initEvent(\"click\",!0,!0),l.dispatchEvent(r)}return m(u),u._dragged=!1,x.Lib.pauseEvent(e)}var i,a,o,s,l,u=x.Lib.getPlotDiv(t.element)||{},c=1;u._mouseDownTime||(u._mouseDownTime=0),t.element.onmousedown=e,t.element.style.pointerEvents=\"all\"},k.setCursor=function(t,e){(t.attr(\"class\")||\"\").split(\" \").forEach(function(e){0===e.indexOf(\"cursor-\")&&t.classed(e,!1)}),e&&t.classed(\"cursor-\"+e,!0)},k.inbox=function(t,e){return 0>t*e||0===t?k.MAXDIST*(.6-.3/Math.max(3,Math.abs(t-e))):1/0}},{\"./isnumeric\":619,\"./plotly\":626,tinycolor2:566}],615:[function(t,e){\"use strict\";function r(t){return\"object\"==typeof t&&(t=t.type),t}function n(t,e){try{t._fullLayout._paper.style(\"background\",e)}catch(t){console.log(t)}}function i(t,e){t._fullLayout._paperdiv.style(\"background\",\"white\"),n(t,e)}function a(t,e){t._context||(t._context=$.extend({},N.defaultConfig));var r=t._context;e&&(Object.keys(e).forEach(function(t){t in r&&(r[t]=\"setBackground\"===t&&\"opaque\"===e[t]?i:e[t])}),t._fullLayout&&t._fullLayout._modebar&&delete t._fullLayout._modebar),r.staticPlot&&(r.workspace=!1,r.editable=!1,r.autosizable=!1,r.scrollZoom=!1,r.doubleClick=!1,r.showTips=!1,r.showLink=!1,r.displayModeBar=!1)}function o(t,e){e.text(\"\");var r=e.append(\"a\").attr({\"xlink:xlink:href\":\"#\",class:\"link--impt link--embedview\",\"font-weight\":\"bold\"}).text(t._context.linkText+\" \"+String.fromCharCode(187));if(t._context.sendData)r.on(\"click\",function(){$(t).trigger(\"plotly_beforeexport\");var e=window.PLOTLYENV&&window.PLOTLYENV.BASE_URL||\"https://plot.ly\",r=$('<div id=\"hiddenform\" style=\"display:none;\"><form action=\"'+e+'/external\" method=\"post\" target=\"_blank\"><input type=\"text\" name=\"data\" /></form></div>').appendTo(t);return r.find(\"input\").val(N.graphJson(t,!1,\"keepdata\")),r.find(\"form\").submit(),r.remove(),$(t).trigger(\"plotly_afterexport\"),!1});else{var n=window.location.pathname.split(\"/\");r.attr({\"xlink:xlink:show\":\"new\",\"xlink:xlink:href\":\"/\"+n[2].split(\".\")[0]+\"/\"+n[1]})}}function s(t){var e,r,n,i,a,o=t._fullLayout,s=t._fullData,l=N.getSubplotIds(o,\"gl3d\");for(o._paperdiv.style({width:o.width+\"px\",height:o.height+\"px\"}),t._context.setBackground(t,o.paper_bgcolor),e=0;e<l.length;e++)r=l[e],n=N.getSubplotData(s,\"gl3d\",r),i=o[r]._scene,void 0===i&&(a={container:t.querySelector(\".gl-container\"),id:r,staticPlot:t._context.staticPlot,plot3dPixelRatio:t._context.plot3dPixelRatio},i=new O.Scene(a,o),o[r]._scene=i),i.plot(n,o,t.layout)}function l(t){var e,r,n,i,a=t._fullLayout,o=t._fullData,s=N.getSubplotIds(a,\"geo\");for(void 0===window.PlotlyGeoAssets&&(window.PlotlyGeoAssets={topojsons:{}}),e=0;e<s.length;e++)r=s[e],n=N.getSubplotData(o,\"geo\",r),i=a[r]._geo,void 0===i&&(i=new O.Geo({id:r,container:a._geocontainer.node()},a),a[r]._geo=i),i.plot(n,a)}function u(t,e,r){var n=d3.select(t).selectAll(\".plot-container\").data([0]);n.enter().insert(\"div\",\":first-child\").classed(\"plot-container plotly\",!0);var i=n.selectAll(\".svg-container\").data([0]);i.enter().append(\"div\").classed(\"svg-container\",!0).style(\"position\",\"relative\"),i.html(\"\"),e&&(t.data=e),r&&(t.layout=r),O.micropolar.manager.fillLayout(t),\"initial\"===t._fullLayout.autosize&&t._context.autosizable&&(j(t,{}),t._fullLayout.autosize=r.autosize=!0),i.style({width:t._fullLayout.width+\"px\",height:t._fullLayout.height+\"px\"}),t.framework=O.micropolar.manager.framework(t),t.framework({data:t.data,layout:t.layout},i.node()),t.framework.setUndoPoint();var a=t.framework.svg(),o=1,s=t._fullLayout.title;\"\"!==s&&s||(o=0);var l=\"Click to enter title\",u=function(){this.call(O.util.convertToTspans)},c=a.select(\".title-group text\").call(u);if(t._context.editable){c.attr({\"data-unformatted\":s}),s&&s!==l||(o=.2,c.attr({\"data-unformatted\":l}).text(l).style({opacity:o}).on(\"mouseover.opacity\",function(){d3.select(this).transition().duration(100).style(\"opacity\",1)}).on(\"mouseout.opacity\",function(){d3.select(this).transition().duration(1e3).style(\"opacity\",0)}));var f=function(){this.call(O.util.makeEditable).on(\"edit\",function(e){t.framework({layout:{title:e}}),this.attr({\"data-unformatted\":e}).text(e).call(u),this.call(f)}).on(\"cancel\",function(){var t=this.attr(\"data-unformatted\");this.text(t).call(u)})};c.call(f),O.ToolPanel.tweakMenu(t)}return t._context.setBackground(t,t._fullLayout.paper_bgcolor),N.addLinks(t),Promise.resolve()}function c(t){var e,r;t||(t={}),t.xaxis1&&(t.xaxis||(t.xaxis=t.xaxis1),delete t.xaxis1),t.yaxis1&&(t.yaxis||(t.yaxis=t.yaxis1),delete t.yaxis1);var n=O.Axes.list({_fullLayout:t});for(e=0;e<n.length;e++){var i=n[e];i.anchor&&\"free\"!==i.anchor&&(i.anchor=O.Axes.cleanId(i.anchor)),i.overlaying&&(i.overlaying=O.Axes.cleanId(i.overlaying)),i.type||(i.isdate?i.type=\"date\":i.islog?i.type=\"log\":i.isdate===!1&&i.islog===!1&&(i.type=\"linear\")),(\"withzero\"===i.autorange||\"tozero\"===i.autorange)&&(i.autorange=!0,i.rangemode=\"tozero\"),delete i.islog,delete i.isdate,delete i.categories,p(i,\"domain\")&&delete i.domain,void 0!==i.autotick&&(void 0===i.tickmode&&(i.tickmode=i.autotick?\"auto\":\"linear\"),delete i.autotick)}void 0===t.annotations||Array.isArray(t.annotations)||(console.log(\"annotations must be an array\"),delete t.annotations);var a=(t.annotations||[]).length;for(e=0;a>e;e++){var o=t.annotations[e];o.ref&&(\"paper\"===o.ref?(o.xref=\"paper\",o.yref=\"paper\"):\"data\"===o.ref&&(o.xref=\"x\",o.yref=\"y\"),delete o.ref),f(o,\"xref\"),f(o,\"yref\")}void 0===t.shapes||Array.isArray(t.shapes)||(console.log(\"shapes must be an array\"),delete t.shapes);var s=(t.shapes||[]).length;for(e=0;s>e;e++){var l=t.shapes[e];f(l,\"xref\"),f(l,\"yref\")}var u=t.legend;u&&(u.x>3?(u.x=1.02,u.xanchor=\"left\"):u.x<-2&&(u.x=-.02,u.xanchor=\"right\"),u.y>3?(u.y=1.02,u.yanchor=\"bottom\"):u.y<-2&&(u.y=-.02,u.yanchor=\"top\")),\"rotate\"===t.dragmode&&(t.dragmode=\"orbit\"),t.scene1&&(t.scene||(t.scene=t.scene1),delete t.scene1);var c,h,d,g,v,m,y,b=N.getSubplotIds(t,\"gl3d\");for(e=0;e<b.length;e++)if(c=t[b[e]],h=c.cameraposition,Array.isArray(h)&&4===h[0].length){for(d=h[0],v=h[1],g=h[2],m=D([],d),y=[],r=0;3>r;++r)y[r]=v[e]+g*m[2+4*r];c.camera={eye:{x:y[0],y:y[1],z:y[2]},center:{x:v[0],y:v[1],z:v[2]},up:{x:m[1],y:m[5],z:m[9]}},delete c.cameraposition}return O.Lib.markTime(\"finished rest of cleanLayout, starting color\"),O.Color.clean(t),O.Lib.markTime(\"finished cleanLayout color.clean\"),t}function f(t,e){var r=t[e],n=e.charAt(0);r&&\"paper\"!==r&&(t[e]=O.Axes.cleanId(r,n))}function h(t,e){for(var r=[],n=(t.concat(Array.isArray(e)?e:[]).filter(function(t){return\"uid\"in t}).map(function(t){return t.uid})),i=0;i<t.length;i++){var a=t[i];if(!(\"uid\"in a)||-1!==r.indexOf(a.uid)){var o,s;for(s=0;100>s&&(o=O.Lib.randstr(n),-1!==r.indexOf(o));s++);a.uid=O.Lib.randstr(n),n.push(a.uid)}if(r.push(a.uid),\"histogramy\"===a.type&&\"xbins\"in a&&!(\"ybins\"in a)&&(a.ybins=a.xbins,delete a.xbins),a.error_y&&\"opacity\"in a.error_y){var l=O.Color.defaults,u=a.error_y.color||(N.traceIs(a,\"bar\")?O.Color.defaultLine:l[i%l.length]);a.error_y.color=O.Color.addOpacity(O.Color.rgb(u),O.Color.opacity(u)*a.error_y.opacity),delete a.error_y.opacity}\"bardir\"in a&&(\"h\"!==a.bardir||!N.traceIs(a,\"bar\")&&\"histogram\"!==a.type.substr(0,9)||(a.orientation=\"h\",L(a)),delete a.bardir),\"histogramy\"===a.type&&L(a),(\"histogramx\"===a.type||\"histogramy\"===a.type)&&(a.type=\"histogram\"),\"scl\"in a&&(a.colorscale=a.scl,delete a.scl),\"reversescl\"in a&&(a.reversescale=a.reversescl,delete a.reversescl),a.xaxis&&(a.xaxis=O.Axes.cleanId(a.xaxis,\"x\")),a.yaxis&&(a.yaxis=O.Axes.cleanId(a.yaxis,\"y\")),a.scene&&(a.scene=O.Gl3dLayout.cleanId(a.scene)),N.traceIs(a,\"pie\")||(Array.isArray(a.textposition)?a.textposition=a.textposition.map(d):a.textposition&&(a.textposition=d(a.textposition))),p(a,\"line\")&&delete a.line,\"marker\"in a&&(p(a.marker,\"line\")&&delete a.marker.line,p(a,\"marker\")&&delete a.marker),O.Lib.markTime(\"finished rest of cleanData, starting color\"),O.Color.clean(a),O.Lib.markTime(\"finished cleanData color.clean\")}}function d(t){var e=\"middle\",r=\"center\";return-1!==t.indexOf(\"top\")?e=\"top\":-1!==t.indexOf(\"bottom\")&&(e=\"bottom\"),-1!==t.indexOf(\"left\")?r=\"left\":-1!==t.indexOf(\"right\")&&(r=\"right\"),e+\" \"+r}function p(t,e){return e in t&&\"object\"==typeof t[e]&&0===Object.keys(t[e]).length}function g(t){if(t&&t.margin){var e,r=t.width,n=t.height,i=t.margin,a=r-(i.l+i.r),o=n-(i.t+i.b);0>a&&(e=(r-1)/(i.l+i.r),i.l=Math.floor(e*i.l),i.r=Math.floor(e*i.r)),0>o&&(e=(n-1)/(i.t+i.b),i.t=Math.floor(e*i.t),i.b=Math.floor(e*i.b))}}function v(t,e){for(var r,n=N.getSubplotIds(e,\"gl3d\"),i=0;i<n.length;i++)r=n[i],!t[r]&&e[r]._scene&&e[r]._scene.destroy()}function m(t,e){for(var r,n=Object.keys(e),i=0;i<n.length;++i){var a=n[i];if(\"_\"===a.charAt(0)||\"function\"==typeof e[a]){if(a in t)continue;t[a]=e[a]}else if(Array.isArray(e[a])&&Array.isArray(t[a])&&e[a].length&&$.isPlainObject(e[a][0])){if(e[a].length!==t[a].length)throw new Error(\"relinkPrivateKeys needs equal length arrays\");for(r=0;r<e[a].length;r++)m(t[a][r],e[a][r])}else $.isPlainObject(e[a])&&$.isPlainObject(t[a])&&(m(t[a],e[a]),Object.keys(t[a]).length||delete t[a])}}function y(t){var e,r,n,i,a=O.Axes.list(t),o=t._fullData,s=t._fullLayout,l=t.calcdata=new Array(o.length);for(t.firstscatter=!0,t.numboxes=0,t._hmpixcount=0,t._hmlumcount=0,s._piecolormap={},s._piedefaultcolorcount=0,e=0;e<a.length;e++)a[e]._categories=[];for(e=0;e<o.length;e++)r=o[e],n=r._module,i=[],n&&r.visible===!0&&n.calc&&(i=n.calc(t,r)),Array.isArray(i)&&i[0]||(i=[{x:!1,y:!1}]),i[0].t||(i[0].t={}),i[0].trace=r,O.Lib.markTime(\"done with calcdata for \"+e),l[e]=i}function b(t,e){var r,n,i=e+1,a=[];for(r=0;r<t.length;r++)n=t[r],a.push(0>n?i+n:n);return a}function x(t,e,r){var n,i;for(n=0;n<e.length;n++){if(i=e[n],i!==parseInt(i,10))throw new Error(\"all values in \"+r+\" must be integers\");if(i>=t.data.length||i<-t.data.length)throw new Error(r+\" must be valid indices for gd.data.\");if(e.indexOf(i,n+1)>-1||i>=0&&e.indexOf(-t.data.length+i)>-1||0>i&&e.indexOf(t.data.length+i)>-1)throw new Error(\"each index in \"+r+\" must be unique.\")}}function _(t,e,r){if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(\"undefined\"==typeof e)throw new Error(\"currentIndices is a required argument.\");if(Array.isArray(e)||(e=[e]),x(t,e,\"currentIndices\"),\"undefined\"==typeof r||Array.isArray(r)||(r=[r]),\"undefined\"!=typeof r&&x(t,r,\"newIndices\"),\"undefined\"!=typeof r&&e.length!==r.length)throw new Error(\"current and new indices must be of equal length.\")}function w(t,e,r){var n,i;if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(\"undefined\"==typeof e)throw new Error(\"traces must be defined.\");for(Array.isArray(e)||(e=[e]),n=0;n<e.length;n++)if(i=e[n],\"object\"!=typeof i||Array.isArray(i)||null===i)throw new Error(\"all values in traces array must be non-array objects\");if(\"undefined\"==typeof r||Array.isArray(r)||(r=[r]),\"undefined\"!=typeof r&&r.length!==e.length)throw new Error(\"if indices is specified, traces.length must equal indices.length\")}function k(t,e,r,n){var i=$.isPlainObject(n);if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array\");if(!$.isPlainObject(e))throw new Error(\"update must be a key:value object\");if(\"undefined\"==typeof r)throw new Error(\"indices must be an integer or array of integers\");x(t,r,\"indices\");for(var a in e){if(!Array.isArray(e[a])||e[a].length!==r.length)throw new Error(\"attribute \"+a+\" must be an array of length equal to indices array length\");if(!(!i||a in n&&Array.isArray(n[a])&&n[a].length===e[a].length))throw new Error(\"when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object\")}}function A(t,e,r,n){var i,a,o,s,l,u=$.isPlainObject(n),c=[];Array.isArray(r)||(r=[r]),r=b(r,t.data.length-1);for(var f in e)for(var h=0;h<r.length;h++){if(i=t.data[r[h]],o=O.Lib.nestedProperty(i,f),a=o.get(),s=e[f][h],!Array.isArray(s))throw new Error(\"attribute: \"+f+\" index: \"+h+\" must be an array\");if(!Array.isArray(a))throw new Error(\"cannot extend missing or non-array attribute: \"+f);l=u?n[f][h]:n,R(l)||(l=-1),c.push({prop:o,target:a,insert:s,maxp:Math.floor(l)})}return c}function M(t,e,r,n,i,a){k(t,e,r,n);for(var o,s,l,u=A(t,e,r,n),c=[],f={},h={},d=0;d<u.length;d++)s=u[d].prop,l=u[d].maxp,o=i(u[d].target,u[d].insert),l>=0&&l<o.length&&(c=a(o,l)),l=u[d].target.length,s.set(o),Array.isArray(f[s.astr])||(f[s.astr]=[]),Array.isArray(h[s.astr])||(h[s.astr]=[]),f[s.astr].push(c),h[s.astr].push(l);return{update:f,maxPoints:h}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment