From c61736b44e515ea4d590bf2aae3e04ddecc192e7 Mon Sep 17 00:00:00 2001 From: Aiden Date: Mon, 10 Nov 2025 19:26:41 +0800 Subject: [PATCH] Add Plotly Graph Card configuration --- Plotly Graph Card/Card_LD2450.yaml | 170 ++ Plotly Graph Card/plotly-graph-card.js | 2361 ++++++++++++++++++++++++ 2 files changed, 2531 insertions(+) create mode 100644 Plotly Graph Card/Card_LD2450.yaml create mode 100755 Plotly Graph Card/plotly-graph-card.js diff --git a/Plotly Graph Card/Card_LD2450.yaml b/Plotly Graph Card/Card_LD2450.yaml new file mode 100644 index 0000000..ef2461d --- /dev/null +++ b/Plotly Graph Card/Card_LD2450.yaml @@ -0,0 +1,170 @@ +type: custom:plotly-graph +title: Target Positions +refresh_interval: 1 +hours_to_show: current_day +layout: + height: 230 + margin: + l: 50 + r: 20 + t: 20 + b: 40 + showlegend: true + xaxis: + dtick: 1000 + gridcolor: RGBA(200,200,200,0.15) + zerolinecolor: RGBA(200,200,200,0.15) + type: number + fixedrange: true + range: + - 4000 + - -4000 + yaxis: + dtick: 1000 + gridcolor: RGBA(200,200,200,0.15) + zerolinecolor: RGBA(200,200,200,0.15) + scaleanchor: x + scaleratio: 1 + fixedrange: true + range: + - 7500 + - 0 +entities: + - entity: "" + name: Target1 + marker: + size: 12 + line: + shape: spline + width: 5 + x: + - $ex hass.states["sensor.replace_me_target_1_x"].state + "y": + - $ex hass.states["sensor.replace_me_target_1_y"].state + - entity: "" + name: Target2 + marker: + size: 12 + line: + shape: spline + width: 5 + x: + - $ex hass.states["sensor.replace_me_target_2_x"].state + "y": + - $ex hass.states["sensor.replace_me_target_2_y"].state + - entity: "" + name: Target3 + marker: + size: 12 + line: + shape: spline + width: 5 + x: + - $ex hass.states["sensor.replace_me_target_3_x"].state + "y": + - $ex hass.states["sensor.replace_me_target_3_y"].state + - entity: "" + name: Zone1 + mode: lines + fill: toself + fillcolor: RGBA(20,200,0,0.06) + line: + color: RGBA(20,200,0,0.2) + shape: line + width: 2 + x: + - $ex hass.states["number.replace_me_zone_1_x1"].state + - $ex hass.states["number.replace_me_zone_1_x1"].state + - $ex hass.states["number.replace_me_zone_1_x2"].state + - $ex hass.states["number.replace_me_zone_1_x2"].state + - $ex hass.states["number.replace_me_zone_1_x1"].state + "y": + - $ex hass.states["number.replace_me_zone_1_y1"].state + - $ex hass.states["number.replace_me_zone_1_y2"].state + - $ex hass.states["number.replace_me_zone_1_y2"].state + - $ex hass.states["number.replace_me_zone_1_y1"].state + - $ex hass.states["number.replace_me_zone_1_y1"].state + - entity: "" + name: Zone2 + mode: lines + fill: toself + fillcolor: RGBA(200,0,255,0.06) + line: + color: RGBA(200,0,255,0.2) + shape: line + width: 2 + x: + - $ex hass.states["number.replace_me_zone_2_x1"].state + - $ex hass.states["number.replace_me_zone_2_x1"].state + - $ex hass.states["number.replace_me_zone_2_x2"].state + - $ex hass.states["number.replace_me_zone_2_x2"].state + - $ex hass.states["number.replace_me_zone_2_x1"].state + "y": + - $ex hass.states["number.replace_me_zone_2_y1"].state + - $ex hass.states["number.replace_me_zone_2_y2"].state + - $ex hass.states["number.replace_me_zone_2_y2"].state + - $ex hass.states["number.replace_me_zone_2_y1"].state + - $ex hass.states["number.replace_me_zone_2_y1"].state + - entity: "" + name: Zone3 + mode: lines + fill: toself + fillcolor: RGBA(200,120,55,0.06) + line: + color: RGBA(200,120,55,0.2) + shape: line + width: 2 + x: + - $ex hass.states["number.replace_me_zone_3_x1"].state + - $ex hass.states["number.replace_me_zone_3_x1"].state + - $ex hass.states["number.replace_me_zone_3_x2"].state + - $ex hass.states["number.replace_me_zone_3_x2"].state + - $ex hass.states["number.replace_me_zone_3_x1"].state + "y": + - $ex hass.states["number.replace_me_zone_3_y1"].state + - $ex hass.states["number.replace_me_zone_3_y2"].state + - $ex hass.states["number.replace_me_zone_3_y2"].state + - $ex hass.states["number.replace_me_zone_3_y1"].state + - $ex hass.states["number.replace_me_zone_3_y1"].state + - entity: "" + name: Coverage + mode: lines + fill: tonexty + fillcolor: rgba(168, 216, 234, 0.15) + line: + shape: line + width: 1 + dash: dot + x: + - 0 + - $ex 7500 * Math.sin((2 * Math.PI)/360 * 60) + - 4500 + - 4000 + - 3000 + - 2000 + - 1000 + - 0 + - -1000 + - -2000 + - -3000 + - -4000 + - -4500 + - $ex -7500 * Math.sin((2 * Math.PI)/360 * 60) + - 0 + "y": + - 0 + - $ex 7500 * Math.cos((2 * Math.PI)/360 * 60) + - $ex Math.sqrt( 7500**2 - 4500**2 ) + - $ex Math.sqrt( 7500**2 - 4000**2 ) + - $ex Math.sqrt( 7500**2 - 3000**2 ) + - $ex Math.sqrt( 7500**2 - 2000**2 ) + - $ex Math.sqrt( 7500**2 - 1000**2 ) + - 7500 + - $ex Math.sqrt( 7500**2 - 1000**2 ) + - $ex Math.sqrt( 7500**2 - 2000**2 ) + - $ex Math.sqrt( 7500**2 - 3000**2 ) + - $ex Math.sqrt( 7500**2 - 4000**2 ) + - $ex Math.sqrt( 7500**2 - 4500**2 ) + - $ex 7500 * Math.cos((2 * Math.PI)/360 * 60) + - 0 +raw_plotly_config: true diff --git a/Plotly Graph Card/plotly-graph-card.js b/Plotly Graph Card/plotly-graph-card.js new file mode 100755 index 0000000..2bfcb77 --- /dev/null +++ b/Plotly Graph Card/plotly-graph-card.js @@ -0,0 +1,2361 @@ +"use strict";(()=>{var b9e=Object.create;var wb=Object.defineProperty;var w9e=Object.getOwnPropertyDescriptor;var _9e=Object.getOwnPropertyNames;var T9e=Object.getPrototypeOf,A9e=Object.prototype.hasOwnProperty;var M9e=(e,t,r)=>t in e?wb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Xi=(e,t)=>()=>(e&&(t=e(e=0)),t);var J=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),k9e=(e,t)=>{for(var r in t)wb(e,r,{get:t[r],enumerable:!0})},GO=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of _9e(t))!A9e.call(e,i)&&i!==r&&wb(e,i,{get:()=>t[i],enumerable:!(n=w9e(t,i))||n.enumerable});return e};var $c=(e,t,r)=>(r=e!=null?b9e(T9e(e)):{},GO(t||!e||!e.__esModule?wb(r,"default",{value:e,enumerable:!0}):r,e)),s1=e=>GO(wb({},"__esModule",{value:!0}),e);var X3=(e,t,r)=>(M9e(e,typeof t!="symbol"?t+"":t,r),r);var q6=J((ZCt,WO)=>{var S9e=typeof global=="object"&&global&&global.Object===Object&&global;WO.exports=S9e});var Hh=J((JCt,XO)=>{var C9e=q6(),E9e=typeof self=="object"&&self&&self.Object===Object&&self,L9e=C9e||E9e||Function("return this")();XO.exports=L9e});var _b=J(($Ct,ZO)=>{var D9e=Hh(),R9e=D9e.Symbol;ZO.exports=R9e});var QO=J((KCt,KO)=>{var JO=_b(),$O=Object.prototype,P9e=$O.hasOwnProperty,I9e=$O.toString,Tb=JO?JO.toStringTag:void 0;function q9e(e){var t=P9e.call(e,Tb),r=e[Tb];try{e[Tb]=void 0;var n=!0}catch{}var i=I9e.call(e);return n&&(t?e[Tb]=r:delete e[Tb]),i}KO.exports=q9e});var tB=J((QCt,eB)=>{var F9e=Object.prototype,z9e=F9e.toString;function N9e(e){return z9e.call(e)}eB.exports=N9e});var l1=J((e6t,iB)=>{var rB=_b(),O9e=QO(),B9e=tB(),U9e="[object Null]",H9e="[object Undefined]",nB=rB?rB.toStringTag:void 0;function j9e(e){return e==null?e===void 0?H9e:U9e:nB&&nB in Object(e)?O9e(e):B9e(e)}iB.exports=j9e});var Z3=J((t6t,aB)=>{function V9e(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}aB.exports=V9e});var F6=J((r6t,oB)=>{var Y9e=l1(),G9e=Z3(),W9e="[object AsyncFunction]",X9e="[object Function]",Z9e="[object GeneratorFunction]",J9e="[object Proxy]";function $9e(e){if(!G9e(e))return!1;var t=Y9e(e);return t==X9e||t==Z9e||t==W9e||t==J9e}oB.exports=$9e});var lB=J((n6t,sB)=>{var K9e=Hh(),Q9e=K9e["__core-js_shared__"];sB.exports=Q9e});var cB=J((i6t,fB)=>{var z6=lB(),uB=function(){var e=/[^.]+$/.exec(z6&&z6.keys&&z6.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function eFe(e){return!!uB&&uB in e}fB.exports=eFe});var N6=J((a6t,hB)=>{var tFe=Function.prototype,rFe=tFe.toString;function nFe(e){if(e!=null){try{return rFe.call(e)}catch{}try{return e+""}catch{}}return""}hB.exports=nFe});var dB=J((o6t,vB)=>{var iFe=F6(),aFe=cB(),oFe=Z3(),sFe=N6(),lFe=/[\\^$.*+?()[\]{}|]/g,uFe=/^\[object .+?Constructor\]$/,fFe=Function.prototype,cFe=Object.prototype,hFe=fFe.toString,vFe=cFe.hasOwnProperty,dFe=RegExp("^"+hFe.call(vFe).replace(lFe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function pFe(e){if(!oFe(e)||aFe(e))return!1;var t=iFe(e)?dFe:uFe;return t.test(sFe(e))}vB.exports=pFe});var gB=J((s6t,pB)=>{function gFe(e,t){return e?.[t]}pB.exports=gFe});var Zd=J((l6t,mB)=>{var mFe=dB(),yFe=gB();function xFe(e,t){var r=yFe(e,t);return mFe(r)?r:void 0}mB.exports=xFe});var xB=J((u6t,yB)=>{var bFe=Zd(),wFe=function(){try{var e=bFe(Object,"defineProperty");return e({},"",{}),e}catch{}}();yB.exports=wFe});var _B=J((f6t,wB)=>{var bB=xB();function _Fe(e,t,r){t=="__proto__"&&bB?bB(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}wB.exports=_Fe});var AB=J((c6t,TB)=>{function TFe(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var l=o[e?s:++i];if(r(a[l],l,a)===!1)break}return t}}TB.exports=TFe});var kB=J((h6t,MB)=>{var AFe=AB(),MFe=AFe();MB.exports=MFe});var CB=J((v6t,SB)=>{function kFe(e,t){for(var r=-1,n=Array(e);++r{function SFe(e){return e!=null&&typeof e=="object"}EB.exports=SFe});var DB=J((p6t,LB)=>{var CFe=l1(),EFe=u1(),LFe="[object Arguments]";function DFe(e){return EFe(e)&&CFe(e)==LFe}LB.exports=DFe});var O6=J((g6t,IB)=>{var RB=DB(),RFe=u1(),PB=Object.prototype,PFe=PB.hasOwnProperty,IFe=PB.propertyIsEnumerable,qFe=RB(function(){return arguments}())?RB:function(e){return RFe(e)&&PFe.call(e,"callee")&&!IFe.call(e,"callee")};IB.exports=qFe});var Ov=J((m6t,qB)=>{var FFe=Array.isArray;qB.exports=FFe});var zB=J((y6t,FB)=>{function zFe(){return!1}FB.exports=zFe});var B6=J((Ab,f1)=>{var NFe=Hh(),OFe=zB(),BB=typeof Ab=="object"&&Ab&&!Ab.nodeType&&Ab,NB=BB&&typeof f1=="object"&&f1&&!f1.nodeType&&f1,BFe=NB&&NB.exports===BB,OB=BFe?NFe.Buffer:void 0,UFe=OB?OB.isBuffer:void 0,HFe=UFe||OFe;f1.exports=HFe});var U6=J((x6t,UB)=>{var jFe=9007199254740991,VFe=/^(?:0|[1-9]\d*)$/;function YFe(e,t){var r=typeof e;return t=t??jFe,!!t&&(r=="number"||r!="symbol"&&VFe.test(e))&&e>-1&&e%1==0&&e{var GFe=9007199254740991;function WFe(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=GFe}HB.exports=WFe});var VB=J((w6t,jB)=>{var XFe=l1(),ZFe=J3(),JFe=u1(),$Fe="[object Arguments]",KFe="[object Array]",QFe="[object Boolean]",eze="[object Date]",tze="[object Error]",rze="[object Function]",nze="[object Map]",ize="[object Number]",aze="[object Object]",oze="[object RegExp]",sze="[object Set]",lze="[object String]",uze="[object WeakMap]",fze="[object ArrayBuffer]",cze="[object DataView]",hze="[object Float32Array]",vze="[object Float64Array]",dze="[object Int8Array]",pze="[object Int16Array]",gze="[object Int32Array]",mze="[object Uint8Array]",yze="[object Uint8ClampedArray]",xze="[object Uint16Array]",bze="[object Uint32Array]",Ya={};Ya[hze]=Ya[vze]=Ya[dze]=Ya[pze]=Ya[gze]=Ya[mze]=Ya[yze]=Ya[xze]=Ya[bze]=!0;Ya[$Fe]=Ya[KFe]=Ya[fze]=Ya[QFe]=Ya[cze]=Ya[eze]=Ya[tze]=Ya[rze]=Ya[nze]=Ya[ize]=Ya[aze]=Ya[oze]=Ya[sze]=Ya[lze]=Ya[uze]=!1;function wze(e){return JFe(e)&&ZFe(e.length)&&!!Ya[XFe(e)]}jB.exports=wze});var GB=J((_6t,YB)=>{function _ze(e){return function(t){return e(t)}}YB.exports=_ze});var XB=J((Mb,c1)=>{var Tze=q6(),WB=typeof Mb=="object"&&Mb&&!Mb.nodeType&&Mb,kb=WB&&typeof c1=="object"&&c1&&!c1.nodeType&&c1,Aze=kb&&kb.exports===WB,H6=Aze&&Tze.process,Mze=function(){try{var e=kb&&kb.require&&kb.require("util").types;return e||H6&&H6.binding&&H6.binding("util")}catch{}}();c1.exports=Mze});var j6=J((T6t,$B)=>{var kze=VB(),Sze=GB(),ZB=XB(),JB=ZB&&ZB.isTypedArray,Cze=JB?Sze(JB):kze;$B.exports=Cze});var QB=J((A6t,KB)=>{var Eze=CB(),Lze=O6(),Dze=Ov(),Rze=B6(),Pze=U6(),Ize=j6(),qze=Object.prototype,Fze=qze.hasOwnProperty;function zze(e,t){var r=Dze(e),n=!r&&Lze(e),i=!r&&!n&&Rze(e),a=!r&&!n&&!i&&Ize(e),o=r||n||i||a,s=o?Eze(e.length,String):[],l=s.length;for(var u in e)(t||Fze.call(e,u))&&!(o&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Pze(u,l)))&&s.push(u);return s}KB.exports=zze});var tU=J((M6t,eU)=>{var Nze=Object.prototype;function Oze(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||Nze;return e===r}eU.exports=Oze});var nU=J((k6t,rU)=>{function Bze(e,t){return function(r){return e(t(r))}}rU.exports=Bze});var aU=J((S6t,iU)=>{var Uze=nU(),Hze=Uze(Object.keys,Object);iU.exports=Hze});var sU=J((C6t,oU)=>{var jze=tU(),Vze=aU(),Yze=Object.prototype,Gze=Yze.hasOwnProperty;function Wze(e){if(!jze(e))return Vze(e);var t=[];for(var r in Object(e))Gze.call(e,r)&&r!="constructor"&&t.push(r);return t}oU.exports=Wze});var uU=J((E6t,lU)=>{var Xze=F6(),Zze=J3();function Jze(e){return e!=null&&Zze(e.length)&&!Xze(e)}lU.exports=Jze});var $3=J((L6t,fU)=>{var $ze=QB(),Kze=sU(),Qze=uU();function eNe(e){return Qze(e)?$ze(e):Kze(e)}fU.exports=eNe});var hU=J((D6t,cU)=>{var tNe=kB(),rNe=$3();function nNe(e,t){return e&&tNe(e,t,rNe)}cU.exports=nNe});var dU=J((R6t,vU)=>{function iNe(){this.__data__=[],this.size=0}vU.exports=iNe});var V6=J((P6t,pU)=>{function aNe(e,t){return e===t||e!==e&&t!==t}pU.exports=aNe});var Sb=J((I6t,gU)=>{var oNe=V6();function sNe(e,t){for(var r=e.length;r--;)if(oNe(e[r][0],t))return r;return-1}gU.exports=sNe});var yU=J((q6t,mU)=>{var lNe=Sb(),uNe=Array.prototype,fNe=uNe.splice;function cNe(e){var t=this.__data__,r=lNe(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():fNe.call(t,r,1),--this.size,!0}mU.exports=cNe});var bU=J((F6t,xU)=>{var hNe=Sb();function vNe(e){var t=this.__data__,r=hNe(t,e);return r<0?void 0:t[r][1]}xU.exports=vNe});var _U=J((z6t,wU)=>{var dNe=Sb();function pNe(e){return dNe(this.__data__,e)>-1}wU.exports=pNe});var AU=J((N6t,TU)=>{var gNe=Sb();function mNe(e,t){var r=this.__data__,n=gNe(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}TU.exports=mNe});var Cb=J((O6t,MU)=>{var yNe=dU(),xNe=yU(),bNe=bU(),wNe=_U(),_Ne=AU();function h1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var TNe=Cb();function ANe(){this.__data__=new TNe,this.size=0}kU.exports=ANe});var EU=J((U6t,CU)=>{function MNe(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}CU.exports=MNe});var DU=J((H6t,LU)=>{function kNe(e){return this.__data__.get(e)}LU.exports=kNe});var PU=J((j6t,RU)=>{function SNe(e){return this.__data__.has(e)}RU.exports=SNe});var K3=J((V6t,IU)=>{var CNe=Zd(),ENe=Hh(),LNe=CNe(ENe,"Map");IU.exports=LNe});var Eb=J((Y6t,qU)=>{var DNe=Zd(),RNe=DNe(Object,"create");qU.exports=RNe});var NU=J((G6t,zU)=>{var FU=Eb();function PNe(){this.__data__=FU?FU(null):{},this.size=0}zU.exports=PNe});var BU=J((W6t,OU)=>{function INe(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}OU.exports=INe});var HU=J((X6t,UU)=>{var qNe=Eb(),FNe="__lodash_hash_undefined__",zNe=Object.prototype,NNe=zNe.hasOwnProperty;function ONe(e){var t=this.__data__;if(qNe){var r=t[e];return r===FNe?void 0:r}return NNe.call(t,e)?t[e]:void 0}UU.exports=ONe});var VU=J((Z6t,jU)=>{var BNe=Eb(),UNe=Object.prototype,HNe=UNe.hasOwnProperty;function jNe(e){var t=this.__data__;return BNe?t[e]!==void 0:HNe.call(t,e)}jU.exports=jNe});var GU=J((J6t,YU)=>{var VNe=Eb(),YNe="__lodash_hash_undefined__";function GNe(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=VNe&&t===void 0?YNe:t,this}YU.exports=GNe});var XU=J(($6t,WU)=>{var WNe=NU(),XNe=BU(),ZNe=HU(),JNe=VU(),$Ne=GU();function v1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var ZU=XU(),KNe=Cb(),QNe=K3();function eOe(){this.size=0,this.__data__={hash:new ZU,map:new(QNe||KNe),string:new ZU}}JU.exports=eOe});var QU=J((Q6t,KU)=>{function tOe(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}KU.exports=tOe});var Lb=J((eEt,eH)=>{var rOe=QU();function nOe(e,t){var r=e.__data__;return rOe(t)?r[typeof t=="string"?"string":"hash"]:r.map}eH.exports=nOe});var rH=J((tEt,tH)=>{var iOe=Lb();function aOe(e){var t=iOe(this,e).delete(e);return this.size-=t?1:0,t}tH.exports=aOe});var iH=J((rEt,nH)=>{var oOe=Lb();function sOe(e){return oOe(this,e).get(e)}nH.exports=sOe});var oH=J((nEt,aH)=>{var lOe=Lb();function uOe(e){return lOe(this,e).has(e)}aH.exports=uOe});var lH=J((iEt,sH)=>{var fOe=Lb();function cOe(e,t){var r=fOe(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}sH.exports=cOe});var Q3=J((aEt,uH)=>{var hOe=$U(),vOe=rH(),dOe=iH(),pOe=oH(),gOe=lH();function d1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var mOe=Cb(),yOe=K3(),xOe=Q3(),bOe=200;function wOe(e,t){var r=this.__data__;if(r instanceof mOe){var n=r.__data__;if(!yOe||n.length{var _Oe=Cb(),TOe=SU(),AOe=EU(),MOe=DU(),kOe=PU(),SOe=cH();function p1(e){var t=this.__data__=new _Oe(e);this.size=t.size}p1.prototype.clear=TOe;p1.prototype.delete=AOe;p1.prototype.get=MOe;p1.prototype.has=kOe;p1.prototype.set=SOe;hH.exports=p1});var dH=J((lEt,vH)=>{var COe="__lodash_hash_undefined__";function EOe(e){return this.__data__.set(e,COe),this}vH.exports=EOe});var gH=J((uEt,pH)=>{function LOe(e){return this.__data__.has(e)}pH.exports=LOe});var yH=J((fEt,mH)=>{var DOe=Q3(),ROe=dH(),POe=gH();function eT(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new DOe;++t{function IOe(e,t){for(var r=-1,n=e==null?0:e.length;++r{function qOe(e,t){return e.has(t)}wH.exports=qOe});var G6=J((vEt,TH)=>{var FOe=yH(),zOe=bH(),NOe=_H(),OOe=1,BOe=2;function UOe(e,t,r,n,i,a){var o=r&OOe,s=e.length,l=t.length;if(s!=l&&!(o&&l>s))return!1;var u=a.get(e),f=a.get(t);if(u&&f)return u==t&&f==e;var c=-1,h=!0,d=r&BOe?new FOe:void 0;for(a.set(e,t),a.set(t,e);++c{var HOe=Hh(),jOe=HOe.Uint8Array;AH.exports=jOe});var SH=J((pEt,kH)=>{function VOe(e){var t=-1,r=Array(e.size);return e.forEach(function(n,i){r[++t]=[i,n]}),r}kH.exports=VOe});var EH=J((gEt,CH)=>{function YOe(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}CH.exports=YOe});var IH=J((mEt,PH)=>{var LH=_b(),DH=MH(),GOe=V6(),WOe=G6(),XOe=SH(),ZOe=EH(),JOe=1,$Oe=2,KOe="[object Boolean]",QOe="[object Date]",eBe="[object Error]",tBe="[object Map]",rBe="[object Number]",nBe="[object RegExp]",iBe="[object Set]",aBe="[object String]",oBe="[object Symbol]",sBe="[object ArrayBuffer]",lBe="[object DataView]",RH=LH?LH.prototype:void 0,W6=RH?RH.valueOf:void 0;function uBe(e,t,r,n,i,a,o){switch(r){case lBe:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case sBe:return!(e.byteLength!=t.byteLength||!a(new DH(e),new DH(t)));case KOe:case QOe:case rBe:return GOe(+e,+t);case eBe:return e.name==t.name&&e.message==t.message;case nBe:case aBe:return e==t+"";case tBe:var s=XOe;case iBe:var l=n&JOe;if(s||(s=ZOe),e.size!=t.size&&!l)return!1;var u=o.get(e);if(u)return u==t;n|=$Oe,o.set(e,t);var f=WOe(s(e),s(t),n,i,a,o);return o.delete(e),f;case oBe:if(W6)return W6.call(e)==W6.call(t)}return!1}PH.exports=uBe});var FH=J((yEt,qH)=>{function fBe(e,t){for(var r=-1,n=t.length,i=e.length;++r{var cBe=FH(),hBe=Ov();function vBe(e,t,r){var n=t(e);return hBe(e)?n:cBe(n,r(e))}zH.exports=vBe});var BH=J((bEt,OH)=>{function dBe(e,t){for(var r=-1,n=e==null?0:e.length,i=0,a=[];++r{function pBe(){return[]}UH.exports=pBe});var YH=J((_Et,VH)=>{var gBe=BH(),mBe=HH(),yBe=Object.prototype,xBe=yBe.propertyIsEnumerable,jH=Object.getOwnPropertySymbols,bBe=jH?function(e){return e==null?[]:(e=Object(e),gBe(jH(e),function(t){return xBe.call(e,t)}))}:mBe;VH.exports=bBe});var WH=J((TEt,GH)=>{var wBe=NH(),_Be=YH(),TBe=$3();function ABe(e){return wBe(e,TBe,_Be)}GH.exports=ABe});var JH=J((AEt,ZH)=>{var XH=WH(),MBe=1,kBe=Object.prototype,SBe=kBe.hasOwnProperty;function CBe(e,t,r,n,i,a){var o=r&MBe,s=XH(e),l=s.length,u=XH(t),f=u.length;if(l!=f&&!o)return!1;for(var c=l;c--;){var h=s[c];if(!(o?h in t:SBe.call(t,h)))return!1}var d=a.get(e),v=a.get(t);if(d&&v)return d==t&&v==e;var m=!0;a.set(e,t),a.set(t,e);for(var b=o;++c{var EBe=Zd(),LBe=Hh(),DBe=EBe(LBe,"DataView");$H.exports=DBe});var ej=J((kEt,QH)=>{var RBe=Zd(),PBe=Hh(),IBe=RBe(PBe,"Promise");QH.exports=IBe});var rj=J((SEt,tj)=>{var qBe=Zd(),FBe=Hh(),zBe=qBe(FBe,"Set");tj.exports=zBe});var ij=J((CEt,nj)=>{var NBe=Zd(),OBe=Hh(),BBe=NBe(OBe,"WeakMap");nj.exports=BBe});var hj=J((EEt,cj)=>{var X6=KH(),Z6=K3(),J6=ej(),$6=rj(),K6=ij(),fj=l1(),g1=N6(),aj="[object Map]",UBe="[object Object]",oj="[object Promise]",sj="[object Set]",lj="[object WeakMap]",uj="[object DataView]",HBe=g1(X6),jBe=g1(Z6),VBe=g1(J6),YBe=g1($6),GBe=g1(K6),Dp=fj;(X6&&Dp(new X6(new ArrayBuffer(1)))!=uj||Z6&&Dp(new Z6)!=aj||J6&&Dp(J6.resolve())!=oj||$6&&Dp(new $6)!=sj||K6&&Dp(new K6)!=lj)&&(Dp=function(e){var t=fj(e),r=t==UBe?e.constructor:void 0,n=r?g1(r):"";if(n)switch(n){case HBe:return uj;case jBe:return aj;case VBe:return oj;case YBe:return sj;case GBe:return lj}return t});cj.exports=Dp});var bj=J((LEt,xj)=>{var Q6=Y6(),WBe=G6(),XBe=IH(),ZBe=JH(),vj=hj(),dj=Ov(),pj=B6(),JBe=j6(),$Be=1,gj="[object Arguments]",mj="[object Array]",tT="[object Object]",KBe=Object.prototype,yj=KBe.hasOwnProperty;function QBe(e,t,r,n,i,a){var o=dj(e),s=dj(t),l=o?mj:vj(e),u=s?mj:vj(t);l=l==gj?tT:l,u=u==gj?tT:u;var f=l==tT,c=u==tT,h=l==u;if(h&&pj(e)){if(!pj(t))return!1;o=!0,f=!1}if(h&&!f)return a||(a=new Q6),o||JBe(e)?WBe(e,t,r,n,i,a):XBe(e,t,l,r,n,i,a);if(!(r&$Be)){var d=f&&yj.call(e,"__wrapped__"),v=c&&yj.call(t,"__wrapped__");if(d||v){var m=d?e.value():e,b=v?t.value():t;return a||(a=new Q6),i(m,b,r,n,a)}}return h?(a||(a=new Q6),ZBe(e,t,r,n,i,a)):!1}xj.exports=QBe});var eE=J((DEt,Tj)=>{var eUe=bj(),wj=u1();function _j(e,t,r,n,i){return e===t?!0:e==null||t==null||!wj(e)&&!wj(t)?e!==e&&t!==t:eUe(e,t,r,n,_j,i)}Tj.exports=_j});var Mj=J((REt,Aj)=>{var tUe=Y6(),rUe=eE(),nUe=1,iUe=2;function aUe(e,t,r,n){var i=r.length,a=i,o=!n;if(e==null)return!a;for(e=Object(e);i--;){var s=r[i];if(o&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++i{var oUe=Z3();function sUe(e){return e===e&&!oUe(e)}kj.exports=sUe});var Cj=J((IEt,Sj)=>{var lUe=tE(),uUe=$3();function fUe(e){for(var t=uUe(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,lUe(i)]}return t}Sj.exports=fUe});var rE=J((qEt,Ej)=>{function cUe(e,t){return function(r){return r==null?!1:r[e]===t&&(t!==void 0||e in Object(r))}}Ej.exports=cUe});var Dj=J((FEt,Lj)=>{var hUe=Mj(),vUe=Cj(),dUe=rE();function pUe(e){var t=vUe(e);return t.length==1&&t[0][2]?dUe(t[0][0],t[0][1]):function(r){return r===e||hUe(r,e,t)}}Lj.exports=pUe});var rT=J((zEt,Rj)=>{var gUe=l1(),mUe=u1(),yUe="[object Symbol]";function xUe(e){return typeof e=="symbol"||mUe(e)&&gUe(e)==yUe}Rj.exports=xUe});var nT=J((NEt,Pj)=>{var bUe=Ov(),wUe=rT(),_Ue=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,TUe=/^\w*$/;function AUe(e,t){if(bUe(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||wUe(e)?!0:TUe.test(e)||!_Ue.test(e)||t!=null&&e in Object(t)}Pj.exports=AUe});var Fj=J((OEt,qj)=>{var Ij=Q3(),MUe="Expected a function";function nE(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(MUe);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o)||a,o};return r.cache=new(nE.Cache||Ij),r}nE.Cache=Ij;qj.exports=nE});var Nj=J((BEt,zj)=>{var kUe=Fj(),SUe=500;function CUe(e){var t=kUe(e,function(n){return r.size===SUe&&r.clear(),n}),r=t.cache;return t}zj.exports=CUe});var Bj=J((UEt,Oj)=>{var EUe=Nj(),LUe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,DUe=/\\(\\)?/g,RUe=EUe(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(LUe,function(r,n,i,a){t.push(i?a.replace(DUe,"$1"):n||r)}),t});Oj.exports=RUe});var Hj=J((HEt,Uj)=>{function PUe(e,t){for(var r=-1,n=e==null?0:e.length,i=Array(n);++r{var jj=_b(),IUe=Hj(),qUe=Ov(),FUe=rT(),zUe=1/0,Vj=jj?jj.prototype:void 0,Yj=Vj?Vj.toString:void 0;function Gj(e){if(typeof e=="string")return e;if(qUe(e))return IUe(e,Gj)+"";if(FUe(e))return Yj?Yj.call(e):"";var t=e+"";return t=="0"&&1/e==-zUe?"-0":t}Wj.exports=Gj});var Jj=J((VEt,Zj)=>{var NUe=Xj();function OUe(e){return e==null?"":NUe(e)}Zj.exports=OUe});var iE=J((YEt,$j)=>{var BUe=Ov(),UUe=nT(),HUe=Bj(),jUe=Jj();function VUe(e,t){return BUe(e)?e:UUe(e,t)?[e]:HUe(jUe(e))}$j.exports=VUe});var Db=J((GEt,Kj)=>{var YUe=rT(),GUe=1/0;function WUe(e){if(typeof e=="string"||YUe(e))return e;var t=e+"";return t=="0"&&1/e==-GUe?"-0":t}Kj.exports=WUe});var aE=J((WEt,Qj)=>{var XUe=iE(),ZUe=Db();function JUe(e,t){t=XUe(t,e);for(var r=0,n=t.length;e!=null&&r{var $Ue=aE();function KUe(e,t,r){var n=e==null?void 0:$Ue(e,t);return n===void 0?r:n}eV.exports=KUe});var rV=J((ZEt,tV)=>{function QUe(e,t){return e!=null&&t in Object(e)}tV.exports=QUe});var iV=J((JEt,nV)=>{var eHe=iE(),tHe=O6(),rHe=Ov(),nHe=U6(),iHe=J3(),aHe=Db();function oHe(e,t,r){t=eHe(t,e);for(var n=-1,i=t.length,a=!1;++n{var sHe=rV(),lHe=iV();function uHe(e,t){return e!=null&&lHe(e,t,sHe)}aV.exports=uHe});var lV=J((KEt,sV)=>{var fHe=eE(),cHe=oE(),hHe=oV(),vHe=nT(),dHe=tE(),pHe=rE(),gHe=Db(),mHe=1,yHe=2;function xHe(e,t){return vHe(e)&&dHe(t)?pHe(gHe(e),t):function(r){var n=cHe(r,e);return n===void 0&&n===t?hHe(r,e):fHe(t,n,mHe|yHe)}}sV.exports=xHe});var fV=J((QEt,uV)=>{function bHe(e){return e}uV.exports=bHe});var hV=J((eLt,cV)=>{function wHe(e){return function(t){return t?.[e]}}cV.exports=wHe});var dV=J((tLt,vV)=>{var _He=aE();function THe(e){return function(t){return _He(t,e)}}vV.exports=THe});var gV=J((rLt,pV)=>{var AHe=hV(),MHe=dV(),kHe=nT(),SHe=Db();function CHe(e){return kHe(e)?AHe(SHe(e)):MHe(e)}pV.exports=CHe});var yV=J((nLt,mV)=>{var EHe=Dj(),LHe=lV(),DHe=fV(),RHe=Ov(),PHe=gV();function IHe(e){return typeof e=="function"?e:e==null?DHe:typeof e=="object"?RHe(e)?LHe(e[0],e[1]):EHe(e):PHe(e)}mV.exports=IHe});var bV=J((iLt,xV)=>{var qHe=_B(),FHe=hU(),zHe=yV();function NHe(e,t){var r={};return t=zHe(t,3),FHe(e,function(n,i,a){qHe(r,i,t(n,i,a))}),r}xV.exports=NHe});var iT=J(TV=>{"use strict";TV.version="2.34.0"});var MV=J((AV,aT)=>{(function(t,r,n){r[t]=r[t]||n(),typeof aT<"u"&&aT.exports?aT.exports=r[t]:typeof define=="function"&&define.amd&&define(function(){return r[t]})})("Promise",typeof global<"u"?global:AV,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(_,T,w,k){return Object.defineProperty(_,T,{value:w,writable:!0,configurable:k!==!1})}}catch{t=function(T,w,k){return T[w]=k,T}}n=function(){var _,T,w;function k(x,M){this.fn=x,this.self=M,this.next=void 0}return{add:function(M,A){w=new k(M,A),T?T.next=w:_=w,T=w,w=void 0},drain:function(){var M=_;for(_=T=r=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(g,_){n.add(g,_),r||(r=a(n.drain))}function s(g){var _,T=typeof g;return g!=null&&(T=="object"||T=="function")&&(_=g.then),typeof _=="function"?_:!1}function l(){for(var g=0;g0&&o(l,T))}catch(w){c.call(new d(T),w)}}}function c(g){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=g,_.state=2,_.chain.length>0&&o(l,_))}function h(g,_,T,w){for(var k=0;k<_.length;k++)(function(M){g.resolve(_[M]).then(function(p){T(M,p)},w)})(k)}function d(g){this.def=g,this.triggered=!1}function v(g){this.promise=g,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function m(g){if(typeof g!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new v(this);this.then=function(w,k){var x={success:typeof w=="function"?w:!0,failure:typeof k=="function"?k:!1};return x.promise=new this.constructor(function(A,p){if(typeof A!="function"||typeof p!="function")throw TypeError("Not a function");x.resolve=A,x.reject=p}),_.chain.push(x),_.state!==0&&o(l,_),x.promise},this.catch=function(w){return this.then(void 0,w)};try{g.call(void 0,function(w){f.call(_,w)},function(w){c.call(_,w)})}catch(T){c.call(_,T)}}var b=t({},"constructor",m,!1);return m.prototype=b,t(b,"__NPO__",0,!1),t(m,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(k,x){if(typeof k!="function"||typeof x!="function")throw TypeError("Not a function");k(_)})}),t(m,"reject",function(_){return new this(function(w,k){if(typeof w!="function"||typeof k!="function")throw TypeError("Not a function");k(_)})}),t(m,"all",function(_){var T=this;return i.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(k,x){if(typeof k!="function"||typeof x!="function")throw TypeError("Not a function");var M=_.length,A=Array(M),p=0;h(T,_,function(y,E){A[y]=E,++p===M&&k(A)},x)})}),t(m,"race",function(_){var T=this;return i.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(k,x){if(typeof k!="function"||typeof x!="function")throw TypeError("Not a function");h(T,_,function(A,p){k(p)},x)})}),m})});var Nr=J((lLt,oT)=>{(function(){var e={version:"3.8.2"},t=[].slice,r=function(z){return t.call(z)},n=self.document;function i(z){return z&&(z.ownerDocument||z.document||z).documentElement}function a(z){return z&&(z.ownerDocument&&z.ownerDocument.defaultView||z.document&&z||z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch{r=function(H){for(var X=H.length,se=new Array(X);X--;)se[X]=H[X];return se}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch{var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(H,X){s.call(this,H,X+"")},o.setAttributeNS=function(H,X,se){l.call(this,H,X,se+"")},u.setProperty=function(H,X,se){f.call(this,H,X+"",se)}}e.ascending=c;function c(z,H){return zH?1:z>=H?0:NaN}e.descending=function(z,H){return Hz?1:H>=z?0:NaN},e.min=function(z,H){var X=-1,se=z.length,ue,he;if(arguments.length===1){for(;++X=he){ue=he;break}for(;++Xhe&&(ue=he)}else{for(;++X=he){ue=he;break}for(;++Xhe&&(ue=he)}return ue},e.max=function(z,H){var X=-1,se=z.length,ue,he;if(arguments.length===1){for(;++X=he){ue=he;break}for(;++Xue&&(ue=he)}else{for(;++X=he){ue=he;break}for(;++Xue&&(ue=he)}return ue},e.extent=function(z,H){var X=-1,se=z.length,ue,he,Se;if(arguments.length===1){for(;++X=he){ue=Se=he;break}for(;++Xhe&&(ue=he),Se=he){ue=Se=he;break}for(;++Xhe&&(ue=he),Se1)return Se/(qe-1)},e.deviation=function(){var z=e.variance.apply(this,arguments);return z&&Math.sqrt(z)};function v(z){return{left:function(H,X,se,ue){for(arguments.length<3&&(se=0),arguments.length<4&&(ue=H.length);se>>1;z(H[he],X)<0?se=he+1:ue=he}return se},right:function(H,X,se,ue){for(arguments.length<3&&(se=0),arguments.length<4&&(ue=H.length);se>>1;z(H[he],X)>0?ue=he:se=he+1}return se}}}var m=v(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.right,e.bisector=function(z){return v(z.length===1?function(H,X){return c(z(H),X)}:z)},e.shuffle=function(z,H,X){(se=arguments.length)<3&&(X=z.length,se<2&&(H=0));for(var se=X-H,ue,he;se;)he=Math.random()*se--|0,ue=z[se+H],z[se+H]=z[he+H],z[he+H]=ue;return z},e.permute=function(z,H){for(var X=H.length,se=new Array(X);X--;)se[X]=z[H[X]];return se},e.pairs=function(z){for(var H=0,X=z.length-1,se,ue=z[0],he=new Array(X<0?0:X);H=0;)for(Se=z[H],X=Se.length;--X>=0;)he[--ue]=Se[X];return he};var g=Math.abs;e.range=function(z,H,X){if(arguments.length<3&&(X=1,arguments.length<2&&(H=z,z=0)),(H-z)/X===1/0)throw new Error("infinite range");var se=[],ue=_(g(X)),he=-1,Se;if(z*=ue,H*=ue,X*=ue,X<0)for(;(Se=z+X*++he)>H;)se.push(Se/ue);else for(;(Se=z+X*++he)=H.length)return ue?ue.call(z,qe):se?qe.sort(se):qe;for(var Je=-1,dt=qe.length,pt=H[Xe++],It,Nt,mt,kt=new w,Dt;++Je=H.length)return xe;var Xe=[],Je=X[qe++];return xe.forEach(function(dt,pt){Xe.push({key:dt,values:Se(pt,qe)})}),Je?Xe.sort(function(dt,pt){return Je(dt.key,pt.key)}):Xe}return z.map=function(xe,qe){return he(qe,xe,0)},z.entries=function(xe){return Se(he(e.map,xe,0),0)},z.key=function(xe){return H.push(xe),z},z.sortKeys=function(xe){return X[H.length-1]=xe,z},z.sortValues=function(xe){return se=xe,z},z.rollup=function(xe){return ue=xe,z},z},e.set=function(z){var H=new L;if(z)for(var X=0,se=z.length;X=0&&(se=z.slice(X+1),z=z.slice(0,X)),z)return arguments.length<2?this[z].on(se):this[z].on(se,H);if(arguments.length===2){if(H==null)for(z in this)this.hasOwnProperty(z)&&this[z].on(se,null);return this}};function U(z){var H=[],X=new w;function se(){for(var ue=H,he=-1,Se=ue.length,xe;++he=0&&(X=z.slice(0,H))!=="xmlns"&&(z=z.slice(H+1)),fe.hasOwnProperty(X)?{space:fe[X],local:z}:z}},te.attr=function(z,H){if(arguments.length<2){if(typeof z=="string"){var X=this.node();return z=e.ns.qualify(z),z.local?X.getAttributeNS(z.space,z.local):X.getAttribute(z)}for(H in z)this.each(ge(H,z[H]));return this}return this.each(ge(z,H))};function ge(z,H){z=e.ns.qualify(z);function X(){this.removeAttribute(z)}function se(){this.removeAttributeNS(z.space,z.local)}function ue(){this.setAttribute(z,H)}function he(){this.setAttributeNS(z.space,z.local,H)}function Se(){var qe=H.apply(this,arguments);qe==null?this.removeAttribute(z):this.setAttribute(z,qe)}function xe(){var qe=H.apply(this,arguments);qe==null?this.removeAttributeNS(z.space,z.local):this.setAttributeNS(z.space,z.local,qe)}return H==null?z.local?se:X:typeof H=="function"?z.local?xe:Se:z.local?he:ue}function Ce(z){return z.trim().replace(/\s+/g," ")}te.classed=function(z,H){if(arguments.length<2){if(typeof z=="string"){var X=this.node(),se=(z=pe(z)).length,ue=-1;if(H=X.classList){for(;++ue=0;)(he=X[se])&&(ue&&ue!==he.nextSibling&&ue.parentNode.insertBefore(he,ue),ue=he);return this},te.sort=function(z){z=Ee.apply(this,arguments);for(var H=-1,X=this.length;++H=H&&(H=ue+1);!(qe=Se[H])&&++H0&&(z=z.slice(0,ue));var Se=Ue.get(z);Se&&(z=Se,he=lt);function xe(){var Je=this[se];Je&&(this.removeEventListener(z,Je,Je.$),delete this[se])}function qe(){var Je=he(H,r(arguments));xe.call(this),this.addEventListener(z,this[se]=Je,Je.$=X),Je._=H}function Xe(){var Je=new RegExp("^__on([^.]+)"+e.requote(z)+"$"),dt;for(var pt in this)if(dt=pt.match(Je)){var It=this[pt];this.removeEventListener(dt[1],It,It.$),delete this[pt]}}return ue?H?qe:xe:H?q:Xe}var Ue=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ue.forEach(function(z){"on"+z in n&&Ue.remove(z)});function Ge(z,H){return function(X){var se=e.event;e.event=X,H[0]=this.__data__;try{z.apply(this,H)}finally{e.event=se}}}function lt(z,H){var X=Ge(z,H);return function(se){var ue=this,he=se.relatedTarget;(!he||he!==ue&&!(he.compareDocumentPosition(ue)&8))&&X.call(ue,se)}}var it,wt=0;function _t(z){var H=".dragsuppress-"+ ++wt,X="click"+H,se=e.select(a(z)).on("touchmove"+H,G).on("dragstart"+H,G).on("selectstart"+H,G);if(it==null&&(it="onselectstart"in z?!1:P(z.style,"userSelect")),it){var ue=i(z).style,he=ue[it];ue[it]="none"}return function(Se){if(se.on(H,null),it&&(ue[it]=he),Se){var xe=function(){se.on(X,null)};se.on(X,function(){G(),xe()},!0),setTimeout(xe,0)}}}e.mouse=function(z){return nt(z,ee())};var Tt=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function nt(z,H){H.changedTouches&&(H=H.changedTouches[0]);var X=z.ownerSVGElement||z;if(X.createSVGPoint){var se=X.createSVGPoint();if(Tt<0){var ue=a(z);if(ue.scrollX||ue.scrollY){X=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var he=X[0][0].getScreenCTM();Tt=!(he.f||he.e),X.remove()}}return Tt?(se.x=H.pageX,se.y=H.pageY):(se.x=H.clientX,se.y=H.clientY),se=se.matrixTransform(z.getScreenCTM().inverse()),[se.x,se.y]}var Se=z.getBoundingClientRect();return[H.clientX-Se.left-z.clientLeft,H.clientY-Se.top-z.clientTop]}e.touch=function(z,H,X){if(arguments.length<3&&(X=H,H=ee().changedTouches),H){for(var se=0,ue=H.length,he;se0?1:z<0?-1:0}function at(z,H,X){return(H[0]-z[0])*(X[1]-z[1])-(H[1]-z[1])*(X[0]-z[0])}function ft(z){return z>1?0:z<-1?je:Math.acos(z)}function Ht(z){return z>1?Y:z<-1?-Y:Math.asin(z)}function Xt(z){return((z=Math.exp(z))-1/z)/2}function St(z){return((z=Math.exp(z))+1/z)/2}function Vt(z){return((z=Math.exp(2*z))-1)/(z+1)}function er(z){return(z=Math.sin(z/2))*z}var _r=Math.SQRT2,br=2,or=4;e.interpolateZoom=function(z,H){var X=z[0],se=z[1],ue=z[2],he=H[0],Se=H[1],xe=H[2],qe=he-X,Xe=Se-se,Je=qe*qe+Xe*Xe,dt,pt;if(Je0&&(Ar=Ar.transition().duration(Se)),Ar.call(Bt.event)}function Vr(){kt&&kt.domain(mt.range().map(function(Ar){return(Ar-z.x)/z.k}).map(mt.invert)),Ot&&Ot.domain(Dt.range().map(function(Ar){return(Ar-z.y)/z.k}).map(Dt.invert))}function Yr(Ar){xe++||Ar({type:"zoomstart"})}function yn(Ar){Vr(),Ar({type:"zoom",scale:z.k,translate:[z.x,z.y]})}function Wr(Ar){--xe||(Ar({type:"zoomend"}),X=null)}function xn(){var Ar=this,Mn=Nt.of(Ar,arguments),Pn=0,di=e.select(a(Ar)).on(Xe,ko).on(Je,As),bi=Rt(e.mouse(Ar)),la=_t(Ar);on.call(Ar),Yr(Mn);function ko(){Pn=1,Pr(e.mouse(Ar),bi),yn(Mn)}function As(){di.on(Xe,null).on(Je,null),la(Pn),Wr(Mn)}}function xi(){var Ar=this,Mn=Nt.of(Ar,arguments),Pn={},di=0,bi,la=".zoom-"+e.event.changedTouches[0].identifier,ko="touchmove"+la,As="touchend"+la,os=[],Ms=e.select(Ar),Vs=_t(Ar);Ys(),Yr(Mn),Ms.on(qe,null).on(pt,Ys);function ss(){var xf=e.touches(Ar);return bi=z.k,xf.forEach(function(Ea){Ea.identifier in Pn&&(Pn[Ea.identifier]=Rt(Ea))}),xf}function Ys(){var xf=e.event.target;e.select(xf).on(ko,Xc).on(As,Nh),os.push(xf);for(var Ea=e.event.changedTouches,eu=0,bf=Ea.length;eu1){var Rv=Pl[0],Oh=Pl[1],Sp=Rv[0]-Oh[0],gb=Rv[1]-Oh[1];di=Sp*Sp+gb*gb}}function Xc(){var xf=e.touches(Ar),Ea,eu,bf,Pl;on.call(Ar);for(var Wd=0,Rv=xf.length;Wd1?1:H,X=X<0?0:X>1?1:X,ue=X<=.5?X*(1+H):X+H-X*H,se=2*X-ue;function he(xe){return xe>360?xe-=360:xe<0&&(xe+=360),xe<60?se+(ue-se)*xe/60:xe<180?ue:xe<240?se+(ue-se)*(240-xe)/60:se}function Se(xe){return Math.round(he(xe)*255)}return new si(Se(z+120),Se(z),Se(z-120))}e.hcl=kn;function kn(z,H,X){return this instanceof kn?(this.h=+z,this.c=+H,void(this.l=+X)):arguments.length<2?z instanceof kn?new kn(z.h,z.c,z.l):z instanceof Fn?ii(z.l,z.a,z.b):ii((z=xu((z=e.rgb(z)).r,z.g,z.b)).l,z.a,z.b):new kn(z,H,X)}var Yn=kn.prototype=new sn;Yn.brighter=function(z){return new kn(this.h,this.c,Math.min(100,this.l+wn*(arguments.length?z:1)))},Yn.darker=function(z){return new kn(this.h,this.c,Math.max(0,this.l-wn*(arguments.length?z:1)))},Yn.rgb=function(){return Wn(this.h,this.c,this.l).rgb()};function Wn(z,H,X){return isNaN(z)&&(z=0),isNaN(H)&&(H=0),new Fn(X,Math.cos(z*=ie)*H,Math.sin(z)*H)}e.lab=Fn;function Fn(z,H,X){return this instanceof Fn?(this.l=+z,this.a=+H,void(this.b=+X)):arguments.length<2?z instanceof Fn?new Fn(z.l,z.a,z.b):z instanceof kn?Wn(z.h,z.c,z.l):xu((z=si(z)).r,z.g,z.b):new Fn(z,H,X)}var wn=18,Si=.95047,Aa=1,ia=1.08883,An=Fn.prototype=new sn;An.brighter=function(z){return new Fn(Math.min(100,this.l+wn*(arguments.length?z:1)),this.a,this.b)},An.darker=function(z){return new Fn(Math.max(0,this.l-wn*(arguments.length?z:1)),this.a,this.b)},An.rgb=function(){return Ji(this.l,this.a,this.b)};function Ji(z,H,X){var se=(z+16)/116,ue=se+H/500,he=se-X/200;return ue=bo(ue)*Si,se=bo(se)*Aa,he=bo(he)*ia,new si(Ia(3.2404542*ue-1.5371385*se-.4985314*he),Ia(-.969266*ue+1.8760108*se+.041556*he),Ia(.0556434*ue-.2040259*se+1.0572252*he))}function ii(z,H,X){return z>0?new kn(Math.atan2(X,H)*Te,Math.sqrt(H*H+X*X),z):new kn(NaN,NaN,z)}function bo(z){return z>.206893034?z*z*z:(z-4/29)/7.787037}function ga(z){return z>.008856?Math.pow(z,1/3):7.787037*z+4/29}function Ia(z){return Math.round(255*(z<=.00304?12.92*z:1.055*Math.pow(z,1/2.4)-.055))}e.rgb=si;function si(z,H,X){return this instanceof si?(this.r=~~z,this.g=~~H,void(this.b=~~X)):arguments.length<2?z instanceof si?new si(z.r,z.g,z.b):yu(""+z,si,qn):new si(z,H,X)}function aa(z){return new si(z>>16,z>>8&255,z&255)}function wo(z){return aa(z)+""}var ma=si.prototype=new sn;ma.brighter=function(z){z=Math.pow(.7,arguments.length?z:1);var H=this.r,X=this.g,se=this.b,ue=30;return!H&&!X&&!se?new si(ue,ue,ue):(H&&H>4,se=se>>4|se,ue=qe&240,ue=ue>>4|ue,he=qe&15,he=he<<4|he):z.length===7&&(se=(qe&16711680)>>16,ue=(qe&65280)>>8,he=qe&255)),H(se,ue,he))}function Xl(z,H,X){var se=Math.min(z/=255,H/=255,X/=255),ue=Math.max(z,H,X),he=ue-se,Se,xe,qe=(ue+se)/2;return he?(xe=qe<.5?he/(ue+se):he/(2-ue-se),z==ue?Se=(H-X)/he+(H0&&qe<1?0:Se),new Hr(Se,xe,qe)}function xu(z,H,X){z=De(z),H=De(H),X=De(X);var se=ga((.4124564*z+.3575761*H+.1804375*X)/Si),ue=ga((.2126729*z+.7151522*H+.072175*X)/Aa),he=ga((.0193339*z+.119192*H+.9503041*X)/ia);return Fn(116*ue-16,500*(se-ue),200*(ue-he))}function De(z){return(z/=255)<=.04045?z/12.92:Math.pow((z+.055)/1.055,2.4)}function ct(z){var H=parseFloat(z);return z.charAt(z.length-1)==="%"?Math.round(H*2.55):H}var ht=e.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,rebeccapurple:6697881,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});ht.forEach(function(z,H){ht.set(z,aa(H))});function Mt(z){return typeof z=="function"?z:function(){return z}}e.functor=Mt,e.xhr=Gt(R);function Gt(z){return function(H,X,se){return arguments.length===2&&typeof X=="function"&&(se=X,X=null),Lt(H,X,z,se)}}function Lt(z,H,X,se){var ue={},he=e.dispatch("beforesend","progress","load","error"),Se={},xe=new XMLHttpRequest,qe=null;self.XDomainRequest&&!("withCredentials"in xe)&&/^(http(s)?:)?\/\//.test(z)&&(xe=new XDomainRequest),"onload"in xe?xe.onload=xe.onerror=Xe:xe.onreadystatechange=function(){xe.readyState>3&&Xe()};function Xe(){var Je=xe.status,dt;if(!Je&&zt(xe)||Je>=200&&Je<300||Je===304){try{dt=X.call(ue,xe)}catch(pt){he.error.call(ue,pt);return}he.load.call(ue,dt)}else he.error.call(ue,xe)}return xe.onprogress=function(Je){var dt=e.event;e.event=Je;try{he.progress.call(ue,xe)}finally{e.event=dt}},ue.header=function(Je,dt){return Je=(Je+"").toLowerCase(),arguments.length<2?Se[Je]:(dt==null?delete Se[Je]:Se[Je]=dt+"",ue)},ue.mimeType=function(Je){return arguments.length?(H=Je==null?null:Je+"",ue):H},ue.responseType=function(Je){return arguments.length?(qe=Je,ue):qe},ue.response=function(Je){return X=Je,ue},["get","post"].forEach(function(Je){ue[Je]=function(){return ue.send.apply(ue,[Je].concat(r(arguments)))}}),ue.send=function(Je,dt,pt){if(arguments.length===2&&typeof dt=="function"&&(pt=dt,dt=null),xe.open(Je,z,!0),H!=null&&!("accept"in Se)&&(Se.accept=H+",*/*"),xe.setRequestHeader)for(var It in Se)xe.setRequestHeader(It,Se[It]);return H!=null&&xe.overrideMimeType&&xe.overrideMimeType(H),qe!=null&&(xe.responseType=qe),pt!=null&&ue.on("error",pt).on("load",function(Nt){pt(null,Nt)}),he.beforesend.call(ue,xe),xe.send(dt??null),ue},ue.abort=function(){return xe.abort(),ue},e.rebind(ue,he,"on"),se==null?ue:ue.get(ir(se))}function ir(z){return z.length===1?function(H,X){z(H==null?X:null)}:z}function zt(z){var H=z.responseType;return H&&H!=="text"?z.response:z.responseText}e.dsv=function(z,H){var X=new RegExp('["'+z+` +]`),se=z.charCodeAt(0);function ue(Xe,Je,dt){arguments.length<3&&(dt=Je,Je=null);var pt=Lt(Xe,H,Je==null?he:Se(Je),dt);return pt.row=function(It){return arguments.length?pt.response((Je=It)==null?he:Se(It)):Je},pt}function he(Xe){return ue.parse(Xe.responseText)}function Se(Xe){return function(Je){return ue.parse(Je.responseText,Xe)}}ue.parse=function(Xe,Je){var dt;return ue.parseRows(Xe,function(pt,It){if(dt)return dt(pt,It-1);var Nt=function(mt){for(var kt={},Dt=pt.length,Ot=0;Ot=Nt)return pt;if(Ot)return Ot=!1,dt;var ur=mt;if(Xe.charCodeAt(ur)===34){for(var Dr=ur;Dr++24?(isFinite(H)&&(clearTimeout(Xr),Xr=setTimeout(Rn,H)),Er=0):(Er=1,vn(Rn))}e.timer.flush=function(){hi(),Xn()};function hi(){for(var z=Date.now(),H=ar;H;)z>=H.t&&H.c(z-H.t)&&(H.c=null),H=H.n;return z}function Xn(){for(var z,H=ar,X=1/0;H;)H.c?(H.t=0;--xe)mt.push(ue[Xe[dt[xe]][2]]);for(xe=+It;xe1&&at(z[X[se-2]],z[X[se-1]],z[ue])<=0;)--se;X[se++]=ue}return X.slice(0,se)}function Ma(z,H){return z[0]-H[0]||z[1]-H[1]}e.geom.polygon=function(z){return O(z,qa),z};var qa=e.geom.polygon.prototype=[];qa.area=function(){for(var z=-1,H=this.length,X,se=this[H-1],ue=0;++zAt)xe=xe.L;else if(Se=H-tf(xe,X),Se>At){if(!xe.R){se=xe;break}xe=xe.R}else{he>-At?(se=xe.P,ue=xe):Se>-At?(se=xe,ue=xe.N):se=ue=xe;break}var qe=qs(z);if(zn.insert(se,qe),!(!se&&!ue)){if(se===ue){ws(se),ue=qs(se.site),zn.insert(qe,ue),qe.edge=ue.edge=Ja(se.site,qe.site),bs(se),bs(ue);return}if(!ue){qe.edge=Ja(se.site,qe.site);return}ws(se),ws(ue);var Xe=se.site,Je=Xe.x,dt=Xe.y,pt=z.x-Je,It=z.y-dt,Nt=ue.site,mt=Nt.x-Je,kt=Nt.y-dt,Dt=2*(pt*kt-It*mt),Ot=pt*pt+It*It,Bt=mt*mt+kt*kt,Rt={x:(kt*Ot-It*Bt)/Dt+Je,y:(pt*Bt-mt*Ot)/Dt+dt};Na(ue.edge,Xe,Nt,Rt),qe.edge=Ja(Xe,z,null,Rt),ue.edge=Ja(z,Nt,null,Rt),bs(se),bs(ue)}}function Bi(z,H){var X=z.site,se=X.x,ue=X.y,he=ue-H;if(!he)return se;var Se=z.P;if(!Se)return-1/0;X=Se.site;var xe=X.x,qe=X.y,Xe=qe-H;if(!Xe)return xe;var Je=xe-se,dt=1/he-1/Xe,pt=Je/Xe;return dt?(-pt+Math.sqrt(pt*pt-2*dt*(Je*Je/(-2*Xe)-qe+Xe/2+ue-he/2)))/dt+se:(se+xe)/2}function tf(z,H){var X=z.N;if(X)return Bi(X,H);var se=z.site;return se.y===H?se.x:1/0}function so(z){this.site=z,this.edges=[]}so.prototype.prepare=function(){for(var z=this.edges,H=z.length,X;H--;)X=z[H].edge,(!X.b||!X.a)&&z.splice(H,1);return z.sort(Fs),z.length};function es(z){for(var H=z[0][0],X=z[1][0],se=z[0][1],ue=z[1][1],he,Se,xe,qe,Xe=za,Je=Xe.length,dt,pt,It,Nt,mt,kt;Je--;)if(dt=Xe[Je],!(!dt||!dt.prepare()))for(It=dt.edges,Nt=It.length,pt=0;ptAt||g(qe-Se)>At)&&(It.splice(pt,0,new nf(wp(dt.site,kt,g(xe-H)At?{x:H,y:g(he-H)At?{x:g(Se-ue)At?{x:X,y:g(he-X)At?{x:g(Se-se)=-Ye)){var pt=qe*qe+Xe*Xe,It=Je*Je+kt*kt,Nt=(kt*pt-Xe*It)/dt,mt=(qe*It-Je*pt)/dt,kt=mt+xe,Dt=tl.pop()||new lo;Dt.arc=z,Dt.site=ue,Dt.x=Nt+Se,Dt.y=kt+Math.sqrt(Nt*Nt+mt*mt),Dt.cy=kt,z.circle=Dt;for(var Ot=null,Bt=Ko._;Bt;)if(Dt.y0)){if(mt/=It,It<0){if(mt0){if(mt>pt)return;mt>dt&&(dt=mt)}if(mt=X-xe,!(!It&&mt<0)){if(mt/=It,It<0){if(mt>pt)return;mt>dt&&(dt=mt)}else if(It>0){if(mt0)){if(mt/=Nt,Nt<0){if(mt0){if(mt>pt)return;mt>dt&&(dt=mt)}if(mt=se-qe,!(!Nt&&mt<0)){if(mt/=Nt,Nt<0){if(mt>pt)return;mt>dt&&(dt=mt)}else if(Nt>0){if(mt0&&(ue.a={x:xe+dt*It,y:qe+dt*Nt}),pt<1&&(ue.b={x:xe+pt*It,y:qe+pt*Nt}),ue}}}}}}function ts(z){for(var H=ka,X=rf(z[0][0],z[0][1],z[1][0],z[1][1]),se=H.length,ue;se--;)ue=H[se],(!Id(ue,z)||!X(ue)||g(ue.a.x-ue.b.x)=he)return;if(Je>pt){if(!se)se={x:Nt,y:Se};else if(se.y>=xe)return;X={x:Nt,y:xe}}else{if(!se)se={x:Nt,y:xe};else if(se.y1)if(Je>pt){if(!se)se={x:(Se-Dt)/kt,y:Se};else if(se.y>=xe)return;X={x:(xe-Dt)/kt,y:xe}}else{if(!se)se={x:(xe-Dt)/kt,y:xe};else if(se.y=he)return;X={x:he,y:kt*he+Dt}}else{if(!se)se={x:he,y:kt*he+Dt};else if(se.x=Je&&Dt.x<=pt&&Dt.y>=dt&&Dt.y<=It?[[Je,It],[pt,It],[pt,dt],[Je,dt]]:[];Ot.point=qe[mt]}),Xe}function xe(qe){return qe.map(function(Xe,Je){return{x:Math.round(se(Xe,Je)/At)*At,y:Math.round(ue(Xe,Je)/At)*At,i:Je}})}return Se.links=function(qe){return zs(xe(qe)).edges.filter(function(Xe){return Xe.l&&Xe.r}).map(function(Xe){return{source:qe[Xe.l.i],target:qe[Xe.r.i]}})},Se.triangles=function(qe){var Xe=[];return zs(xe(qe)).cells.forEach(function(Je,dt){for(var pt=Je.site,It=Je.edges.sort(Fs),Nt=-1,mt=It.length,kt,Dt,Ot=It[mt-1].edge,Bt=Ot.l===pt?Ot.r:Ot.l;++NtBt&&(Bt=Je.x),Je.y>Rt&&(Rt=Je.y),It.push(Je.x),Nt.push(Je.y);else for(mt=0;mtBt&&(Bt=ur),Dr>Rt&&(Rt=Dr),It.push(ur),Nt.push(Dr)}var Pr=Bt-Dt,lr=Rt-Ot;Pr>lr?Rt=Ot+Pr:Bt=Dt+lr;function Vr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn){if(!(isNaN(xi)||isNaN(Pi)))if(Wr.leaf){var di=Wr.x,bi=Wr.y;if(di!=null)if(g(di-xi)+g(bi-Pi)<.01)Yr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn);else{var la=Wr.point;Wr.x=Wr.y=Wr.point=null,Yr(Wr,la,di,bi,Ii,Ar,Mn,Pn),Yr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn)}else Wr.x=xi,Wr.y=Pi,Wr.point=xn}else Yr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn)}function Yr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn){var di=(Ii+Mn)*.5,bi=(Ar+Pn)*.5,la=xi>=di,ko=Pi>=bi,As=ko<<1|la;Wr.leaf=!1,Wr=Wr.nodes[As]||(Wr.nodes[As]=Mh()),la?Ii=di:Mn=di,ko?Ar=bi:Pn=bi,Vr(Wr,xn,xi,Pi,Ii,Ar,Mn,Pn)}var yn=Mh();if(yn.add=function(Wr){Vr(yn,Wr,+dt(Wr,++mt),+pt(Wr,mt),Dt,Ot,Bt,Rt)},yn.visit=function(Wr){Ns(Wr,yn,Dt,Ot,Bt,Rt)},yn.find=function(Wr){return lf(yn,Wr[0],Wr[1],Dt,Ot,Bt,Rt)},mt=-1,H==null){for(;++mthe||pt>Se||It=ur,lr=X>=Dr,Vr=lr<<1|Pr,Yr=Vr+4;VrX&&(he=H.slice(X,he),xe[Se]?xe[Se]+=he:xe[++Se]=he),(se=se[0])===(ue=ue[0])?xe[Se]?xe[Se]+=ue:xe[++Se]=ue:(xe[++Se]=null,qe.push({i:Se,x:Va(se,ue)})),X=uf.lastIndex;return X=0&&!(se=e.interpolators[X](z,H)););return se}e.interpolators=[function(z,H){var X=typeof H;return(X==="string"?ht.has(H.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(H)?Jl:To:H instanceof sn?Jl:Array.isArray(H)?jf:X==="object"&&isNaN(H)?_s:Va)(z,H)}],e.interpolateArray=jf;function jf(z,H){var X=[],se=[],ue=z.length,he=H.length,Se=Math.min(z.length,H.length),xe;for(xe=0;xe=0?z.slice(0,H):z,se=H>=0?z.slice(H+1):"in";return X=kh.get(X)||qc,se=_p.get(se)||R,qd(se(X.apply(null,t.call(arguments,1))))};function qd(z){return function(H){return H<=0?0:H>=1?1:z(H)}}function zo(z){return function(H){return 1-z(1-H)}}function Fc(z){return function(H){return .5*(H<.5?z(2*H):2-z(2-2*H))}}function ff(z){return z*z}function Sh(z){return z*z*z}function Tv(z){if(z<=0)return 0;if(z>=1)return 1;var H=z*z,X=H*z;return 4*(z<.5?X:3*(z-H)+X-.75)}function Fd(z){return function(H){return Math.pow(H,z)}}function zc(z){return 1-Math.cos(z*Y)}function Nc(z){return Math.pow(2,10*(z-1))}function Sl(z){return 1-Math.sqrt(1-z*z)}function Ch(z,H){var X;return arguments.length<2&&(H=.45),arguments.length?X=H/$e*Math.asin(1/z):(z=1,X=H/4),function(se){return 1+z*Math.pow(2,-10*se)*Math.sin((se-X)*$e/H)}}function Cl(z){return z||(z=1.70158),function(H){return H*H*((z+1)*H-z)}}function Eh(z){return z<1/2.75?7.5625*z*z:z<2/2.75?7.5625*(z-=1.5/2.75)*z+.75:z<2.5/2.75?7.5625*(z-=2.25/2.75)*z+.9375:7.5625*(z-=2.625/2.75)*z+.984375}e.interpolateHcl=zd;function zd(z,H){z=e.hcl(z),H=e.hcl(H);var X=z.h,se=z.c,ue=z.l,he=H.h-X,Se=H.c-se,xe=H.l-ue;return isNaN(Se)&&(Se=0,se=isNaN(se)?H.c:se),isNaN(he)?(he=0,X=isNaN(X)?H.h:X):he>180?he-=360:he<-180&&(he+=360),function(qe){return Wn(X+he*qe,se+Se*qe,ue+xe*qe)+""}}e.interpolateHsl=Oc;function Oc(z,H){z=e.hsl(z),H=e.hsl(H);var X=z.h,se=z.s,ue=z.l,he=H.h-X,Se=H.s-se,xe=H.l-ue;return isNaN(Se)&&(Se=0,se=isNaN(se)?H.s:se),isNaN(he)?(he=0,X=isNaN(X)?H.h:X):he>180?he-=360:he<-180&&(he+=360),function(qe){return qn(X+he*qe,se+Se*qe,ue+xe*qe)+""}}e.interpolateLab=Nd;function Nd(z,H){z=e.lab(z),H=e.lab(H);var X=z.l,se=z.a,ue=z.b,he=H.l-X,Se=H.a-se,xe=H.b-ue;return function(qe){return Ji(X+he*qe,se+Se*qe,ue+xe*qe)+""}}e.interpolateRound=No;function No(z,H){return H-=z,function(X){return Math.round(z+H*X)}}e.transform=function(z){var H=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(X){if(X!=null){H.setAttribute("transform",X);var se=H.transform.baseVal.consolidate()}return new cf(se?se.matrix:Tu)})(z)};function cf(z){var H=[z.a,z.b],X=[z.c,z.d],se=Bc(H),ue=Vf(H,X),he=Bc(Uc(X,H,-ue))||0;H[0]*X[1]180?H+=360:H-z>180&&(z+=360),se.push({i:X.push($a(X)+"rotate(",null,")")-2,x:Va(z,H)})):H&&X.push($a(X)+"rotate("+H+")")}function Od(z,H,X,se){z!==H?se.push({i:X.push($a(X)+"skewX(",null,")")-2,x:Va(z,H)}):H&&X.push($a(X)+"skewX("+H+")")}function kv(z,H,X,se){if(z[0]!==H[0]||z[1]!==H[1]){var ue=X.push($a(X)+"scale(",null,",",null,")");se.push({i:ue-4,x:Va(z[0],H[0])},{i:ue-2,x:Va(z[1],H[1])})}else(H[0]!==1||H[1]!==1)&&X.push($a(X)+"scale("+H+")")}function Lh(z,H){var X=[],se=[];return z=e.transform(z),H=e.transform(H),Av(z.translate,H.translate,X,se),Mv(z.rotate,H.rotate,X,se),Od(z.skew,H.skew,X,se),kv(z.scale,H.scale,X,se),z=H=null,function(ue){for(var he=-1,Se=se.length,xe;++he0?he=Rt:(X.c=null,X.t=NaN,X=null,H.end({type:"end",alpha:he=0})):Rt>0&&(H.start({type:"start",alpha:he=Rt}),X=ei(z.tick)),z):he},z.start=function(){var Rt,ur=It.length,Dr=Nt.length,Pr=se[0],lr=se[1],Vr,Yr;for(Rt=0;Rt=0;)he.push(Je=Xe[qe]),Je.parent=xe,Je.depth=xe.depth+1;X&&(xe.value=0),xe.children=Xe}else X&&(xe.value=+X.call(se,xe,xe.depth)||0),delete xe.children;return Ka(ue,function(dt){var pt,It;z&&(pt=dt.children)&&pt.sort(z),X&&(It=dt.parent)&&(It.value+=dt.value)}),Se}return se.sort=function(ue){return arguments.length?(z=ue,se):z},se.children=function(ue){return arguments.length?(H=ue,se):H},se.value=function(ue){return arguments.length?(X=ue,se):X},se.revalue=function(ue){return X&&(Ll(ue,function(he){he.children&&(he.value=0)}),Ka(ue,function(he){var Se;he.children||(he.value=+X.call(se,he,he.depth)||0),(Se=he.parent)&&(Se.value+=he.value)})),ue},se};function Bs(z,H){return e.rebind(z,H,"sort","children","value"),z.nodes=z,z.links=Us,z}function Ll(z,H){for(var X=[z];(z=X.pop())!=null;)if(H(z),(ue=z.children)&&(se=ue.length))for(var se,ue;--se>=0;)X.push(ue[se])}function Ka(z,H){for(var X=[z],se=[];(z=X.pop())!=null;)if(se.push(z),(Se=z.children)&&(he=Se.length))for(var ue=-1,he,Se;++ueue&&(ue=xe),se.push(xe)}for(Se=0;Sese&&(X=H,se=ue);return X}function ku(z){return z.reduce(Su,0)}function Su(z,H){return z+H[1]}e.layout.histogram=function(){var z=!0,H=Number,X=hf,se=Yf;function ue(he,pt){for(var xe=[],qe=he.map(H,this),Xe=X.call(this,qe,pt),Je=se.call(this,Xe,qe,pt),dt,pt=-1,It=qe.length,Nt=Je.length-1,mt=z?1:1/It,kt;++pt0)for(pt=-1;++pt=Xe[0]&&kt<=Xe[1]&&(dt=xe[e.bisect(Je,kt,1,Nt)-1],dt.y+=mt,dt.push(he[pt]));return xe}return ue.value=function(he){return arguments.length?(H=he,ue):H},ue.range=function(he){return arguments.length?(X=Mt(he),ue):X},ue.bins=function(he){return arguments.length?(se=typeof he=="number"?function(Se){return Dl(Se,he)}:Mt(he),ue):se},ue.frequency=function(he){return arguments.length?(z=!!he,ue):z},ue};function Yf(z,H){return Dl(z,Math.ceil(Math.log(H.length)/Math.LN2+1))}function Dl(z,H){for(var X=-1,se=+z[0],ue=(z[1]-se)/H,he=[];++X<=H;)he[X]=ue*X+se;return he}function hf(z){return[e.min(z),e.max(z)]}e.layout.pack=function(){var z=e.layout.hierarchy().sort(Cu),H=0,X=[1,1],se;function ue(he,Se){var xe=z.call(this,he,Se),qe=xe[0],Xe=X[0],Je=X[1],dt=se==null?Math.sqrt:typeof se=="function"?se:function(){return se};if(qe.x=qe.y=0,Ka(qe,function(It){It.r=+dt(It.value)}),Ka(qe,Hd),H){var pt=H*(se?1:Math.max(2*qe.r/Xe,2*qe.r/Je))/2;Ka(qe,function(It){It.r+=pt}),Ka(qe,Hd),Ka(qe,function(It){It.r-=pt})}return vf(qe,Xe/2,Je/2,se?1:1/Math.max(2*qe.r/Xe,2*qe.r/Je)),xe}return ue.size=function(he){return arguments.length?(X=he,ue):X},ue.radius=function(he){return arguments.length?(se=he==null||typeof he=="function"?he:+he,ue):se},ue.padding=function(he){return arguments.length?(H=+he,ue):H},Bs(ue,z)};function Cu(z,H){return z.value-H.value}function ol(z,H){var X=z._pack_next;z._pack_next=H,H._pack_prev=z,H._pack_next=X,X._pack_prev=H}function Vc(z,H){z._pack_next=H,H._pack_prev=z}function Ih(z,H){var X=H.x-z.x,se=H.y-z.y,ue=z.r+H.r;return .999*ue*ue>X*X+se*se}function Hd(z){if(!(H=z.children)||!(pt=H.length))return;var H,X=1/0,se=-1/0,ue=1/0,he=-1/0,Se,xe,qe,Xe,Je,dt,pt;function It(Rt){X=Math.min(Rt.x-Rt.r,X),se=Math.max(Rt.x+Rt.r,se),ue=Math.min(Rt.y-Rt.r,ue),he=Math.max(Rt.y+Rt.r,he)}if(H.forEach(jd),Se=H[0],Se.x=-Se.r,Se.y=0,It(Se),pt>1&&(xe=H[1],xe.x=xe.r,xe.y=0,It(xe),pt>2))for(qe=H[2],Sa(Se,xe,qe),It(qe),ol(Se,qe),Se._pack_prev=qe,ol(qe,xe),xe=Se._pack_next,Xe=3;Xekt.x&&(kt=ur),ur.depth>Dt.depth&&(Dt=ur)});var Ot=H(mt,kt)/2-mt.x,Bt=X[0]/(kt.x+H(kt,mt)/2+Ot),Rt=X[1]/(Dt.depth||1);Ll(It,function(ur){ur.x=(ur.x+Ot)*Bt,ur.y=ur.depth*Rt})}return pt}function he(Je){for(var dt={A:null,children:[Je]},pt=[dt],It;(It=pt.pop())!=null;)for(var Nt=It.children,mt,kt=0,Dt=Nt.length;kt0&&(Yc(be(mt,Je,pt),Je,ur),Dt+=ur,Ot+=ur),Bt+=mt.m,Dt+=It.m,Rt+=kt.m,Ot+=Nt.m;mt&&!qh(Nt)&&(Nt.t=mt,Nt.m+=Bt-Ot),It&&!df(kt)&&(kt.t=It,kt.m+=Dt-Rt,pt=Je)}return pt}function Xe(Je){Je.x*=X[0],Je.y=Je.depth*X[1]}return ue.separation=function(Je){return arguments.length?(H=Je,ue):H},ue.size=function(Je){return arguments.length?(se=(X=Je)==null?Xe:null,ue):se?null:X},ue.nodeSize=function(Je){return arguments.length?(se=(X=Je)==null?null:Xe,ue):se?X:null},Bs(ue,z)};function sl(z,H){return z.parent==H.parent?1:2}function df(z){var H=z.children;return H.length?H[0]:z.t}function qh(z){var H=z.children,X;return(X=H.length)?H[X-1]:z.t}function Yc(z,H,X){var se=X/(H.i-z.i);H.c-=se,H.s+=X,z.c+=se,H.z+=X,H.m+=X}function Ca(z){for(var H=0,X=0,se=z.children,ue=se.length,he;--ue>=0;)he=se[ue],he.z+=H,he.m+=H,H+=he.s+(X+=he.c)}function be(z,H,X){return z.a.parent===H.parent?z.a:X}e.layout.cluster=function(){var z=e.layout.hierarchy().sort(null).value(null),H=sl,X=[1,1],se=!1;function ue(he,Se){var xe=z.call(this,he,Se),qe=xe[0],Xe,Je=0;Ka(qe,function(mt){var kt=mt.children;kt&&kt.length?(mt.x=ot(kt),mt.y=Oe(kt)):(mt.x=Xe?Je+=H(mt,Xe):0,mt.y=0,Xe=mt)});var dt=Ke(qe),pt=xt(qe),It=dt.x-H(dt,pt)/2,Nt=pt.x+H(pt,dt)/2;return Ka(qe,se?function(mt){mt.x=(mt.x-qe.x)*X[0],mt.y=(qe.y-mt.y)*X[1]}:function(mt){mt.x=(mt.x-It)/(Nt-It)*X[0],mt.y=(1-(qe.y?mt.y/qe.y:1))*X[1]}),xe}return ue.separation=function(he){return arguments.length?(H=he,ue):H},ue.size=function(he){return arguments.length?(se=(X=he)==null,ue):se?null:X},ue.nodeSize=function(he){return arguments.length?(se=(X=he)!=null,ue):se?X:null},Bs(ue,z)};function Oe(z){return 1+e.max(z,function(H){return H.y})}function ot(z){return z.reduce(function(H,X){return H+X.x},0)/z.length}function Ke(z){var H=z.children;return H&&H.length?Ke(H[0]):z}function xt(z){var H=z.children,X;return H&&(X=H.length)?xt(H[X-1]):z}e.layout.treemap=function(){var z=e.layout.hierarchy(),H=Math.round,X=[1,1],se=null,ue=Ft,he=!1,Se,xe="squarify",qe=.5*(1+Math.sqrt(5));function Xe(mt,kt){for(var Dt=-1,Ot=mt.length,Bt,Rt;++Dt0;)Ot.push(Rt=Bt[lr-1]),Ot.area+=Rt.area,xe!=="squarify"||(Dr=pt(Ot,Pr))<=ur?(Bt.pop(),ur=Dr):(Ot.area-=Ot.pop().area,It(Ot,Pr,Dt,!1),Pr=Math.min(Dt.dx,Dt.dy),Ot.length=Ot.area=0,ur=1/0);Ot.length&&(It(Ot,Pr,Dt,!0),Ot.length=Ot.area=0),kt.forEach(Je)}}function dt(mt){var kt=mt.children;if(kt&&kt.length){var Dt=ue(mt),Ot=kt.slice(),Bt,Rt=[];for(Xe(Ot,Dt.dx*Dt.dy/mt.value),Rt.area=0;Bt=Ot.pop();)Rt.push(Bt),Rt.area+=Bt.area,Bt.z!=null&&(It(Rt,Bt.z?Dt.dx:Dt.dy,Dt,!Ot.length),Rt.length=Rt.area=0);kt.forEach(dt)}}function pt(mt,kt){for(var Dt=mt.area,Ot,Bt=0,Rt=1/0,ur=-1,Dr=mt.length;++urBt&&(Bt=Ot));return Dt*=Dt,kt*=kt,Dt?Math.max(kt*Bt*qe/Dt,Dt/(kt*Rt*qe)):1/0}function It(mt,kt,Dt,Ot){var Bt=-1,Rt=mt.length,ur=Dt.x,Dr=Dt.y,Pr=kt?H(mt.area/kt):0,lr;if(kt==Dt.dx){for((Ot||Pr>Dt.dy)&&(Pr=Dt.dy);++BtDt.dx)&&(Pr=Dt.dx);++Bt1);return z+H*se*Math.sqrt(-2*Math.log(he)/he)}},logNormal:function(){var z=e.random.normal.apply(e,arguments);return function(){return Math.exp(z())}},bates:function(z){var H=e.random.irwinHall(z);return function(){return H()/z}},irwinHall:function(z){return function(){for(var H=0,X=0;X2?cr:sr,Xe=se?El:Sv;return ue=qe(z,H,Xe,X),he=qe(H,z,Xe,_u),xe}function xe(qe){return ue(qe)}return xe.invert=function(qe){return he(qe)},xe.domain=function(qe){return arguments.length?(z=qe.map(Number),Se()):z},xe.range=function(qe){return arguments.length?(H=qe,Se()):H},xe.rangeRound=function(qe){return xe.range(qe).interpolate(No)},xe.clamp=function(qe){return arguments.length?(se=qe,Se()):se},xe.interpolate=function(qe){return arguments.length?(X=qe,Se()):X},xe.ticks=function(qe){return Qr(z,qe)},xe.tickFormat=function(qe,Xe){return d3_scale_linearTickFormat(z,qe,Xe)},xe.nice=function(qe){return jr(z,qe),Se()},xe.copy=function(){return pr(z,H,X,se)},Se()}function Jr(z,H){return e.rebind(z,H,"range","rangeRound","interpolate","clamp")}function jr(z,H){return Yt(z,nr(rn(z,H)[2])),Yt(z,nr(rn(z,H)[2])),z}function rn(z,H){H==null&&(H=10);var X=$t(z),se=X[1]-X[0],ue=Math.pow(10,Math.floor(Math.log(se/H)/Math.LN10)),he=H/se*ue;return he<=.15?ue*=10:he<=.35?ue*=5:he<=.75&&(ue*=2),X[0]=Math.ceil(X[0]/ue)*ue,X[1]=Math.floor(X[1]/ue)*ue+ue*.5,X[2]=ue,X}function Qr(z,H){return e.range.apply(e,rn(z,H))}var yr={s:1,g:1,p:1,r:1,e:1};function Cr(z){return-Math.floor(Math.log(z)/Math.LN10+.01)}function Ze(z,H){var X=Cr(H[2]);return z in yr?Math.abs(X-Cr(Math.max(g(H[0]),g(H[1]))))+ +(z!=="e"):X-(z==="%")*2}e.scale.log=function(){return fn(e.scale.linear().domain([0,1]),10,!0,[1,10])};function fn(z,H,X,se){function ue(xe){return(X?Math.log(xe<0?0:xe):-Math.log(xe>0?0:-xe))/Math.log(H)}function he(xe){return X?Math.pow(H,xe):-Math.pow(H,-xe)}function Se(xe){return z(ue(xe))}return Se.invert=function(xe){return he(z.invert(xe))},Se.domain=function(xe){return arguments.length?(X=xe[0]>=0,z.domain((se=xe.map(Number)).map(ue)),Se):se},Se.base=function(xe){return arguments.length?(H=+xe,z.domain(se.map(ue)),Se):H},Se.nice=function(){var xe=Yt(se.map(ue),X?Math:Kn);return z.domain(xe),se=xe.map(he),Se},Se.ticks=function(){var xe=$t(se),qe=[],Xe=xe[0],Je=xe[1],dt=Math.floor(ue(Xe)),pt=Math.ceil(ue(Je)),It=H%1?2:H;if(isFinite(pt-dt)){if(X){for(;dt0;Nt--)qe.push(he(dt)*Nt);for(dt=0;qe[dt]Je;pt--);qe=qe.slice(dt,pt)}return qe},Se.copy=function(){return fn(z.copy(),H,X,se)},Jr(Se,z)}var Kn={floor:function(z){return-Math.ceil(-z)},ceil:function(z){return-Math.floor(-z)}};e.scale.pow=function(){return Gn(e.scale.linear(),1,[0,1])};function Gn(z,H,X){var se=$r(H),ue=$r(1/H);function he(Se){return z(se(Se))}return he.invert=function(Se){return ue(z.invert(Se))},he.domain=function(Se){return arguments.length?(z.domain((X=Se.map(Number)).map(se)),he):X},he.ticks=function(Se){return Qr(X,Se)},he.tickFormat=function(Se,xe){return d3_scale_linearTickFormat(X,Se,xe)},he.nice=function(Se){return he.domain(jr(X,Se))},he.exponent=function(Se){return arguments.length?(se=$r(H=Se),ue=$r(1/H),z.domain(X.map(se)),he):H},he.copy=function(){return Gn(z.copy(),H,X)},Jr(he,z)}function $r(z){return function(H){return H<0?-Math.pow(-H,z):Math.pow(H,z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Hi([],{t:"range",a:[[]]})};function Hi(z,H){var X,se,ue;function he(xe){return se[((X.get(xe)||(H.t==="range"?X.set(xe,z.push(xe)):NaN))-1)%se.length]}function Se(xe,qe){return e.range(z.length).map(function(Xe){return xe+qe*Xe})}return he.domain=function(xe){if(!arguments.length)return z;z=[],X=new w;for(var qe=-1,Xe=xe.length,Je;++qe0?X[he-1]:z[0],hept?0:1;if(Je=ve)return qe(Je,Nt)+(Xe?qe(Xe,1-Nt):"")+"Z";var mt,kt,Dt,Ot,Bt=0,Rt=0,ur,Dr,Pr,lr,Vr,Yr,yn,Wr,xn=[];if((Ot=(+Se.apply(this,arguments)||0)/2)&&(Dt=se===Kl?Math.sqrt(Xe*Xe+Je*Je):+se.apply(this,arguments),Nt||(Rt*=-1),Je&&(Rt=Ht(Dt/Je*Math.sin(Ot))),Xe&&(Bt=Ht(Dt/Xe*Math.sin(Ot)))),Je){ur=Je*Math.cos(dt+Rt),Dr=Je*Math.sin(dt+Rt),Pr=Je*Math.cos(pt-Rt),lr=Je*Math.sin(pt-Rt);var xi=Math.abs(pt-dt-2*Rt)<=je?0:1;if(Rt&&Fh(ur,Dr,Pr,lr)===Nt^xi){var Pi=(dt+pt)/2;ur=Je*Math.cos(Pi),Dr=Je*Math.sin(Pi),Pr=lr=null}}else ur=Dr=0;if(Xe){Vr=Xe*Math.cos(pt-Bt),Yr=Xe*Math.sin(pt-Bt),yn=Xe*Math.cos(dt+Bt),Wr=Xe*Math.sin(dt+Bt);var Ii=Math.abs(dt-pt+2*Bt)<=je?0:1;if(Bt&&Fh(Vr,Yr,yn,Wr)===1-Nt^Ii){var Ar=(dt+pt)/2;Vr=Xe*Math.cos(Ar),Yr=Xe*Math.sin(Ar),yn=Wr=null}}else Vr=Yr=0;if(It>At&&(mt=Math.min(Math.abs(Je-Xe)/2,+X.apply(this,arguments)))>.001){kt=Xe0?0:1}function Vd(z,H,X,se,ue){var he=z[0]-H[0],Se=z[1]-H[1],xe=(ue?se:-se)/Math.sqrt(he*he+Se*Se),qe=xe*Se,Xe=-xe*he,Je=z[0]+qe,dt=z[1]+Xe,pt=H[0]+qe,It=H[1]+Xe,Nt=(Je+pt)/2,mt=(dt+It)/2,kt=pt-Je,Dt=It-dt,Ot=kt*kt+Dt*Dt,Bt=X-se,Rt=Je*It-pt*dt,ur=(Dt<0?-1:1)*Math.sqrt(Math.max(0,Bt*Bt*Ot-Rt*Rt)),Dr=(Rt*Dt-kt*ur)/Ot,Pr=(-Rt*kt-Dt*ur)/Ot,lr=(Rt*Dt+kt*ur)/Ot,Vr=(-Rt*kt+Dt*ur)/Ot,Yr=Dr-Nt,yn=Pr-mt,Wr=lr-Nt,xn=Vr-mt;return Yr*Yr+yn*yn>Wr*Wr+xn*xn&&(Dr=lr,Pr=Vr),[[Dr-qe,Pr-Xe],[Dr*X/Bt,Pr*X/Bt]]}function Yd(){return!0}function Jm(z){var H=$i,X=Ki,se=Yd,ue=Oo,he=ue.key,Se=.7;function xe(qe){var Xe=[],Je=[],dt=-1,pt=qe.length,It,Nt=Mt(H),mt=Mt(X);function kt(){Xe.push("M",ue(z(Je),Se))}for(;++dt1?z.join("L"):z+"Z"}function $m(z){return z.join("L")+"Z"}function Km(z){for(var H=0,X=z.length,se=z[0],ue=[se[0],",",se[1]];++H1&&ue.push("H",se[0]),ue.join("")}function Hs(z){for(var H=0,X=z.length,se=z[0],ue=[se[0],",",se[1]];++H1){xe=H[1],he=z[qe],qe++,se+="C"+(ue[0]+Se[0])+","+(ue[1]+Se[1])+","+(he[0]-xe[0])+","+(he[1]-xe[1])+","+he[0]+","+he[1];for(var Xe=2;Xe9&&(he=X*3/Math.sqrt(he),Se[xe]=he*se,Se[xe+1]=he*ue));for(xe=-1;++xe<=qe;)he=(z[Math.min(qe,xe+1)][0]-z[Math.max(0,xe-1)][0])/(6*(1+Se[xe]*Se[xe])),H.push([he||0,Se[xe]*he||0]);return H}function Qe(z){return z.length<3?Oo(z):z[0]+Gd(z,Le(z))}e.svg.line.radial=function(){var z=Jm(st);return z.radius=z.x,delete z.x,z.angle=z.y,delete z.y,z};function st(z){for(var H,X=-1,se=z.length,ue,he;++Xje)+",1 "+dt}function Xe(Je,dt,pt,It){return"Q 0,0 "+It}return he.radius=function(Je){return arguments.length?(X=Mt(Je),he):X},he.source=function(Je){return arguments.length?(z=Mt(Je),he):z},he.target=function(Je){return arguments.length?(H=Mt(Je),he):H},he.startAngle=function(Je){return arguments.length?(se=Mt(Je),he):se},he.endAngle=function(Je){return arguments.length?(ue=Mt(Je),he):ue},he};function Ct(z){return z.radius}e.svg.diagonal=function(){var z=ut,H=yt,X=qt;function se(ue,he){var Se=z.call(this,ue,he),xe=H.call(this,ue,he),qe=(Se.y+xe.y)/2,Xe=[Se,{x:Se.x,y:qe},{x:xe.x,y:qe},xe];return Xe=Xe.map(X),"M"+Xe[0]+"C"+Xe[1]+" "+Xe[2]+" "+Xe[3]}return se.source=function(ue){return arguments.length?(z=Mt(ue),se):z},se.target=function(ue){return arguments.length?(H=Mt(ue),se):H},se.projection=function(ue){return arguments.length?(X=ue,se):X},se};function qt(z){return[z.x,z.y]}e.svg.diagonal.radial=function(){var z=e.svg.diagonal(),H=qt,X=z.projection;return z.projection=function(se){return arguments.length?X(Zt(H=se)):H},z};function Zt(z){return function(){var H=z.apply(this,arguments),X=H[0],se=H[1]-Y;return[X*Math.cos(se),X*Math.sin(se)]}}e.svg.symbol=function(){var z=dr,H=rr;function X(se,ue){return(Ur.get(z.call(this,se,ue))||Ir)(H.call(this,se,ue))}return X.type=function(se){return arguments.length?(z=Mt(se),X):z},X.size=function(se){return arguments.length?(H=Mt(se),X):H},X};function rr(){return 64}function dr(){return"circle"}function Ir(z){var H=Math.sqrt(z/je);return"M0,"+H+"A"+H+","+H+" 0 1,1 0,"+-H+"A"+H+","+H+" 0 1,1 0,"+H+"Z"}var Ur=e.map({circle:Ir,cross:function(z){var H=Math.sqrt(z/5)/2;return"M"+-3*H+","+-H+"H"+-H+"V"+-3*H+"H"+H+"V"+-H+"H"+3*H+"V"+H+"H"+H+"V"+3*H+"H"+-H+"V"+H+"H"+-3*H+"Z"},diamond:function(z){var H=Math.sqrt(z/(2*un)),X=H*un;return"M0,"+-H+"L"+X+",0 0,"+H+" "+-X+",0Z"},square:function(z){var H=Math.sqrt(z)/2;return"M"+-H+","+-H+"L"+H+","+-H+" "+H+","+H+" "+-H+","+H+"Z"},"triangle-down":function(z){var H=Math.sqrt(z/an),X=H*an/2;return"M0,"+X+"L"+H+","+-X+" "+-H+","+-X+"Z"},"triangle-up":function(z){var H=Math.sqrt(z/an),X=H*an/2;return"M0,"+-X+"L"+H+","+X+" "+-H+","+X+"Z"}});e.svg.symbolTypes=Ur.keys();var an=Math.sqrt(3),un=Math.tan(30*ie);te.transition=function(z){for(var H=Ri||++ya,X=as(z),se=[],ue,he,Se=Ts||{time:Date.now(),ease:Tv,delay:0,duration:250},xe=-1,qe=this.length;++xe0;)dt[--Ot].call(z,Dt);if(kt>=1)return Se.event&&Se.event.end.call(z,z.__data__,H),--he.count?delete he[se]:delete z[X],1}Se||(xe=ue.time,qe=ei(pt,0,xe),Se=he[se]={tween:new w,time:xe,timer:qe,delay:ue.delay,duration:ue.duration,ease:ue.ease,index:H},ue=null,++he.count)}e.svg.axis=function(){var z=e.scale.linear(),H=Ql,X=6,se=6,ue=3,he=[10],Se=null,xe;function qe(Xe){Xe.each(function(){var Je=e.select(this),dt=this.__chart__||z,pt=this.__chart__=z.copy(),It=Se??(pt.ticks?pt.ticks.apply(pt,he):pt.domain()),Nt=xe??(pt.tickFormat?pt.tickFormat.apply(pt,he):R),mt=Je.selectAll(".tick").data(It,pt),kt=mt.enter().insert("g",".domain").attr("class","tick").style("opacity",At),Dt=e.transition(mt.exit()).style("opacity",At).remove(),Ot=e.transition(mt.order()).style("opacity",1),Bt=Math.max(X,0)+ue,Rt,ur=Kt(pt),Dr=Je.selectAll(".domain").data([0]),Pr=(Dr.enter().append("path").attr("class","domain"),e.transition(Dr));kt.append("line"),kt.append("text");var lr=kt.select("line"),Vr=Ot.select("line"),Yr=mt.select("text").text(Nt),yn=kt.select("text"),Wr=Ot.select("text"),xn=H==="top"||H==="left"?-1:1,xi,Pi,Ii,Ar;if(H==="bottom"||H==="top"?(Rt=Eu,xi="x",Ii="y",Pi="x2",Ar="y2",Yr.attr("dy",xn<0?"0em":".71em").style("text-anchor","middle"),Pr.attr("d","M"+ur[0]+","+xn*se+"V0H"+ur[1]+"V"+xn*se)):(Rt=yf,xi="y",Ii="x",Pi="y2",Ar="x2",Yr.attr("dy",".32em").style("text-anchor",xn<0?"end":"start"),Pr.attr("d","M"+xn*se+","+ur[0]+"H0V"+ur[1]+"H"+xn*se)),lr.attr(Ar,xn*X),yn.attr(Ii,xn*Bt),Vr.attr(Pi,0).attr(Ar,xn*X),Wr.attr(xi,0).attr(Ii,xn*Bt),pt.rangeBand){var Mn=pt,Pn=Mn.rangeBand()/2;dt=pt=function(di){return Mn(di)+Pn}}else dt.rangeBand?dt=pt:Dt.call(Rt,pt,dt);kt.call(Rt,dt,pt),Ot.call(Rt,pt,pt)})}return qe.scale=function(Xe){return arguments.length?(z=Xe,qe):z},qe.orient=function(Xe){return arguments.length?(H=Xe in ul?Xe+"":Ql,qe):H},qe.ticks=function(){return arguments.length?(he=r(arguments),qe):he},qe.tickValues=function(Xe){return arguments.length?(Se=Xe,qe):Se},qe.tickFormat=function(Xe){return arguments.length?(xe=Xe,qe):xe},qe.tickSize=function(Xe){var Je=arguments.length;return Je?(X=+Xe,se=+arguments[Je-1],qe):X},qe.innerTickSize=function(Xe){return arguments.length?(X=+Xe,qe):X},qe.outerTickSize=function(Xe){return arguments.length?(se=+Xe,qe):se},qe.tickPadding=function(Xe){return arguments.length?(ue=+Xe,qe):ue},qe.tickSubdivide=function(){return arguments.length&&qe},qe};var Ql="bottom",ul={top:1,right:1,bottom:1,left:1};function Eu(z,H,X){z.attr("transform",function(se){var ue=H(se);return"translate("+(isFinite(ue)?ue:X(se))+",0)"})}function yf(z,H,X){z.attr("transform",function(se){var ue=H(se);return"translate(0,"+(isFinite(ue)?ue:X(se))+")"})}e.svg.brush=function(){var z=Q(Je,"brushstart","brush","brushend"),H=null,X=null,se=[0,0],ue=[0,0],he,Se,xe=!0,qe=!0,Xe=js[0];function Je(mt){mt.each(function(){var kt=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Nt).on("touchstart.brush",Nt),Dt=kt.selectAll(".background").data([0]);Dt.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),kt.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ot=kt.selectAll(".resize").data(Xe,R);Ot.exit().remove(),Ot.enter().append("g").attr("class",function(Dr){return"resize "+Dr}).style("cursor",function(Dr){return Wf[Dr]}).append("rect").attr("x",function(Dr){return/[ew]$/.test(Dr)?-3:null}).attr("y",function(Dr){return/^[ns]/.test(Dr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ot.style("display",Je.empty()?"none":null);var Bt=e.transition(kt),Rt=e.transition(Dt),ur;H&&(ur=Kt(H),Rt.attr("x",ur[0]).attr("width",ur[1]-ur[0]),pt(Bt)),X&&(ur=Kt(X),Rt.attr("y",ur[0]).attr("height",ur[1]-ur[0]),It(Bt)),dt(Bt)})}Je.event=function(mt){mt.each(function(){var kt=z.of(this,arguments),Dt={x:se,y:ue,i:he,j:Se},Ot=this.__chart__||Dt;this.__chart__=Dt,Ri?e.select(this).transition().each("start.brush",function(){he=Ot.i,Se=Ot.j,se=Ot.x,ue=Ot.y,kt({type:"brushstart"})}).tween("brush:brush",function(){var Bt=jf(se,Dt.x),Rt=jf(ue,Dt.y);return he=Se=null,function(ur){se=Dt.x=Bt(ur),ue=Dt.y=Rt(ur),kt({type:"brush",mode:"resize"})}}).each("end.brush",function(){he=Dt.i,Se=Dt.j,kt({type:"brush",mode:"resize"}),kt({type:"brushend"})}):(kt({type:"brushstart"}),kt({type:"brush",mode:"resize"}),kt({type:"brushend"}))})};function dt(mt){mt.selectAll(".resize").attr("transform",function(kt){return"translate("+se[+/e$/.test(kt)]+","+ue[+/^s/.test(kt)]+")"})}function pt(mt){mt.select(".extent").attr("x",se[0]),mt.selectAll(".extent,.n>rect,.s>rect").attr("width",se[1]-se[0])}function It(mt){mt.select(".extent").attr("y",ue[0]),mt.selectAll(".extent,.e>rect,.w>rect").attr("height",ue[1]-ue[0])}function Nt(){var mt=this,kt=e.select(e.event.target),Dt=z.of(mt,arguments),Ot=e.select(mt),Bt=kt.datum(),Rt=!/^(n|s)$/.test(Bt)&&H,ur=!/^(e|w)$/.test(Bt)&&X,Dr=kt.classed("extent"),Pr=_t(mt),lr,Vr=e.mouse(mt),Yr,yn=e.select(a(mt)).on("keydown.brush",xi).on("keyup.brush",Pi);if(e.event.changedTouches?yn.on("touchmove.brush",Ii).on("touchend.brush",Mn):yn.on("mousemove.brush",Ii).on("mouseup.brush",Mn),Ot.interrupt().selectAll("*").interrupt(),Dr)Vr[0]=se[0]-Vr[0],Vr[1]=ue[0]-Vr[1];else if(Bt){var Wr=+/w$/.test(Bt),xn=+/^n/.test(Bt);Yr=[se[1-Wr]-Vr[0],ue[1-xn]-Vr[1]],Vr[0]=se[Wr],Vr[1]=ue[xn]}else e.event.altKey&&(lr=Vr.slice());Ot.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",kt.style("cursor")),Dt({type:"brushstart"}),Ii();function xi(){e.event.keyCode==32&&(Dr||(lr=null,Vr[0]-=se[1],Vr[1]-=ue[1],Dr=2),G())}function Pi(){e.event.keyCode==32&&Dr==2&&(Vr[0]+=se[1],Vr[1]+=ue[1],Dr=0,G())}function Ii(){var Pn=e.mouse(mt),di=!1;Yr&&(Pn[0]+=Yr[0],Pn[1]+=Yr[1]),Dr||(e.event.altKey?(lr||(lr=[(se[0]+se[1])/2,(ue[0]+ue[1])/2]),Vr[0]=se[+(Pn[0]{(function(e,t){typeof sT=="object"&&typeof kV<"u"?t(sT):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(sT,function(e){"use strict";var t=new Date,r=new Date;function n(ce,Ee,Ae,Pe){function He(Fe){return ce(Fe=arguments.length===0?new Date:new Date(+Fe)),Fe}return He.floor=function(Fe){return ce(Fe=new Date(+Fe)),Fe},He.ceil=function(Fe){return ce(Fe=new Date(Fe-1)),Ee(Fe,1),ce(Fe),Fe},He.round=function(Fe){var ke=He(Fe),Ue=He.ceil(Fe);return Fe-ke0))return Ge;do Ge.push(lt=new Date(+Fe)),Ee(Fe,Ue),ce(Fe);while(lt=ke)for(;ce(ke),!Fe(ke);)ke.setTime(ke-1)},function(ke,Ue){if(ke>=ke)if(Ue<0)for(;++Ue<=0;)for(;Ee(ke,-1),!Fe(ke););else for(;--Ue>=0;)for(;Ee(ke,1),!Fe(ke););})},Ae&&(He.count=function(Fe,ke){return t.setTime(+Fe),r.setTime(+ke),ce(t),ce(r),Math.floor(Ae(t,r))},He.every=function(Fe){return Fe=Math.floor(Fe),!isFinite(Fe)||!(Fe>0)?null:Fe>1?He.filter(Pe?function(ke){return Pe(ke)%Fe===0}:function(ke){return He.count(0,ke)%Fe===0}):He}),He}var i=n(function(){},function(ce,Ee){ce.setTime(+ce+Ee)},function(ce,Ee){return Ee-ce});i.every=function(ce){return ce=Math.floor(ce),!isFinite(ce)||!(ce>0)?null:ce>1?n(function(Ee){Ee.setTime(Math.floor(Ee/ce)*ce)},function(Ee,Ae){Ee.setTime(+Ee+Ae*ce)},function(Ee,Ae){return(Ae-Ee)/ce}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,f=6048e5,c=n(function(ce){ce.setTime(ce-ce.getMilliseconds())},function(ce,Ee){ce.setTime(+ce+Ee*o)},function(ce,Ee){return(Ee-ce)/o},function(ce){return ce.getUTCSeconds()}),h=c.range,d=n(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*o)},function(ce,Ee){ce.setTime(+ce+Ee*s)},function(ce,Ee){return(Ee-ce)/s},function(ce){return ce.getMinutes()}),v=d.range,m=n(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*o-ce.getMinutes()*s)},function(ce,Ee){ce.setTime(+ce+Ee*l)},function(ce,Ee){return(Ee-ce)/l},function(ce){return ce.getHours()}),b=m.range,g=n(function(ce){ce.setHours(0,0,0,0)},function(ce,Ee){ce.setDate(ce.getDate()+Ee)},function(ce,Ee){return(Ee-ce-(Ee.getTimezoneOffset()-ce.getTimezoneOffset())*s)/u},function(ce){return ce.getDate()-1}),_=g.range;function T(ce){return n(function(Ee){Ee.setDate(Ee.getDate()-(Ee.getDay()+7-ce)%7),Ee.setHours(0,0,0,0)},function(Ee,Ae){Ee.setDate(Ee.getDate()+Ae*7)},function(Ee,Ae){return(Ae-Ee-(Ae.getTimezoneOffset()-Ee.getTimezoneOffset())*s)/f})}var w=T(0),k=T(1),x=T(2),M=T(3),A=T(4),p=T(5),S=T(6),y=w.range,E=k.range,C=x.range,L=M.range,R=A.range,I=p.range,P=S.range,D=n(function(ce){ce.setDate(1),ce.setHours(0,0,0,0)},function(ce,Ee){ce.setMonth(ce.getMonth()+Ee)},function(ce,Ee){return Ee.getMonth()-ce.getMonth()+(Ee.getFullYear()-ce.getFullYear())*12},function(ce){return ce.getMonth()}),q=D.range,N=n(function(ce){ce.setMonth(0,1),ce.setHours(0,0,0,0)},function(ce,Ee){ce.setFullYear(ce.getFullYear()+Ee)},function(ce,Ee){return Ee.getFullYear()-ce.getFullYear()},function(ce){return ce.getFullYear()});N.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:n(function(Ee){Ee.setFullYear(Math.floor(Ee.getFullYear()/ce)*ce),Ee.setMonth(0,1),Ee.setHours(0,0,0,0)},function(Ee,Ae){Ee.setFullYear(Ee.getFullYear()+Ae*ce)})};var U=N.range,G=n(function(ce){ce.setUTCSeconds(0,0)},function(ce,Ee){ce.setTime(+ce+Ee*s)},function(ce,Ee){return(Ee-ce)/s},function(ce){return ce.getUTCMinutes()}),ee=G.range,Q=n(function(ce){ce.setUTCMinutes(0,0,0)},function(ce,Ee){ce.setTime(+ce+Ee*l)},function(ce,Ee){return(Ee-ce)/l},function(ce){return ce.getUTCHours()}),j=Q.range,O=n(function(ce){ce.setUTCHours(0,0,0,0)},function(ce,Ee){ce.setUTCDate(ce.getUTCDate()+Ee)},function(ce,Ee){return(Ee-ce)/u},function(ce){return ce.getUTCDate()-1}),Z=O.range;function K(ce){return n(function(Ee){Ee.setUTCDate(Ee.getUTCDate()-(Ee.getUTCDay()+7-ce)%7),Ee.setUTCHours(0,0,0,0)},function(Ee,Ae){Ee.setUTCDate(Ee.getUTCDate()+Ae*7)},function(Ee,Ae){return(Ae-Ee)/f})}var $=K(0),oe=K(1),te=K(2),V=K(3),ne=K(4),W=K(5),fe=K(6),ge=$.range,Ce=oe.range,Ne=te.range,pe=V.range,me=ne.range,Ie=W.range,Re=fe.range,ze=n(function(ce){ce.setUTCDate(1),ce.setUTCHours(0,0,0,0)},function(ce,Ee){ce.setUTCMonth(ce.getUTCMonth()+Ee)},function(ce,Ee){return Ee.getUTCMonth()-ce.getUTCMonth()+(Ee.getUTCFullYear()-ce.getUTCFullYear())*12},function(ce){return ce.getUTCMonth()}),Be=ze.range,tt=n(function(ce){ce.setUTCMonth(0,1),ce.setUTCHours(0,0,0,0)},function(ce,Ee){ce.setUTCFullYear(ce.getUTCFullYear()+Ee)},function(ce,Ee){return Ee.getUTCFullYear()-ce.getUTCFullYear()},function(ce){return ce.getUTCFullYear()});tt.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:n(function(Ee){Ee.setUTCFullYear(Math.floor(Ee.getUTCFullYear()/ce)*ce),Ee.setUTCMonth(0,1),Ee.setUTCHours(0,0,0,0)},function(Ee,Ae){Ee.setUTCFullYear(Ee.getUTCFullYear()+Ae*ce)})};var rt=tt.range;e.timeDay=g,e.timeDays=_,e.timeFriday=p,e.timeFridays=I,e.timeHour=m,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=k,e.timeMondays=E,e.timeMonth=D,e.timeMonths=q,e.timeSaturday=S,e.timeSaturdays=P,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=w,e.timeSundays=y,e.timeThursday=A,e.timeThursdays=R,e.timeTuesday=x,e.timeTuesdays=C,e.timeWednesday=M,e.timeWednesdays=L,e.timeWeek=w,e.timeWeeks=y,e.timeYear=N,e.timeYears=U,e.utcDay=O,e.utcDays=Z,e.utcFriday=W,e.utcFridays=Ie,e.utcHour=Q,e.utcHours=j,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=G,e.utcMinutes=ee,e.utcMonday=oe,e.utcMondays=Ce,e.utcMonth=ze,e.utcMonths=Be,e.utcSaturday=fe,e.utcSaturdays=Re,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=$,e.utcSundays=ge,e.utcThursday=ne,e.utcThursdays=me,e.utcTuesday=te,e.utcTuesdays=Ne,e.utcWednesday=V,e.utcWednesdays=pe,e.utcWeek=$,e.utcWeeks=ge,e.utcYear=tt,e.utcYears=rt,Object.defineProperty(e,"__esModule",{value:!0})})});var m1=J((lT,SV)=>{(function(e,t){typeof lT=="object"&&typeof SV<"u"?t(lT,sE()):typeof define=="function"&&define.amd?define(["exports","d3-time"],t):(e=e||self,t(e.d3=e.d3||{},e.d3))})(lT,function(e,t){"use strict";function r(Y){if(0<=Y.y&&Y.y<100){var ie=new Date(-1,Y.m,Y.d,Y.H,Y.M,Y.S,Y.L);return ie.setFullYear(Y.y),ie}return new Date(Y.y,Y.m,Y.d,Y.H,Y.M,Y.S,Y.L)}function n(Y){if(0<=Y.y&&Y.y<100){var ie=new Date(Date.UTC(-1,Y.m,Y.d,Y.H,Y.M,Y.S,Y.L));return ie.setUTCFullYear(Y.y),ie}return new Date(Date.UTC(Y.y,Y.m,Y.d,Y.H,Y.M,Y.S,Y.L))}function i(Y,ie,Te){return{y:Y,m:ie,d:Te,H:0,M:0,S:0,L:0}}function a(Y){var ie=Y.dateTime,Te=Y.date,Ve=Y.time,at=Y.periods,ft=Y.days,Ht=Y.shortDays,Xt=Y.months,St=Y.shortMonths,Vt=h(at),er=d(at),_r=h(ft),br=d(ft),or=h(Ht),tn=d(Ht),Lr=h(Xt),Gr=d(Xt),sn=h(St),Hr=d(St),Br={a:ga,A:Ia,b:si,B:aa,c:null,d:D,e:D,f:ee,g:W,G:ge,H:q,I:N,j:U,L:G,m:Q,M:j,p:wo,q:ma,Q:_t,s:Tt,S:O,u:Z,U:K,V:oe,w:te,W:V,x:null,X:null,y:ne,Y:fe,Z:Ce,"%":wt},qn={a:oa,A:yu,b:Xl,B:xu,c:null,d:Ne,e:Ne,f:ze,g:Ue,G:lt,H:pe,I:me,j:Ie,L:Re,m:Be,M:tt,p:De,q:ct,Q:_t,s:Tt,S:rt,u:ce,U:Ee,V:Pe,w:He,W:Fe,x:null,X:null,y:ke,Y:Ge,Z:it,"%":wt},kn={a:Si,A:Aa,b:ia,B:An,c:Ji,d:A,e:A,f:L,g:w,G:T,H:S,I:S,j:p,L:C,m:M,M:y,p:wn,q:x,Q:I,s:P,S:E,u:m,U:b,V:g,w:v,W:_,x:ii,X:bo,y:w,Y:T,Z:k,"%":R};Br.x=Yn(Te,Br),Br.X=Yn(Ve,Br),Br.c=Yn(ie,Br),qn.x=Yn(Te,qn),qn.X=Yn(Ve,qn),qn.c=Yn(ie,qn);function Yn(ht,Mt){return function(Gt){var Lt=[],ir=-1,zt=0,ar=ht.length,kr,Er,Xr;for(Gt instanceof Date||(Gt=new Date(+Gt));++ir53)return null;"w"in Lt||(Lt.w=1),"Z"in Lt?(zt=n(i(Lt.y,0,1)),ar=zt.getUTCDay(),zt=ar>4||ar===0?t.utcMonday.ceil(zt):t.utcMonday(zt),zt=t.utcDay.offset(zt,(Lt.V-1)*7),Lt.y=zt.getUTCFullYear(),Lt.m=zt.getUTCMonth(),Lt.d=zt.getUTCDate()+(Lt.w+6)%7):(zt=r(i(Lt.y,0,1)),ar=zt.getDay(),zt=ar>4||ar===0?t.timeMonday.ceil(zt):t.timeMonday(zt),zt=t.timeDay.offset(zt,(Lt.V-1)*7),Lt.y=zt.getFullYear(),Lt.m=zt.getMonth(),Lt.d=zt.getDate()+(Lt.w+6)%7)}else("W"in Lt||"U"in Lt)&&("w"in Lt||(Lt.w="u"in Lt?Lt.u%7:"W"in Lt?1:0),ar="Z"in Lt?n(i(Lt.y,0,1)).getUTCDay():r(i(Lt.y,0,1)).getDay(),Lt.m=0,Lt.d="W"in Lt?(Lt.w+6)%7+Lt.W*7-(ar+5)%7:Lt.w+Lt.U*7-(ar+6)%7);return"Z"in Lt?(Lt.H+=Lt.Z/100|0,Lt.M+=Lt.Z%100,n(Lt)):r(Lt)}}function Fn(ht,Mt,Gt,Lt){for(var ir=0,zt=Mt.length,ar=Gt.length,kr,Er;ir=ar)return-1;if(kr=Mt.charCodeAt(ir++),kr===37){if(kr=Mt.charAt(ir++),Er=kn[kr in o?Mt.charAt(ir++):kr],!Er||(Lt=Er(ht,Gt,Lt))<0)return-1}else if(kr!=Gt.charCodeAt(Lt++))return-1}return Lt}function wn(ht,Mt,Gt){var Lt=Vt.exec(Mt.slice(Gt));return Lt?(ht.p=er[Lt[0].toLowerCase()],Gt+Lt[0].length):-1}function Si(ht,Mt,Gt){var Lt=or.exec(Mt.slice(Gt));return Lt?(ht.w=tn[Lt[0].toLowerCase()],Gt+Lt[0].length):-1}function Aa(ht,Mt,Gt){var Lt=_r.exec(Mt.slice(Gt));return Lt?(ht.w=br[Lt[0].toLowerCase()],Gt+Lt[0].length):-1}function ia(ht,Mt,Gt){var Lt=sn.exec(Mt.slice(Gt));return Lt?(ht.m=Hr[Lt[0].toLowerCase()],Gt+Lt[0].length):-1}function An(ht,Mt,Gt){var Lt=Lr.exec(Mt.slice(Gt));return Lt?(ht.m=Gr[Lt[0].toLowerCase()],Gt+Lt[0].length):-1}function Ji(ht,Mt,Gt){return Fn(ht,ie,Mt,Gt)}function ii(ht,Mt,Gt){return Fn(ht,Te,Mt,Gt)}function bo(ht,Mt,Gt){return Fn(ht,Ve,Mt,Gt)}function ga(ht){return Ht[ht.getDay()]}function Ia(ht){return ft[ht.getDay()]}function si(ht){return St[ht.getMonth()]}function aa(ht){return Xt[ht.getMonth()]}function wo(ht){return at[+(ht.getHours()>=12)]}function ma(ht){return 1+~~(ht.getMonth()/3)}function oa(ht){return Ht[ht.getUTCDay()]}function yu(ht){return ft[ht.getUTCDay()]}function Xl(ht){return St[ht.getUTCMonth()]}function xu(ht){return Xt[ht.getUTCMonth()]}function De(ht){return at[+(ht.getUTCHours()>=12)]}function ct(ht){return 1+~~(ht.getUTCMonth()/3)}return{format:function(ht){var Mt=Yn(ht+="",Br);return Mt.toString=function(){return ht},Mt},parse:function(ht){var Mt=Wn(ht+="",!1);return Mt.toString=function(){return ht},Mt},utcFormat:function(ht){var Mt=Yn(ht+="",qn);return Mt.toString=function(){return ht},Mt},utcParse:function(ht){var Mt=Wn(ht+="",!0);return Mt.toString=function(){return ht},Mt}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(Y,ie,Te){var Ve=Y<0?"-":"",at=(Ve?-Y:Y)+"",ft=at.length;return Ve+(ft68?1900:2e3),Te+Ve[0].length):-1}function k(Y,ie,Te){var Ve=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ie.slice(Te,Te+6));return Ve?(Y.Z=Ve[1]?0:-(Ve[2]+(Ve[3]||"00")),Te+Ve[0].length):-1}function x(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+1));return Ve?(Y.q=Ve[0]*3-3,Te+Ve[0].length):-1}function M(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+2));return Ve?(Y.m=Ve[0]-1,Te+Ve[0].length):-1}function A(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+2));return Ve?(Y.d=+Ve[0],Te+Ve[0].length):-1}function p(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+3));return Ve?(Y.m=0,Y.d=+Ve[0],Te+Ve[0].length):-1}function S(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+2));return Ve?(Y.H=+Ve[0],Te+Ve[0].length):-1}function y(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+2));return Ve?(Y.M=+Ve[0],Te+Ve[0].length):-1}function E(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+2));return Ve?(Y.S=+Ve[0],Te+Ve[0].length):-1}function C(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+3));return Ve?(Y.L=+Ve[0],Te+Ve[0].length):-1}function L(Y,ie,Te){var Ve=s.exec(ie.slice(Te,Te+6));return Ve?(Y.L=Math.floor(Ve[0]/1e3),Te+Ve[0].length):-1}function R(Y,ie,Te){var Ve=l.exec(ie.slice(Te,Te+1));return Ve?Te+Ve[0].length:-1}function I(Y,ie,Te){var Ve=s.exec(ie.slice(Te));return Ve?(Y.Q=+Ve[0],Te+Ve[0].length):-1}function P(Y,ie,Te){var Ve=s.exec(ie.slice(Te));return Ve?(Y.s=+Ve[0],Te+Ve[0].length):-1}function D(Y,ie){return f(Y.getDate(),ie,2)}function q(Y,ie){return f(Y.getHours(),ie,2)}function N(Y,ie){return f(Y.getHours()%12||12,ie,2)}function U(Y,ie){return f(1+t.timeDay.count(t.timeYear(Y),Y),ie,3)}function G(Y,ie){return f(Y.getMilliseconds(),ie,3)}function ee(Y,ie){return G(Y,ie)+"000"}function Q(Y,ie){return f(Y.getMonth()+1,ie,2)}function j(Y,ie){return f(Y.getMinutes(),ie,2)}function O(Y,ie){return f(Y.getSeconds(),ie,2)}function Z(Y){var ie=Y.getDay();return ie===0?7:ie}function K(Y,ie){return f(t.timeSunday.count(t.timeYear(Y)-1,Y),ie,2)}function $(Y){var ie=Y.getDay();return ie>=4||ie===0?t.timeThursday(Y):t.timeThursday.ceil(Y)}function oe(Y,ie){return Y=$(Y),f(t.timeThursday.count(t.timeYear(Y),Y)+(t.timeYear(Y).getDay()===4),ie,2)}function te(Y){return Y.getDay()}function V(Y,ie){return f(t.timeMonday.count(t.timeYear(Y)-1,Y),ie,2)}function ne(Y,ie){return f(Y.getFullYear()%100,ie,2)}function W(Y,ie){return Y=$(Y),f(Y.getFullYear()%100,ie,2)}function fe(Y,ie){return f(Y.getFullYear()%1e4,ie,4)}function ge(Y,ie){var Te=Y.getDay();return Y=Te>=4||Te===0?t.timeThursday(Y):t.timeThursday.ceil(Y),f(Y.getFullYear()%1e4,ie,4)}function Ce(Y){var ie=Y.getTimezoneOffset();return(ie>0?"-":(ie*=-1,"+"))+f(ie/60|0,"0",2)+f(ie%60,"0",2)}function Ne(Y,ie){return f(Y.getUTCDate(),ie,2)}function pe(Y,ie){return f(Y.getUTCHours(),ie,2)}function me(Y,ie){return f(Y.getUTCHours()%12||12,ie,2)}function Ie(Y,ie){return f(1+t.utcDay.count(t.utcYear(Y),Y),ie,3)}function Re(Y,ie){return f(Y.getUTCMilliseconds(),ie,3)}function ze(Y,ie){return Re(Y,ie)+"000"}function Be(Y,ie){return f(Y.getUTCMonth()+1,ie,2)}function tt(Y,ie){return f(Y.getUTCMinutes(),ie,2)}function rt(Y,ie){return f(Y.getUTCSeconds(),ie,2)}function ce(Y){var ie=Y.getUTCDay();return ie===0?7:ie}function Ee(Y,ie){return f(t.utcSunday.count(t.utcYear(Y)-1,Y),ie,2)}function Ae(Y){var ie=Y.getUTCDay();return ie>=4||ie===0?t.utcThursday(Y):t.utcThursday.ceil(Y)}function Pe(Y,ie){return Y=Ae(Y),f(t.utcThursday.count(t.utcYear(Y),Y)+(t.utcYear(Y).getUTCDay()===4),ie,2)}function He(Y){return Y.getUTCDay()}function Fe(Y,ie){return f(t.utcMonday.count(t.utcYear(Y)-1,Y),ie,2)}function ke(Y,ie){return f(Y.getUTCFullYear()%100,ie,2)}function Ue(Y,ie){return Y=Ae(Y),f(Y.getUTCFullYear()%100,ie,2)}function Ge(Y,ie){return f(Y.getUTCFullYear()%1e4,ie,4)}function lt(Y,ie){var Te=Y.getUTCDay();return Y=Te>=4||Te===0?t.utcThursday(Y):t.utcThursday.ceil(Y),f(Y.getUTCFullYear()%1e4,ie,4)}function it(){return"+0000"}function wt(){return"%"}function _t(Y){return+Y}function Tt(Y){return Math.floor(+Y/1e3)}var nt;bt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function bt(Y){return nt=a(Y),e.timeFormat=nt.format,e.timeParse=nt.parse,e.utcFormat=nt.utcFormat,e.utcParse=nt.utcParse,nt}var At="%Y-%m-%dT%H:%M:%S.%LZ";function Ye(Y){return Y.toISOString()}var je=Date.prototype.toISOString?Ye:e.utcFormat(At);function $e(Y){var ie=new Date(Y);return isNaN(ie)?null:ie}var ve=+new Date("2000-01-01T00:00:00.000Z")?$e:e.utcParse(At);e.isoFormat=je,e.isoParse=ve,e.timeFormatDefaultLocale=bt,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var lE=J((uT,CV)=>{(function(e,t){typeof uT=="object"&&typeof CV<"u"?t(uT):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.d3=e.d3||{}))})(uT,function(e){"use strict";function t(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function r(M,A){if((p=(M=A?M.toExponential(A-1):M.toExponential()).indexOf("e"))<0)return null;var p,S=M.slice(0,p);return[S.length>1?S[0]+S.slice(2):S,+M.slice(p+1)]}function n(M){return M=r(Math.abs(M)),M?M[1]:NaN}function i(M,A){return function(p,S){for(var y=p.length,E=[],C=0,L=M[0],R=0;y>0&&L>0&&(R+L+1>S&&(L=Math.max(1,S-R)),E.push(p.substring(y-=L,y+L)),!((R+=L+1)>S));)L=M[C=(C+1)%M.length];return E.reverse().join(A)}}function a(M){return function(A){return A.replace(/[0-9]/g,function(p){return M[+p]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(M){if(!(A=o.exec(M)))throw new Error("invalid format: "+M);var A;return new l({fill:A[1],align:A[2],sign:A[3],symbol:A[4],zero:A[5],width:A[6],comma:A[7],precision:A[8]&&A[8].slice(1),trim:A[9],type:A[10]})}s.prototype=l.prototype;function l(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}l.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var A=M.length,p=1,S=-1,y;p0&&(S=0);break}return S>0?M.slice(0,S)+M.slice(y+1):M}var f;function c(M,A){var p=r(M,A);if(!p)return M+"";var S=p[0],y=p[1],E=y-(f=Math.max(-8,Math.min(8,Math.floor(y/3)))*3)+1,C=S.length;return E===C?S:E>C?S+new Array(E-C+1).join("0"):E>0?S.slice(0,E)+"."+S.slice(E):"0."+new Array(1-E).join("0")+r(M,Math.max(0,A+E-1))[0]}function h(M,A){var p=r(M,A);if(!p)return M+"";var S=p[0],y=p[1];return y<0?"0."+new Array(-y).join("0")+S:S.length>y+1?S.slice(0,y+1)+"."+S.slice(y+1):S+new Array(y-S.length+2).join("0")}var d={"%":function(M,A){return(M*100).toFixed(A)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:t,e:function(M,A){return M.toExponential(A)},f:function(M,A){return M.toFixed(A)},g:function(M,A){return M.toPrecision(A)},o:function(M){return Math.round(M).toString(8)},p:function(M,A){return h(M*100,A)},r:h,s:c,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function v(M){return M}var m=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function g(M){var A=M.grouping===void 0||M.thousands===void 0?v:i(m.call(M.grouping,Number),M.thousands+""),p=M.currency===void 0?"":M.currency[0]+"",S=M.currency===void 0?"":M.currency[1]+"",y=M.decimal===void 0?".":M.decimal+"",E=M.numerals===void 0?v:a(m.call(M.numerals,String)),C=M.percent===void 0?"%":M.percent+"",L=M.minus===void 0?"-":M.minus+"",R=M.nan===void 0?"NaN":M.nan+"";function I(D){D=s(D);var q=D.fill,N=D.align,U=D.sign,G=D.symbol,ee=D.zero,Q=D.width,j=D.comma,O=D.precision,Z=D.trim,K=D.type;K==="n"?(j=!0,K="g"):d[K]||(O===void 0&&(O=12),Z=!0,K="g"),(ee||q==="0"&&N==="=")&&(ee=!0,q="0",N="=");var $=G==="$"?p:G==="#"&&/[boxX]/.test(K)?"0"+K.toLowerCase():"",oe=G==="$"?S:/[%p]/.test(K)?C:"",te=d[K],V=/[defgprs%]/.test(K);O=O===void 0?6:/[gprs]/.test(K)?Math.max(1,Math.min(21,O)):Math.max(0,Math.min(20,O));function ne(W){var fe=$,ge=oe,Ce,Ne,pe;if(K==="c")ge=te(W)+ge,W="";else{W=+W;var me=W<0||1/W<0;if(W=isNaN(W)?R:te(Math.abs(W),O),Z&&(W=u(W)),me&&+W==0&&U!=="+"&&(me=!1),fe=(me?U==="("?U:L:U==="-"||U==="("?"":U)+fe,ge=(K==="s"?b[8+f/3]:"")+ge+(me&&U==="("?")":""),V){for(Ce=-1,Ne=W.length;++Cepe||pe>57){ge=(pe===46?y+W.slice(Ce+1):W.slice(Ce))+ge,W=W.slice(0,Ce);break}}}j&&!ee&&(W=A(W,1/0));var Ie=fe.length+W.length+ge.length,Re=Ie>1)+fe+W+ge+Re.slice(Ie);break;default:W=Re+fe+W+ge;break}return E(W)}return ne.toString=function(){return D+""},ne}function P(D,q){var N=I((D=s(D),D.type="f",D)),U=Math.max(-8,Math.min(8,Math.floor(n(q)/3)))*3,G=Math.pow(10,-U),ee=b[8+U/3];return function(Q){return N(G*Q)+ee}}return{format:I,formatPrefix:P}}var _;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(M){return _=g(M),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function w(M){return Math.max(0,-n(Math.abs(M)))}function k(M,A){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(A)/3)))*3-n(Math.abs(M)))}function x(M,A){return M=Math.abs(M),A=Math.abs(A)-M,Math.max(0,n(A)-n(M))+1}e.FormatSpecifier=l,e.formatDefaultLocale=T,e.formatLocale=g,e.formatSpecifier=s,e.precisionFixed=w,e.precisionPrefix=k,e.precisionRound=x,Object.defineProperty(e,"__esModule",{value:!0})})});var LV=J((uLt,EV)=>{"use strict";EV.exports=function(e){for(var t=e.length,r,n=0;n13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var dn=J((fLt,DV)=>{"use strict";var HHe=LV();DV.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&HHe(r))return!1}else if(t!=="number")return!1;return e-e<1}});var oi=J((cLt,RV)=>{"use strict";RV.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var uE=J((fT,PV)=>{(function(e,t){typeof fT=="object"&&typeof PV<"u"?t(fT):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(fT,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array>"u"?[]:new Uint8Array(256),n=0;n>2],f+=t[(s[l]&3)<<4|s[l+1]>>4],f+=t[(s[l+1]&15)<<2|s[l+2]>>6],f+=t[s[l+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},a=function(o){var s=o.length*.75,l=o.length,u,f=0,c,h,d,v;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var m=new ArrayBuffer(s),b=new Uint8Array(m);for(u=0;u>4,b[f++]=(h&15)<<4|d>>2,b[f++]=(d&3)<<6|v&63;return m};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Bv=J((hLt,IV)=>{"use strict";IV.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var fl=J(Kc=>{"use strict";var jHe=uE().decode,VHe=Bv(),fE=Array.isArray,YHe=ArrayBuffer,GHe=DataView;function qV(e){return YHe.isView(e)&&!(e instanceof GHe)}Kc.isTypedArray=qV;function cT(e){return fE(e)||qV(e)}Kc.isArrayOrTypedArray=cT;function WHe(e){return!cT(e[0])}Kc.isArray1D=WHe;Kc.ensureArray=function(e,t){return fE(e)||(e=[]),e.length=t,e};var ks={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};ks.uint8c=ks.u1c;ks.uint8=ks.u1;ks.int8=ks.i1;ks.uint16=ks.u2;ks.int16=ks.i2;ks.uint32=ks.u4;ks.int32=ks.i4;ks.float32=ks.f4;ks.float64=ks.f8;function cE(e){return e.constructor===ArrayBuffer}Kc.isArrayBuffer=cE;Kc.decodeTypedArraySpec=function(e){var t=[],r=XHe(e),n=r.dtype,i=ks[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;cE(o)||(o=jHe(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var l=s.length,u,f,c=+s[0],h=a*c,d=0;if(l===1)t=new i(o);else if(l===2)for(u=+s[1],f=0;f{"use strict";var zV=dn(),vE=fl().isArrayOrTypedArray;UV.exports=function(t,r){if(zV(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var y1=Rb(),QHe=/^\w*$/,eje=0,HV=1,hT=2,jV=3,Rp=4;VV.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=y1(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a2)return l[d]=l[d]|hT,c.set(h,null);if(f){for(a=d;a{"use strict";var tje=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,rje=/^[^\.\[\]]+$/;GV.exports=function(e,t){for(;t;){var r=e.match(tje);if(r)e=r[1];else if(e.match(rje))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var vT=J((mLt,XV)=>{"use strict";var nje=dn();XV.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return nje(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var $V=J((yLt,JV)=>{"use strict";var ZV=fl().isArrayOrTypedArray,Pb=Bv();JV.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(ZV(i)&&ZV(a)&&Pb(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function ije(e,t){var r=e%t;return r<0?r+t:r}function aje(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}KV.exports={mod:ije,modHalf:aje}});var ls=J((bLt,dT)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(V,ne){if(V=V||"",ne=ne||{},V instanceof l)return V;if(!(this instanceof l))return new l(V,ne);var W=u(V);this._originalInput=V,this._r=W.r,this._g=W.g,this._b=W.b,this._a=W.a,this._roundA=i(100*this._a)/100,this._format=ne.format||W.format,this._gradientType=ne.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=W.ok,this._tc_id=n++}l.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 V=this.toRgb();return(V.r*299+V.g*587+V.b*114)/1e3},getLuminance:function(){var V=this.toRgb(),ne,W,fe,ge,Ce,Ne;return ne=V.r/255,W=V.g/255,fe=V.b/255,ne<=.03928?ge=ne/12.92:ge=e.pow((ne+.055)/1.055,2.4),W<=.03928?Ce=W/12.92:Ce=e.pow((W+.055)/1.055,2.4),fe<=.03928?Ne=fe/12.92:Ne=e.pow((fe+.055)/1.055,2.4),.2126*ge+.7152*Ce+.0722*Ne},setAlpha:function(V){return this._a=D(V),this._roundA=i(100*this._a)/100,this},toHsv:function(){var V=d(this._r,this._g,this._b);return{h:V.h*360,s:V.s,v:V.v,a:this._a}},toHsvString:function(){var V=d(this._r,this._g,this._b),ne=i(V.h*360),W=i(V.s*100),fe=i(V.v*100);return this._a==1?"hsv("+ne+", "+W+"%, "+fe+"%)":"hsva("+ne+", "+W+"%, "+fe+"%, "+this._roundA+")"},toHsl:function(){var V=c(this._r,this._g,this._b);return{h:V.h*360,s:V.s,l:V.l,a:this._a}},toHslString:function(){var V=c(this._r,this._g,this._b),ne=i(V.h*360),W=i(V.s*100),fe=i(V.l*100);return this._a==1?"hsl("+ne+", "+W+"%, "+fe+"%)":"hsla("+ne+", "+W+"%, "+fe+"%, "+this._roundA+")"},toHex:function(V){return m(this._r,this._g,this._b,V)},toHexString:function(V){return"#"+this.toHex(V)},toHex8:function(V){return b(this._r,this._g,this._b,this._a,V)},toHex8String:function(V){return"#"+this.toHex8(V)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(q(this._r,255)*100)+"%",g:i(q(this._g,255)*100)+"%",b:i(q(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(q(this._r,255)*100)+"%, "+i(q(this._g,255)*100)+"%, "+i(q(this._b,255)*100)+"%)":"rgba("+i(q(this._r,255)*100)+"%, "+i(q(this._g,255)*100)+"%, "+i(q(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:I[m(this._r,this._g,this._b,!0)]||!1},toFilter:function(V){var ne="#"+g(this._r,this._g,this._b,this._a),W=ne,fe=this._gradientType?"GradientType = 1, ":"";if(V){var ge=l(V);W="#"+g(ge._r,ge._g,ge._b,ge._a)}return"progid:DXImageTransform.Microsoft.gradient("+fe+"startColorstr="+ne+",endColorstr="+W+")"},toString:function(V){var ne=!!V;V=V||this._format;var W=!1,fe=this._a<1&&this._a>=0,ge=!ne&&fe&&(V==="hex"||V==="hex6"||V==="hex3"||V==="hex4"||V==="hex8"||V==="name");return ge?V==="name"&&this._a===0?this.toName():this.toRgbString():(V==="rgb"&&(W=this.toRgbString()),V==="prgb"&&(W=this.toPercentageRgbString()),(V==="hex"||V==="hex6")&&(W=this.toHexString()),V==="hex3"&&(W=this.toHexString(!0)),V==="hex4"&&(W=this.toHex8String(!0)),V==="hex8"&&(W=this.toHex8String()),V==="name"&&(W=this.toName()),V==="hsl"&&(W=this.toHslString()),V==="hsv"&&(W=this.toHsvString()),W||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(V,ne){var W=V.apply(null,[this].concat([].slice.call(ne)));return this._r=W._r,this._g=W._g,this._b=W._b,this.setAlpha(W._a),this},lighten:function(){return this._applyModification(k,arguments)},brighten:function(){return this._applyModification(x,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(T,arguments)},greyscale:function(){return this._applyModification(w,arguments)},spin:function(){return this._applyModification(A,arguments)},_applyCombination:function(V,ne){return V.apply(null,[this].concat([].slice.call(ne)))},analogous:function(){return this._applyCombination(C,arguments)},complement:function(){return this._applyCombination(p,arguments)},monochromatic:function(){return this._applyCombination(L,arguments)},splitcomplement:function(){return this._applyCombination(E,arguments)},triad:function(){return this._applyCombination(S,arguments)},tetrad:function(){return this._applyCombination(y,arguments)}},l.fromRatio=function(V,ne){if(typeof V=="object"){var W={};for(var fe in V)V.hasOwnProperty(fe)&&(fe==="a"?W[fe]=V[fe]:W[fe]=j(V[fe]));V=W}return l(V,ne)};function u(V){var ne={r:0,g:0,b:0},W=1,fe=null,ge=null,Ce=null,Ne=!1,pe=!1;return typeof V=="string"&&(V=oe(V)),typeof V=="object"&&($(V.r)&&$(V.g)&&$(V.b)?(ne=f(V.r,V.g,V.b),Ne=!0,pe=String(V.r).substr(-1)==="%"?"prgb":"rgb"):$(V.h)&&$(V.s)&&$(V.v)?(fe=j(V.s),ge=j(V.v),ne=v(V.h,fe,ge),Ne=!0,pe="hsv"):$(V.h)&&$(V.s)&&$(V.l)&&(fe=j(V.s),Ce=j(V.l),ne=h(V.h,fe,Ce),Ne=!0,pe="hsl"),V.hasOwnProperty("a")&&(W=V.a)),W=D(W),{ok:Ne,format:V.format||pe,r:a(255,o(ne.r,0)),g:a(255,o(ne.g,0)),b:a(255,o(ne.b,0)),a:W}}function f(V,ne,W){return{r:q(V,255)*255,g:q(ne,255)*255,b:q(W,255)*255}}function c(V,ne,W){V=q(V,255),ne=q(ne,255),W=q(W,255);var fe=o(V,ne,W),ge=a(V,ne,W),Ce,Ne,pe=(fe+ge)/2;if(fe==ge)Ce=Ne=0;else{var me=fe-ge;switch(Ne=pe>.5?me/(2-fe-ge):me/(fe+ge),fe){case V:Ce=(ne-W)/me+(ne1&&(ze-=1),ze<1/6?Ie+(Re-Ie)*6*ze:ze<1/2?Re:ze<2/3?Ie+(Re-Ie)*(2/3-ze)*6:Ie}if(ne===0)fe=ge=Ce=W;else{var pe=W<.5?W*(1+ne):W+ne-W*ne,me=2*W-pe;fe=Ne(me,pe,V+1/3),ge=Ne(me,pe,V),Ce=Ne(me,pe,V-1/3)}return{r:fe*255,g:ge*255,b:Ce*255}}function d(V,ne,W){V=q(V,255),ne=q(ne,255),W=q(W,255);var fe=o(V,ne,W),ge=a(V,ne,W),Ce,Ne,pe=fe,me=fe-ge;if(Ne=fe===0?0:me/fe,fe==ge)Ce=0;else{switch(fe){case V:Ce=(ne-W)/me+(ne>1)+720)%360;--ne;)fe.h=(fe.h+ge)%360,Ce.push(l(fe));return Ce}function L(V,ne){ne=ne||6;for(var W=l(V).toHsv(),fe=W.h,ge=W.s,Ce=W.v,Ne=[],pe=1/ne;ne--;)Ne.push(l({h:fe,s:ge,v:Ce})),Ce=(Ce+pe)%1;return Ne}l.mix=function(V,ne,W){W=W===0?0:W||50;var fe=l(V).toRgb(),ge=l(ne).toRgb(),Ce=W/100,Ne={r:(ge.r-fe.r)*Ce+fe.r,g:(ge.g-fe.g)*Ce+fe.g,b:(ge.b-fe.b)*Ce+fe.b,a:(ge.a-fe.a)*Ce+fe.a};return l(Ne)},l.readability=function(V,ne){var W=l(V),fe=l(ne);return(e.max(W.getLuminance(),fe.getLuminance())+.05)/(e.min(W.getLuminance(),fe.getLuminance())+.05)},l.isReadable=function(V,ne,W){var fe=l.readability(V,ne),ge,Ce;switch(Ce=!1,ge=te(W),ge.level+ge.size){case"AAsmall":case"AAAlarge":Ce=fe>=4.5;break;case"AAlarge":Ce=fe>=3;break;case"AAAsmall":Ce=fe>=7;break}return Ce},l.mostReadable=function(V,ne,W){var fe=null,ge=0,Ce,Ne,pe,me;W=W||{},Ne=W.includeFallbackColors,pe=W.level,me=W.size;for(var Ie=0;Iege&&(ge=Ce,fe=l(ne[Ie]));return l.isReadable(V,fe,{level:pe,size:me})||!Ne?fe:(W.includeFallbackColors=!1,l.mostReadable(V,["#fff","#000"],W))};var R=l.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"},I=l.hexNames=P(R);function P(V){var ne={};for(var W in V)V.hasOwnProperty(W)&&(ne[V[W]]=W);return ne}function D(V){return V=parseFloat(V),(isNaN(V)||V<0||V>1)&&(V=1),V}function q(V,ne){G(V)&&(V="100%");var W=ee(V);return V=a(ne,o(0,parseFloat(V))),W&&(V=parseInt(V*ne,10)/100),e.abs(V-ne)<1e-6?1:V%ne/parseFloat(ne)}function N(V){return a(1,o(0,V))}function U(V){return parseInt(V,16)}function G(V){return typeof V=="string"&&V.indexOf(".")!=-1&&parseFloat(V)===1}function ee(V){return typeof V=="string"&&V.indexOf("%")!=-1}function Q(V){return V.length==1?"0"+V:""+V}function j(V){return V<=1&&(V=V*100+"%"),V}function O(V){return e.round(parseFloat(V)*255).toString(16)}function Z(V){return U(V)/255}var K=function(){var V="[-\\+]?\\d+%?",ne="[-\\+]?\\d*\\.\\d+%?",W="(?:"+ne+")|(?:"+V+")",fe="[\\s|\\(]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")\\s*\\)?",ge="[\\s|\\(]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")[,|\\s]+("+W+")\\s*\\)?";return{CSS_UNIT:new RegExp(W),rgb:new RegExp("rgb"+fe),rgba:new RegExp("rgba"+ge),hsl:new RegExp("hsl"+fe),hsla:new RegExp("hsla"+ge),hsv:new RegExp("hsv"+fe),hsva:new RegExp("hsva"+ge),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})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function $(V){return!!K.CSS_UNIT.exec(V)}function oe(V){V=V.replace(t,"").replace(r,"").toLowerCase();var ne=!1;if(R[V])V=R[V],ne=!0;else if(V=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var W;return(W=K.rgb.exec(V))?{r:W[1],g:W[2],b:W[3]}:(W=K.rgba.exec(V))?{r:W[1],g:W[2],b:W[3],a:W[4]}:(W=K.hsl.exec(V))?{h:W[1],s:W[2],l:W[3]}:(W=K.hsla.exec(V))?{h:W[1],s:W[2],l:W[3],a:W[4]}:(W=K.hsv.exec(V))?{h:W[1],s:W[2],v:W[3]}:(W=K.hsva.exec(V))?{h:W[1],s:W[2],v:W[3],a:W[4]}:(W=K.hex8.exec(V))?{r:U(W[1]),g:U(W[2]),b:U(W[3]),a:Z(W[4]),format:ne?"name":"hex8"}:(W=K.hex6.exec(V))?{r:U(W[1]),g:U(W[2]),b:U(W[3]),format:ne?"name":"hex"}:(W=K.hex4.exec(V))?{r:U(W[1]+""+W[1]),g:U(W[2]+""+W[2]),b:U(W[3]+""+W[3]),a:Z(W[4]+""+W[4]),format:ne?"name":"hex8"}:(W=K.hex3.exec(V))?{r:U(W[1]+""+W[1]),g:U(W[2]+""+W[2]),b:U(W[3]+""+W[3]),format:ne?"name":"hex"}:!1}function te(V){var ne,W;return V=V||{level:"AA",size:"small"},ne=(V.level||"AA").toUpperCase(),W=(V.size||"small").toLowerCase(),ne!=="AA"&&ne!=="AAA"&&(ne="AA"),W!=="small"&&W!=="large"&&(W="small"),{level:ne,size:W}}typeof dT<"u"&&dT.exports?dT.exports=l:typeof define=="function"&&define.amd?define(function(){return l}):window.tinycolor=l})(Math)});var cn=J(Fb=>{"use strict";var QV=Bv(),Ib=Array.isArray;function oje(e,t){var r,n;for(r=0;r{"use strict";eY.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal",description:["Sets the weight (or boldness) of the font."].join(" ")};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r,description:["HTML font family - the typeface that will be applied by the web browser.","The web browser will only be able to apply a font if it is available on the system","which it operates. Provide multiple font families, separated by commas, to indicate","the preference in which to apply fonts if they aren't available on the system.","The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server,","where only a select number of","fonts are installed and supported.","These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*,","*Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*,","*PT Sans Narrow*, *Raleway*, *Times New Roman*."].join(" ")},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal",description:["Sets whether a font should be styled with a normal or italic face from its family."].join(" ")},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal",description:["Sets the variant of the font."].join(" ")},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal",description:["Sets capitalization of text.","It can be used to make text appear in all-uppercase or all-lowercase,","or with each word capitalized."].join(" ")},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none",description:["Sets the kind of decoration line(s) with text,","such as an *under*, *over* or *through*","as well as combinations e.g. *under+over*, etc."].join(" ")},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none",description:["Sets the shape and color of the shadow behind text.","*auto* places minimal shadow and applies contrast text font color.","See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options."].join(" ")},editType:r,description:""+(e.description||"")};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var zb=J((TLt,tY)=>{"use strict";tY.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Uv=J((ALt,iY)=>{"use strict";var rY=zb(),nY=xa(),dE=nY({editType:"none",description:"Sets the default hover label font used by all traces on the graph."});dE.family.dflt=rY.HOVERFONT;dE.size.dflt=rY.HOVERFONTSIZE;iY.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"],description:["Determines the mode of single click interactions.","*event* is the default value and emits the `plotly_click`","event. In addition this mode emits the `plotly_selected` event","in drag modes *lasso* and *select*, but with no event data attached","(kept for compatibility reasons).","The *select* flag enables selecting single","data points via click. This mode also supports persistent selections,","meaning that pressing Shift while clicking, adds to / subtracts from an","existing selection. *select* with `hovermode`: *x* can be confusing, consider","explicitly setting `hovermode`: *closest* when using this feature.","Selection events are sent accordingly as long as *event* flag is set as well.","When the *event* flag is missing, `plotly_click` and `plotly_selected`","events are not fired."].join(" ")},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar",description:["Determines the mode of drag interactions.","*select* and *lasso* apply only to scatter traces with","markers or text. *orbit* and *turntable* apply only to","3D scenes."].join(" ")},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar",description:["Determines the mode of hover interactions.","If *closest*, a single hoverlabel will appear","for the *closest* point within the `hoverdistance`.","If *x* (or *y*), multiple hoverlabels will appear for multiple points","at the *closest* x- (or y-) coordinate within the `hoverdistance`,","with the caveat that no more than one hoverlabel will appear per trace.","If *x unified* (or *y unified*), a single hoverlabel will appear","multiple points at the closest x- (or y-) coordinate within the `hoverdistance`","with the caveat that no more than one hoverlabel will appear per trace.","In this mode, spikelines are enabled by default perpendicular to the specified axis.","If false, hover interactions are disabled."].join(" ")},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none",description:["Determines expansion of hover effects to other subplots","If *single* just the axis pair of the primary point is included without overlaying subplots.","If *overlaying* all subplots using the main axis and occupying the same space are included.","If *axis*, also include stacked subplots using the same axis","when `hovermode` is set to *x*, *x unified*, *y* or *y unified*."].join(" ")},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none",description:["Sets the default distance (in pixels) to look for data","to add hover labels (-1 means no cutoff, 0 means no looking for data).","This is only a real distance for hovering on point-like objects,","like scatter points. For area-like objects (bars, scatter fills, etc)","hovering is on inside the area and off outside, but these objects","will not supersede hover on point-like objects in case of conflict."].join(" ")},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none",description:["Sets the default distance (in pixels) to look for data to draw","spikelines to (-1 means no cutoff, 0 means no looking for data).","As with hoverdistance, distance does not apply to area-like objects.","In addition, some objects can be hovered on but will not generate","spikelines, such as scatter fills."].join(" ")},hoverlabel:{bgcolor:{valType:"color",editType:"none",description:["Sets the background color of all hover labels on graph"].join(" ")},bordercolor:{valType:"color",editType:"none",description:["Sets the border color of all hover labels on graph."].join(" ")},font:dE,grouptitlefont:nY({editType:"none",description:["Sets the font for group titles in hover (unified modes).","Defaults to `hoverlabel.font`."].join(" ")}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none",description:["Sets the horizontal alignment of the text content within hover label box.","Has an effect only if the hover label text spans more two or more lines"].join(" ")},namelength:{valType:"integer",min:-1,dflt:15,editType:"none",description:["Sets the default length (in number of characters) of the trace name in","the hover labels for all traces. -1 shows the whole name","regardless of length. 0-3 shows the first 0-3 characters, and","an integer >3 will show the whole name if it is less than that","many characters, but if it is longer, will truncate to","`namelength - 3` characters and add an ellipsis."].join(" ")},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",description:["When `dragmode` is set to *select*, this limits the selection of the drag to","horizontal, vertical or diagonal. *h* only allows horizontal selection,","*v* only vertical, *d* only diagonal and *any* sets no limit."].join(" "),editType:"none"}}});var b1=J((MLt,aY)=>{"use strict";var sje=xa(),pT=Uv().hoverlabel,gT=cn().extendFlat;aY.exports={hoverlabel:{bgcolor:gT({},pT.bgcolor,{arrayOk:!0,description:"Sets the background color of the hover labels for this trace"}),bordercolor:gT({},pT.bordercolor,{arrayOk:!0,description:"Sets the border color of the hover labels for this trace."}),font:sje({arrayOk:!0,editType:"none",description:"Sets the font used in hover labels."}),align:gT({},pT.align,{arrayOk:!0}),namelength:gT({},pT.namelength,{arrayOk:!0}),editType:"none"}}});var Qi=J((kLt,oY)=>{"use strict";var lje=xa(),uje=b1();oY.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc",description:["Determines whether or not this trace is visible.","If *legendonly*, the trace is not drawn,","but can appear as a legend item","(provided that the legend itself is visible)."].join(" ")},showlegend:{valType:"boolean",dflt:!0,editType:"style",description:["Determines whether or not an item corresponding to this","trace is shown in the legend."].join(" ")},legend:{valType:"subplotid",dflt:"legend",editType:"style",description:["Sets the reference to a legend to show this trace in.","References to these legends are *legend*, *legend2*, *legend3*, etc.","Settings for these legends are set in the layout, under","`layout.legend`, `layout.legend2`, etc."].join(" ")},legendgroup:{valType:"string",dflt:"",editType:"style",description:["Sets the legend group for this trace.","Traces and shapes part of the same legend group hide/show at the same time","when toggling legend items."].join(" ")},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style",description:["Sets the title of the legend group."].join(" ")},font:lje({editType:"style",description:["Sets this legend group's title font."].join(" ")}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style",description:["Sets the legend rank for this trace.","Items and groups with smaller ranks are presented on top/left side while","with *reversed* `legend.traceorder` they are on bottom/right side.","The default legendrank is 1000,","so that you can use ranks less than 1000 to place certain items before all unranked items,","and ranks greater than 1000 to go after all unranked items.","When having unranked or equal rank items shapes would be displayed after traces","i.e. according to their order in data and layout."].join(" ")},legendwidth:{valType:"number",min:0,editType:"style",description:"Sets the width (in px or fraction) of the legend for this trace."},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style",description:"Sets the opacity of the trace."},name:{valType:"string",editType:"style",description:["Sets the trace name.","The trace name appears as the legend item and on hover."].join(" ")},uid:{valType:"string",editType:"plot",anim:!0,description:["Assign an id to this trace,","Use this to provide object constancy between traces during animations","and transitions."].join(" ")},ids:{valType:"data_array",editType:"calc",anim:!0,description:["Assigns id labels to each datum.","These ids for object constancy of data points during animation.","Should be an array of strings, not numbers or any other type."].join(" ")},customdata:{valType:"data_array",editType:"calc",description:["Assigns extra data each datum.","This may be useful when listening to hover, click and selection events.","Note that, *scatter* traces also appends customdata items in the markers","DOM elements"].join(" ")},meta:{valType:"any",arrayOk:!0,editType:"plot",description:["Assigns extra meta information associated with this trace","that can be used in various text attributes.","Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text`","`rangeselector`, `updatemenues` and `sliders` `label` text","all support `meta`.","To access the trace `meta` values in an attribute in the same trace, simply use","`%{meta[i]}` where `i` is the index or key of the `meta`","item in question.","To access trace `meta` in layout attributes, use","`%{data[n[.meta[i]}` where `i` is the index or key of the `meta`","and `n` is the trace index."].join(" ")},selectedpoints:{valType:"any",editType:"calc",description:["Array containing integer indices of selected points.","Has an effect only for traces that support selections.","Note that an empty array means an empty selection where the `unselected`","are turned on for all points, whereas, any other non-array values means no","selection all where the `selected` and `unselected` styles have no effect."].join(" ")},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none",description:["Determines which trace information appear on hover.","If `none` or `skip` are set, no information is displayed upon hovering.","But, if `none` is set, click and hover events are still fired."].join(" ")},hoverlabel:uje.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc",description:["The stream id number links a data trace on a plot with a stream.","See https://chart-studio.plotly.com/settings for more details."].join(" ")},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc",description:["Sets the maximum number of points to keep on the plots from an","incoming stream.","If `maxpoints` is set to *50*, only the newest 50 points will","be displayed on the plot."].join(" ")},editType:"calc"},transforms:{_isLinkedToArray:"transform",editType:"calc",description:["WARNING: All transforms are deprecated and may be removed from the API in next major version.","An array of operations that manipulate the trace data,","for example filtering or sorting the data arrays."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Controls persistence of some user-driven changes to the trace:","`constraintrange` in `parcoords` traces, as well as some","`editable: true` modifications such as `name` and `colorbar.title`.","Defaults to `layout.uirevision`.","Note that other user-driven trace attribute changes are controlled","by `layout` attributes:","`trace.visible` is controlled by `layout.legend.uirevision`,","`selectedpoints` is controlled by `layout.selectionrevision`,","and `colorbar.(x|y)` (accessible with `config: {editable: true}`)","is controlled by `layout.editrevision`.","Trace changes are tracked by `uid`, which only falls back on trace","index if no `uid` is provided. So if your app can add/remove traces","before the end of the `data` array, such that the same trace has a","different index, you can still preserve user-driven changes if you","give each trace a `uid` that stays with it as it moves."].join(" ")}}});var Pp=J((SLt,uY)=>{"use strict";var fje=ls(),mT={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[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)"]],YlOrRd:[[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"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},sY=mT.RdBu;function cje(e,t){if(t||(t=sY),!e)return t;function r(){try{e=mT[e]||JSON.parse(e)}catch{e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),lY(e)?e:t}function lY(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";Ip.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Ip.defaultLine="#444";Ip.lightLine="#eee";Ip.background="#fff";Ip.borderLine="#BEC8D9";Ip.lightFraction=100*(14-4)/(15-4)});var qr=J((ELt,fY)=>{"use strict";var Iu=ls(),vje=dn(),dje=fl().isTypedArray,us=fY.exports={},yT=Ho();us.defaults=yT.defaults;var pje=us.defaultLine=yT.defaultLine;us.lightLine=yT.lightLine;var gE=us.background=yT.background;us.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};us.rgb=function(e){return us.tinyRGB(Iu(e))};us.opacity=function(e){return e?Iu(e).getAlpha():0};us.addOpacity=function(e,t){var r=Iu(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};us.combine=function(e,t){var r=Iu(e).toRgb();if(r.a===1)return Iu(e).toRgbString();var n=Iu(t||gE).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return Iu(a).toRgbString()};us.interpolate=function(e,t,r){var n=Iu(e).toRgb(),i=Iu(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return Iu(a).toRgbString()};us.contrast=function(e,t,r){var n=Iu(e);n.getAlpha()!==1&&(n=Iu(us.combine(e,gE)));var i=n.isDark()?t?n.lighten(t):gE:r?n.darken(r):pje;return i.toString()};us.stroke=function(e,t){var r=Iu(t);e.style({stroke:us.tinyRGB(r),"stroke-opacity":r.getAlpha()})};us.fill=function(e,t){var r=Iu(t);e.style({fill:us.tinyRGB(r),"fill-opacity":r.getAlpha()})};us.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var w1=J((LLt,cY)=>{"use strict";cY.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var _1=J(hY=>{"use strict";hY.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var mY=J(qu=>{"use strict";var mE=dn(),vY=ls(),dY=cn().extendFlat,gje=Qi(),pY=Pp(),mje=qr(),yje=w1().DESELECTDIM,T1=Rb(),gY=_1().counter,xje=x1().modHalf,jh=fl().isArrayOrTypedArray,Jd=fl().isTypedArraySpec,$d=fl().decodeTypedArraySpec;qu.valObjectMeta={data_array:{description:["An {array} of data.","The value must represent an {array} or it will be ignored,","but this array can be provided in several forms:","(1) a regular {array} object","(2) a typed array (e.g. Float32Array)","(3) an object with keys dtype, bdata, and optionally shape.","In this 3rd form, dtype is one of","*f8*, *f4*.","*i4*, *u4*,","*i2*, *u2*,","*i1*, *u1* or *u1c* for Uint8ClampedArray.","In addition to shorthand `dtype` above one could also use the following forms:","*float64*, *float32*,","*int32*, *uint32*,","*int16*, *uint16*,","*int8*, *uint8* or *uint8c* for Uint8ClampedArray.","`bdata` is either a base64-encoded string or the ArrayBuffer of","an integer or float typed array.","For either multi-dimensional arrays you must also","provide its dimensions separated by comma via `shape`.","For example using `dtype`: *f4* and `shape`: *5,100* you can","declare a 2-D array that has 5 rows and 100 columns","containing float32 values i.e. 4 bits per value.","`shape` is optional for one dimensional arrays."].join(" "),requiredOpts:[],otherOpts:["dflt"],coerceFunction:function(e,t,r){t.set(jh(e)?e:Jd(e)?$d(e):r)}},enumerated:{description:["Enumerated value type. The available values are listed","in `values`."].join(" "),requiredOpts:["values"],otherOpts:["dflt","coerceNumber","arrayOk"],coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;nn.max?t.set(r):t.set(+e)}},integer:{description:["An integer or an integer inside a string.","When applicable, values greater (less) than `max` (`min`)","are coerced to the `dflt`."].join(" "),requiredOpts:[],otherOpts:["dflt","min","max","arrayOk","extras"],coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}Jd(e)&&(e=$d(e)),e%1||!mE(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},string:{description:["A string value.","Numbers are converted to strings except for attributes with","`strict` set to true."].join(" "),requiredOpts:[],otherOpts:["dflt","noBlank","strict","arrayOk","values"],coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{description:["A string describing color.","Supported formats:","- hex (e.g. '#d3d3d3')","- rgb (e.g. 'rgb(255, 0, 0)')","- rgba (e.g. 'rgb(255, 0, 0, 0.5)')","- hsl (e.g. 'hsl(0, 100%, 50%)')","- hsv (e.g. 'hsv(0, 100%, 100%)')","- named colors (full list: http://www.w3.org/TR/css3-color/#svg-color)"].join(" "),requiredOpts:[],otherOpts:["dflt","arrayOk"],coerceFunction:function(e,t,r){Jd(e)&&(e=$d(e)),vY(e).isValid()?t.set(e):t.set(r)}},colorlist:{description:["A list of colors.","Must be an {array} containing valid colors."].join(" "),requiredOpts:[],otherOpts:["dflt"],coerceFunction:function(e,t,r){function n(i){return vY(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{description:["A Plotly colorscale either picked by a name:","(any of",Object.keys(pY.scales).join(", "),")","customized as an {array} of 2-element {arrays} where","the first element is the normalized color level value","(starting at *0* and ending at *1*),","and the second item is a valid color string."].join(" "),requiredOpts:[],otherOpts:["dflt"],coerceFunction:function(e,t,r){t.set(pY.get(e,r))}},angle:{description:["A number (in degree) between -180 and 180."].join(" "),requiredOpts:[],otherOpts:["dflt","arrayOk"],coerceFunction:function(e,t,r){Jd(e)&&(e=$d(e)),e==="auto"?t.set("auto"):mE(e)?t.set(xje(+e,360)):t.set(r)}},subplotid:{description:["An id string of a subplot type (given by dflt), optionally","followed by an integer >1. e.g. if dflt='geo', we can have","'geo', 'geo2', 'geo3', ..."].join(" "),requiredOpts:["dflt"],otherOpts:["regex"],coerceFunction:function(e,t,r,n){var i=n.regex||gY(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!gY(r).test(e)}},flaglist:{description:["A string representing a combination of flags","(order does not matter here).","Combine any of the available `flags` with *+*.","(e.g. ('lines+markers')).","Values in `extras` cannot be combined."].join(" "),requiredOpts:["flags"],otherOpts:["dflt","extras","arrayOk"],coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a{"use strict";var yY={staticPlot:{valType:"boolean",dflt:!1,description:["Determines whether the graphs are interactive or not.","If *false*, no interactivity, for export or image generation."].join(" ")},typesetMath:{valType:"boolean",dflt:!0,description:["Determines whether math should be typeset or not,","when MathJax (either v2 or v3) is present on the page."].join(" ")},plotlyServerURL:{valType:"string",dflt:"",description:["When set it determines base URL for","the 'Edit in Chart Studio' `showEditInChartStudio`/`showSendToCloud` mode bar button","and the showLink/sendData on-graph link.","To enable sending your data to Chart Studio Cloud, you need to","set both `plotlyServerURL` to 'https://chart-studio.plotly.com' and","also set `showSendToCloud` to true."].join(" ")},editable:{valType:"boolean",dflt:!1,description:["Determines whether the graph is editable or not.","Sets all pieces of `edits`","unless a separate `edits` config item overrides individual parts."].join(" ")},edits:{annotationPosition:{valType:"boolean",dflt:!1,description:["Determines if the main anchor of the annotation is editable.","The main anchor corresponds to the","text (if no arrow) or the arrow (which drags the whole thing leaving","the arrow length & direction unchanged)."].join(" ")},annotationTail:{valType:"boolean",dflt:!1,description:["Has only an effect for annotations with arrows.","Enables changing the length and direction of the arrow."].join(" ")},annotationText:{valType:"boolean",dflt:!1,description:"Enables editing annotation text."},axisTitleText:{valType:"boolean",dflt:!1,description:"Enables editing axis title text."},colorbarPosition:{valType:"boolean",dflt:!1,description:"Enables moving colorbars."},colorbarTitleText:{valType:"boolean",dflt:!1,description:"Enables editing colorbar title text."},legendPosition:{valType:"boolean",dflt:!1,description:"Enables moving the legend."},legendText:{valType:"boolean",dflt:!1,description:"Enables editing the trace name fields from the legend"},shapePosition:{valType:"boolean",dflt:!1,description:"Enables moving shapes."},titleText:{valType:"boolean",dflt:!1,description:"Enables editing the global layout title."}},editSelection:{valType:"boolean",dflt:!0,description:"Enables moving selections."},autosizable:{valType:"boolean",dflt:!1,description:["Determines whether the graphs are plotted with respect to","layout.autosize:true and infer its container size."].join(" ")},responsive:{valType:"boolean",dflt:!1,description:["Determines whether to change the layout size when window is resized.","In v3, this option will be removed and will always be true."].join(" ")},fillFrame:{valType:"boolean",dflt:!1,description:["When `layout.autosize` is turned on, determines whether the graph","fills the container (the default) or the screen (if set to *true*)."].join(" ")},frameMargins:{valType:"number",dflt:0,min:0,max:.5,description:["When `layout.autosize` is turned on, set the frame margins","in fraction of the graph size."].join(" ")},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox"],extras:[!0,!1],dflt:"gl3d+geo+mapbox",description:["Determines whether mouse wheel or two-finger scroll zooms is enable.","Turned on by default for gl3d, geo and mapbox subplots","(as these subplot types do not have zoombox via pan),","but turned off by default for cartesian subplots.","Set `scrollZoom` to *false* to disable scrolling for all subplots."].join(" ")},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize",description:["Sets the double click interaction mode.","Has an effect only in cartesian plots.","If *false*, double click is disable.","If *reset*, double click resets the axis ranges to their initial values.","If *autosize*, double click set the axis ranges to their autorange values.","If *reset+autosize*, the odd double clicks resets the axis ranges","to their initial values and even double clicks set the axis ranges","to their autorange values."].join(" ")},doubleClickDelay:{valType:"number",dflt:300,min:0,description:["Sets the delay for registering a double-click in ms.","This is the time interval (in ms) between first mousedown and","2nd mouseup to constitute a double-click.","This setting propagates to all on-subplot double clicks","(except for geo and mapbox) and on-legend double clicks."].join(" ")},showAxisDragHandles:{valType:"boolean",dflt:!0,description:["Set to *false* to omit cartesian axis pan/zoom drag handles."].join(" ")},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0,description:["Set to *false* to omit direct range entry at the pan/zoom drag points,","note that `showAxisDragHandles` must be enabled to have an effect."].join(" ")},showTips:{valType:"boolean",dflt:!0,description:["Determines whether or not tips are shown while interacting","with the resulting graphs."].join(" ")},showLink:{valType:"boolean",dflt:!1,description:["Determines whether a link to Chart Studio Cloud is displayed","at the bottom right corner of resulting graphs.","Use with `sendData` and `linkText`."].join(" ")},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0,description:["Sets the text appearing in the `showLink` link."].join(" ")},sendData:{valType:"boolean",dflt:!0,description:["If *showLink* is true, does it contain data","just link to a Chart Studio Cloud file?"].join(" ")},showSources:{valType:"any",dflt:!1,description:["Adds a source-displaying function to show sources on","the resulting graphs."].join(" ")},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover",description:["Determines the mode bar display mode.","If *true*, the mode bar is always visible.","If *false*, the mode bar is always hidden.","If *hover*, the mode bar is visible while the mouse cursor","is on the graph container."].join(" ")},showSendToCloud:{valType:"boolean",dflt:!1,description:['Should we include a ModeBar button, labeled "Edit in Chart Studio",',"that sends this chart to chart-studio.plotly.com (formerly plot.ly) or another plotly server","as specified by `plotlyServerURL` for editing, export, etc? Prior to version 1.43.0","this button was included by default, now it is opt-in using this flag.","Note that this button can (depending on `plotlyServerURL` being set) send your data","to an external server. However that server does not persist your data",'until you arrive at the Chart Studio and explicitly click "Save".'].join(" ")},showEditInChartStudio:{valType:"boolean",dflt:!1,description:["Same as `showSendToCloud`, but use a pencil icon instead of a floppy-disk.","Note that if both `showSendToCloud` and `showEditInChartStudio` are turned,","only `showEditInChartStudio` will be honored."].join(" ")},modeBarButtonsToRemove:{valType:"any",dflt:[],description:["Remove mode bar buttons by name.","See ./components/modebar/buttons.js for the list of names."].join(" ")},modeBarButtonsToAdd:{valType:"any",dflt:[],description:["Add mode bar button using config objects","See ./components/modebar/buttons.js for list of arguments.","To enable predefined modebar buttons e.g. shape drawing, hover and spikelines,","simply provide their string name(s). This could include:","*v1hovermode*, *hoverclosest*, *hovercompare*, *togglehover*, *togglespikelines*,","*drawline*, *drawopenpath*, *drawclosedpath*, *drawcircle*, *drawrect* and *eraseshape*.","Please note that these predefined buttons will only be shown if they are compatible","with all trace types used in a graph."].join(" ")},modeBarButtons:{valType:"any",dflt:!1,description:["Define fully custom mode bar buttons as nested array,","where the outer arrays represents button groups, and","the inner arrays have buttons config objects or names of default buttons","See ./components/modebar/buttons.js for more info."].join(" ")},toImageButtonOptions:{valType:"any",dflt:{},description:["Statically override options for toImage modebar button","allowed keys are format, filename, width, height, scale","see ../components/modebar/buttons.js"].join(" ")},displaylogo:{valType:"boolean",dflt:!0,description:["Determines whether or not the plotly logo is displayed","on the end of the mode bar."].join(" ")},watermark:{valType:"boolean",dflt:!1,description:"watermark the images with the company's logo"},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4,description:["Set the pixel ratio during WebGL image export.","This config option was formerly named `plot3dPixelRatio`","which is now deprecated."].join(" ")},setBackground:{valType:"any",dflt:"transparent",description:["Set function to add the background color (i.e. `layout.paper_color`)","to a different container.","This function take the graph div as first argument and the current background","color as second argument.","Alternatively, set to string *opaque* to ensure there is white behind it."].join(" ")},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/",description:["Set the URL to topojson used in geo charts.","By default, the topojson files are fetched from cdn.plot.ly.","For example, set this option to:","/dist/topojson/","to render geographical feature using the topojson files","that ship with the plotly.js module."].join(" ")},mapboxAccessToken:{valType:"string",dflt:null,description:["Mapbox access token (required to plot mapbox trace types)","If using an Mapbox Atlas server, set this option to ''","so that plotly.js won't attempt to authenticate to the public Mapbox server."].join(" ")},logging:{valType:"integer",min:0,max:2,dflt:1,description:["Turn all console logging on or off (errors will be thrown)","This should ONLY be set via Plotly.setPlotConfig","Available levels:","0: no logs","1: warnings and errors, but not informational messages","2: verbose logs"].join(" ")},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0,description:["Set on-graph logging (notifier) level","This should ONLY be set via Plotly.setPlotConfig","Available levels:","0: no on-graph logs","1: warnings and errors, but not informational messages","2: verbose logs"].join(" ")},queueLength:{valType:"integer",min:0,dflt:0,description:"Sets the length of the undo/redo queue."},globalTransforms:{valType:"any",dflt:[],description:["Set global transform to be applied to all traces with no","specification needed"].join(" ")},locale:{valType:"string",dflt:"en-US",description:["Which localization should we use?","Should be a string like 'en' or 'en-US'."].join(" ")},locales:{valType:"any",dflt:{},description:["Localization definitions","Locales can be provided either here (specific to one chart) or globally","by registering them as modules.","Should be an object of objects {locale: {dictionary: {...}, format: {...}}}","{"," da: {"," dictionary: {'Reset axes': 'Nulstil aksler', ...},"," format: {months: [...], shortMonths: [...]}"," },"," ...","}","All parts are optional. When looking for translation or format fields, we","look first for an exact match in a config locale, then in a registered","module. If those fail, we strip off any regionalization ('en-US' -> 'en')","and try each (config, registry) again. The final fallback for translation","is untranslated (which is US English) and for formats is the base English","(the only consequence being the last fallback date format %x is DD/MM/YYYY","instead of MM/DD/YYYY). Currently `grouping` and `currency` are ignored","for our automatic number formatting, but can be used in custom formats."].join(" ")}},xY={};function bY(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),bY(n,t[r]))}}bY(yY,xY);wY.exports={configAttributes:yY,dfltConfig:xY}});var xE=J((ILt,_Y)=>{"use strict";var yE=Nr(),bje=dn(),Nb=[];_Y.exports=function(e,t){if(Nb.indexOf(e)!==-1)return;Nb.push(e);var r=1e3;bje(t)?r=t:t==="long"&&(r=3e3);var n=yE.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(Nb);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=Nb.indexOf(s);l!==-1&&Nb.splice(l,1),yE.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=yE.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(//g),f=0;f{"use strict";var A1=qp().dfltConfig,bE=xE(),wE=TY.exports={};wE.log=function(){var e;if(A1.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};wE.warn=function(){var e;if(A1.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};wE.error=function(){var e;if(A1.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var bT=J((FLt,AY)=>{"use strict";AY.exports=function(){}});var _E=J((zLt,MY)=>{"use strict";MY.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{kY.exports=wje;function wje(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var EY=J((OLt,CY)=>{CY.exports=_je;function _je(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],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}});var DY=J((BLt,LY)=>{LY.exports=Tje;function Tje(e,t){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}});var TE=J((ULt,RY)=>{RY.exports=Aje;function Aje(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var IY=J((HLt,PY)=>{PY.exports=Mje;function Mje(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var FY=J((jLt,qY)=>{qY.exports=kje;function kje(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],f=t[8],c=t[9],h=t[10],d=t[11],v=t[12],m=t[13],b=t[14],g=t[15],_=r*s-n*o,T=r*l-i*o,w=r*u-a*o,k=n*l-i*s,x=n*u-a*s,M=i*u-a*l,A=f*m-c*v,p=f*b-h*v,S=f*g-d*v,y=c*b-h*m,E=c*g-d*m,C=h*g-d*b,L=_*C-T*E+w*y+k*S-x*p+M*A;return L?(L=1/L,e[0]=(s*C-l*E+u*y)*L,e[1]=(i*E-n*C-a*y)*L,e[2]=(m*M-b*x+g*k)*L,e[3]=(h*x-c*M-d*k)*L,e[4]=(l*S-o*C-u*p)*L,e[5]=(r*C-i*S+a*p)*L,e[6]=(b*w-v*M-g*T)*L,e[7]=(f*M-h*w+d*T)*L,e[8]=(o*E-s*S+u*A)*L,e[9]=(n*S-r*E-a*A)*L,e[10]=(v*x-m*w+g*_)*L,e[11]=(c*w-f*x-d*_)*L,e[12]=(s*p-o*y-l*A)*L,e[13]=(r*y-n*p+i*A)*L,e[14]=(m*T-v*k-b*_)*L,e[15]=(f*k-c*T+h*_)*L,e):null}});var NY=J((VLt,zY)=>{zY.exports=Sje;function Sje(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],f=t[8],c=t[9],h=t[10],d=t[11],v=t[12],m=t[13],b=t[14],g=t[15];return e[0]=s*(h*g-d*b)-c*(l*g-u*b)+m*(l*d-u*h),e[1]=-(n*(h*g-d*b)-c*(i*g-a*b)+m*(i*d-a*h)),e[2]=n*(l*g-u*b)-s*(i*g-a*b)+m*(i*u-a*l),e[3]=-(n*(l*d-u*h)-s*(i*d-a*h)+c*(i*u-a*l)),e[4]=-(o*(h*g-d*b)-f*(l*g-u*b)+v*(l*d-u*h)),e[5]=r*(h*g-d*b)-f*(i*g-a*b)+v*(i*d-a*h),e[6]=-(r*(l*g-u*b)-o*(i*g-a*b)+v*(i*u-a*l)),e[7]=r*(l*d-u*h)-o*(i*d-a*h)+f*(i*u-a*l),e[8]=o*(c*g-d*m)-f*(s*g-u*m)+v*(s*d-u*c),e[9]=-(r*(c*g-d*m)-f*(n*g-a*m)+v*(n*d-a*c)),e[10]=r*(s*g-u*m)-o*(n*g-a*m)+v*(n*u-a*s),e[11]=-(r*(s*d-u*c)-o*(n*d-a*c)+f*(n*u-a*s)),e[12]=-(o*(c*b-h*m)-f*(s*b-l*m)+v*(s*h-l*c)),e[13]=r*(c*b-h*m)-f*(n*b-i*m)+v*(n*h-i*c),e[14]=-(r*(s*b-l*m)-o*(n*b-i*m)+v*(n*l-i*s)),e[15]=r*(s*h-l*c)-o*(n*h-i*c)+f*(n*l-i*s),e}});var BY=J((YLt,OY)=>{OY.exports=Cje;function Cje(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],f=e[9],c=e[10],h=e[11],d=e[12],v=e[13],m=e[14],b=e[15],g=t*o-r*a,_=t*s-n*a,T=t*l-i*a,w=r*s-n*o,k=r*l-i*o,x=n*l-i*s,M=u*v-f*d,A=u*m-c*d,p=u*b-h*d,S=f*m-c*v,y=f*b-h*v,E=c*b-h*m;return g*E-_*y+T*S+w*p-k*A+x*M}});var HY=J((GLt,UY)=>{UY.exports=Eje;function Eje(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],f=t[7],c=t[8],h=t[9],d=t[10],v=t[11],m=t[12],b=t[13],g=t[14],_=t[15],T=r[0],w=r[1],k=r[2],x=r[3];return e[0]=T*n+w*s+k*c+x*m,e[1]=T*i+w*l+k*h+x*b,e[2]=T*a+w*u+k*d+x*g,e[3]=T*o+w*f+k*v+x*_,T=r[4],w=r[5],k=r[6],x=r[7],e[4]=T*n+w*s+k*c+x*m,e[5]=T*i+w*l+k*h+x*b,e[6]=T*a+w*u+k*d+x*g,e[7]=T*o+w*f+k*v+x*_,T=r[8],w=r[9],k=r[10],x=r[11],e[8]=T*n+w*s+k*c+x*m,e[9]=T*i+w*l+k*h+x*b,e[10]=T*a+w*u+k*d+x*g,e[11]=T*o+w*f+k*v+x*_,T=r[12],w=r[13],k=r[14],x=r[15],e[12]=T*n+w*s+k*c+x*m,e[13]=T*i+w*l+k*h+x*b,e[14]=T*a+w*u+k*d+x*g,e[15]=T*o+w*f+k*v+x*_,e}});var VY=J((WLt,jY)=>{jY.exports=Lje;function Lje(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,f,c,h,d,v,m,b,g;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],l=t[2],u=t[3],f=t[4],c=t[5],h=t[6],d=t[7],v=t[8],m=t[9],b=t[10],g=t[11],e[0]=o,e[1]=s,e[2]=l,e[3]=u,e[4]=f,e[5]=c,e[6]=h,e[7]=d,e[8]=v,e[9]=m,e[10]=b,e[11]=g,e[12]=o*n+f*i+v*a+t[12],e[13]=s*n+c*i+m*a+t[13],e[14]=l*n+h*i+b*a+t[14],e[15]=u*n+d*i+g*a+t[15]),e}});var GY=J((XLt,YY)=>{YY.exports=Dje;function Dje(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var XY=J((ZLt,WY)=>{WY.exports=Rje;function Rje(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),l,u,f,c,h,d,v,m,b,g,_,T,w,k,x,M,A,p,S,y,E,C,L,R;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),f=1-u,c=t[0],h=t[1],d=t[2],v=t[3],m=t[4],b=t[5],g=t[6],_=t[7],T=t[8],w=t[9],k=t[10],x=t[11],M=i*i*f+u,A=a*i*f+o*l,p=o*i*f-a*l,S=i*a*f-o*l,y=a*a*f+u,E=o*a*f+i*l,C=i*o*f+a*l,L=a*o*f-i*l,R=o*o*f+u,e[0]=c*M+m*A+T*p,e[1]=h*M+b*A+w*p,e[2]=d*M+g*A+k*p,e[3]=v*M+_*A+x*p,e[4]=c*S+m*y+T*E,e[5]=h*S+b*y+w*E,e[6]=d*S+g*y+k*E,e[7]=v*S+_*y+x*E,e[8]=c*C+m*L+T*R,e[9]=h*C+b*L+w*R,e[10]=d*C+g*L+k*R,e[11]=v*C+_*L+x*R,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var JY=J((JLt,ZY)=>{ZY.exports=Pje;function Pje(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+f*n,e[6]=s*i+c*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=f*i-o*n,e[10]=c*i-s*n,e[11]=h*i-l*n,e}});var KY=J(($Lt,$Y)=>{$Y.exports=Ije;function Ije(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-f*n,e[2]=s*i-c*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+f*i,e[10]=s*n+c*i,e[11]=l*n+h*i,e}});var eG=J((KLt,QY)=>{QY.exports=qje;function qje(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],f=t[5],c=t[6],h=t[7];return t!==e&&(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[0]=a*i+u*n,e[1]=o*i+f*n,e[2]=s*i+c*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=f*i-o*n,e[6]=c*i-s*n,e[7]=h*i-l*n,e}});var rG=J((QLt,tG)=>{tG.exports=Fje;function Fje(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var iG=J((eDt,nG)=>{nG.exports=zje;function zje(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,f=n*s,c=n*l,h=n*u,d=i*l,v=i*u,m=a*u,b=o*s,g=o*l,_=o*u;return e[0]=1-(d+m),e[1]=c+_,e[2]=h-g,e[3]=0,e[4]=c-_,e[5]=1-(f+m),e[6]=v+b,e[7]=0,e[8]=h+g,e[9]=v-b,e[10]=1-(f+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var oG=J((tDt,aG)=>{aG.exports=Nje;function Nje(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var lG=J((rDt,sG)=>{sG.exports=Oje;function Oje(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var fG=J((nDt,uG)=>{uG.exports=Bje;function Bje(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var hG=J((iDt,cG)=>{cG.exports=Uje;function Uje(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var dG=J((aDt,vG)=>{vG.exports=Hje;function Hje(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var AE=J((oDt,pG)=>{pG.exports=jje;function jje(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,f=n*o,c=n*s,h=i*o,d=i*s,v=i*l,m=a*o,b=a*s,g=a*l;return e[0]=1-c-v,e[1]=f+g,e[2]=h-b,e[3]=0,e[4]=f-g,e[5]=1-u-v,e[6]=d+m,e[7]=0,e[8]=h+b,e[9]=d-m,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var mG=J((sDt,gG)=>{gG.exports=Vje;function Vje(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var xG=J((lDt,yG)=>{yG.exports=Yje;function Yje(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var wG=J((uDt,bG)=>{bG.exports=Gje;function Gje(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var TG=J((fDt,_G)=>{_G.exports=Wje;function Wje(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var MG=J((cDt,AG)=>{var Xje=TE();AG.exports=Zje;function Zje(e,t,r,n){var i,a,o,s,l,u,f,c,h,d,v=t[0],m=t[1],b=t[2],g=n[0],_=n[1],T=n[2],w=r[0],k=r[1],x=r[2];return Math.abs(v-w)<1e-6&&Math.abs(m-k)<1e-6&&Math.abs(b-x)<1e-6?Xje(e):(f=v-w,c=m-k,h=b-x,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,i=_*h-T*c,a=T*f-g*h,o=g*c-_*f,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=c*o-h*a,l=h*i-f*o,u=f*a-c*i,d=Math.sqrt(s*s+l*l+u*u),d?(d=1/d,s*=d,l*=d,u*=d):(s=0,l=0,u=0),e[0]=i,e[1]=s,e[2]=f,e[3]=0,e[4]=a,e[5]=l,e[6]=c,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(i*v+a*m+o*b),e[13]=-(s*v+l*m+u*b),e[14]=-(f*v+c*m+h*b),e[15]=1,e)}});var SG=J((hDt,kG)=>{kG.exports=Jje;function Jje(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var ME=J((vDt,CG)=>{CG.exports={create:SY(),clone:EY(),copy:DY(),identity:TE(),transpose:IY(),invert:FY(),adjoint:NY(),determinant:BY(),multiply:HY(),translate:VY(),scale:GY(),rotate:XY(),rotateX:JY(),rotateY:KY(),rotateZ:eG(),fromRotation:rG(),fromRotationTranslation:iG(),fromScaling:oG(),fromTranslation:lG(),fromXRotation:fG(),fromYRotation:hG(),fromZRotation:dG(),fromQuat:AE(),frustum:mG(),perspective:xG(),perspectiveFromFieldOfView:wG(),ortho:TG(),lookAt:MG(),str:SG()}});var wT=J(co=>{"use strict";var $je=ME();co.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var Kje=Nr(),Qje=Kd(),eVe=wT(),tVe=ME();function rVe(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function nVe(e){var t=Kje.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function EG(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function iVe(e,t){LG("global",e,t)}function LG(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):Qje.warn("addStyleRule failed")}function aVe(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&EG(r)}function oVe(e){var t=RG(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=DG(n);if(i){var a=eVe.convertCssMatrix(i);r=tVe.multiply(r,r,a)}}),r}function DG(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function RG(e){for(var t=[];sVe(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function sVe(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function lVe(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}PG.exports={getGraphDiv:rVe,isPlotDiv:nVe,removeElement:EG,addStyleRule:iVe,addRelatedStyleRule:LG,deleteRelatedStyleRule:aVe,getFullTransformMatrix:oVe,getElementTransformMatrix:DG,getElementAndAncestors:RG,equalDomRects:lVe}});var Bb=J((gDt,IG)=>{"use strict";IG.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"],description:["Describes how a new animate call interacts with currently-running","animations. If `immediate`, current animations are interrupted and","the new animation is started. If `next`, the current frame is allowed","to complete, after which the new animation is started. If `afterall`","all existing frames are animated to completion before the new animation","is started."].join(" ")},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward",description:["The direction in which to play the frames triggered by the animation call"].join(" ")},fromcurrent:{valType:"boolean",dflt:!1,description:["Play frames starting at the current frame instead of the beginning."].join(" ")},frame:{duration:{valType:"number",min:0,dflt:500,description:["The duration in milliseconds of each frame. If greater than the frame","duration, it will be limited to the frame duration."].join(" ")},redraw:{valType:"boolean",dflt:!0,description:["Redraw the plot at completion of the transition. This is desirable","for transitions that include properties that cannot be transitioned,","but may significantly slow down updates that do not require a full","redraw of the plot"].join(" ")}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none",description:["The duration of the transition, in milliseconds. If equal to zero,","updates are synchronous."].join(" ")},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none",description:"The easing function used for the transition"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none",description:["Determines whether the figure's layout or traces smoothly transitions","during updates that make both traces and layout change."].join(" ")}}}});var La=J((mDt,UG)=>{"use strict";var FG=cn().extendFlat,uVe=Bv(),zG={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"],description:["trace attributes should include an `editType` string matching this flaglist.","*calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata`","to force it to be regenerated","*clearAxisTypes* resets the types of the axes this trace is on, because new data could","cause the automatic axis type detection to change. Log type will not be cleared, as that","is never automatically chosen so must have been user-specified.","*plot* (re)plots but without first clearing `gd.calcdata`.","*style* only calls `module.style` (or module.editStyle) for all trace modules and redraws the legend.","*markerSize* is like *style*, but propagate axis-range changes due to scatter `marker.size`","*colorbars* only redraws colorbars."].join(" ")},NG={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"],description:["layout attributes should include an `editType` string matching this flaglist.","*calc* is the most extensive: a full (re)plot starting by clearing `gd.calcdata`","to force it to be regenerated","*plot* (re)plots but without first clearing `gd.calcdata`.","*legend* only redraws the legend.","*ticks* only redraws axis ticks, labels, and gridlines.","*axrange* minimal sequence when updating axis ranges.","*layoutstyle* reapplies global and SVG cartesian axis styles.","*modebar* just updates the modebar.","*camera* just updates the camera settings for gl3d scenes.","*arraydraw* allows component arrays to invoke the redraw routines just for the","component(s) that changed.","*colorbars* only redraws colorbars."].join(" ")},fVe=zG.flags.slice().concat(["fullReplot"]),cVe=NG.flags.slice().concat("layoutReplot");UG.exports={traces:zG,layout:NG,traceFlags:function(){return qG(fVe)},layoutFlags:function(){return qG(cVe)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";kE.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style",description:["Sets the dash style of lines. Set to a dash type string","(*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*)","or a dash length list in px (eg *5px,10px,2px,2px*)."].join(" ")};kE.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style",description:["Sets the shape of the pattern fill.","By default, no pattern is used for filling the area."].join(" ")},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style",description:["Determines whether `marker.color` should be used","as a default to `bgcolor` or a `fgcolor`."].join(" ")},bgcolor:{valType:"color",arrayOk:!0,editType:"style",description:["When there is no colorscale sets the color of background pattern fill.","Defaults to a `marker.color` background when `fillmode` is *overlay*.","Otherwise, defaults to a transparent background."].join(" ")},fgcolor:{valType:"color",arrayOk:!0,editType:"style",description:["When there is no colorscale sets the color of foreground pattern fill.","Defaults to a `marker.color` background when `fillmode` is *replace*.","Otherwise, defaults to dark grey or white","to increase contrast with the `bgcolor`."].join(" ")},fgopacity:{valType:"number",editType:"style",min:0,max:1,description:["Sets the opacity of the foreground pattern fill.","Defaults to a 0.5 when `fillmode` is *overlay*.","Otherwise, defaults to 1."].join(" ")},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style",description:["Sets the size of unit squares of the pattern fill in pixels,","which corresponds to the interval of repetition of the pattern."].join(" ")},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style",description:["Sets the solidity of the pattern fill.","Solidity is roughly the fraction of the area filled by the pattern.","Solidity of 0 shows only the background color without pattern","and solidty of 1 shows only the foreground color without pattern."].join(" ")},editType:"style",description:["Sets the pattern within the marker."].join(" ")}});var SE=J((xDt,HG)=>{"use strict";HG.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Jn=J(_T=>{"use strict";var jG=SE(),VG=jG.FORMAT_LINK,YG=jG.DATE_FORMAT_LINK;function GG(e){var t=e&&e.supportOther;return["Variables are inserted using %{variable},",'for example "y: %{y}"'+(t?" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown.":"."),`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".`,VG,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".`,YG,"for details on the date formatting syntax."].join(" ")}function hVe(){return["Variables are inserted using %{variable},",'for example "x0: %{x0}".',`Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{x0:$.2f}". See`,VG,"for details on the formatting syntax.",`Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example "Day: %{x0|%m %b %Y}". See`,YG,"for details on the date formatting syntax.","A single multiplication or division operation may be applied to numeric variables, and combined with",'d3 number formatting, for example "Length in cm: %{x0*2.54}", "%{slope*60:.1f} meters per second."',"For log axes, variable values are given in log units.","For date axes, x/y coordinate variables and center variables use datetimes, while all other variable values use values in ms."].join(" ")}function CE(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i` is displayed in the secondary box, for example "{fullData.name}".',"To hide the secondary box completely, use an empty tag ``."].join(" ")};return e.arrayOk!==!1&&(n.arrayOk=!0),n};_T.texttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=CE(t),n={valType:"string",dflt:"",editType:e.editType||"calc",description:["Template string used for rendering the information text that appear on points.","Note that this will override `textinfo`.",GG(),"Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.",r].join(" ")};return e.arrayOk!==!1&&(n.arrayOk=!0),n};_T.shapeTexttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=e.newshape?"new ":"",n=CE(t),i={valType:"string",dflt:"",editType:e.editType||"arraydraw",description:["Template string used for rendering the "+r+"shape's label.","Note that this will override `text`.",hVe(),n].join(" ")};return i}});var MT=J((wDt,KG)=>{"use strict";function Qd(e,t){return t?t.d2l(e):e}function WG(e,t){return t?t.l2d(e):e}function vVe(e){return e.x0}function dVe(e){return e.x1}function pVe(e){return e.y0}function gVe(e){return e.y1}function XG(e){return e.x0shift||0}function ZG(e){return e.x1shift||0}function JG(e){return e.y0shift||0}function $G(e){return e.y1shift||0}function TT(e,t){return Qd(e.x1,t)+ZG(e)-Qd(e.x0,t)-XG(e)}function AT(e,t,r){return Qd(e.y1,r)+$G(e)-Qd(e.y0,r)-JG(e)}function mVe(e,t){return Math.abs(TT(e,t))}function yVe(e,t,r){return Math.abs(AT(e,t,r))}function xVe(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(TT(e,t),2)+Math.pow(AT(e,t,r),2))}function bVe(e,t){return WG((Qd(e.x1,t)+ZG(e)+Qd(e.x0,t)+XG(e))/2,t)}function wVe(e,t,r){return WG((Qd(e.y1,r)+$G(e)+Qd(e.y0,r)+JG(e))/2,r)}function _Ve(e,t,r){return e.type!=="line"?void 0:AT(e,t,r)/TT(e,t)}KG.exports={x0:vVe,x1:dVe,y0:pVe,y1:gVe,slope:_Ve,dx:TT,dy:AT,width:mVe,height:yVe,length:xVe,xcenter:bVe,ycenter:wVe}});var tW=J((_Dt,eW)=>{"use strict";var TVe=La().overrideAll,Fp=Qi(),QG=xa(),AVe=Ss().dash,e0=cn().extendFlat,MVe=Jn().shapeTexttemplateAttrs,kVe=MT();eW.exports=TVe({newshape:{visible:e0({},Fp.visible,{description:["Determines whether or not new shape is visible.","If *legendonly*, the shape is not drawn,","but can appear as a legend item","(provided that the legend itself is visible)."].join(" ")}),showlegend:{valType:"boolean",dflt:!1,description:["Determines whether or not new","shape is shown in the legend."].join(" ")},legend:e0({},Fp.legend,{description:["Sets the reference to a legend to show new shape in.","References to these legends are *legend*, *legend2*, *legend3*, etc.","Settings for these legends are set in the layout, under","`layout.legend`, `layout.legend2`, etc."].join(" ")}),legendgroup:e0({},Fp.legendgroup,{description:["Sets the legend group for new shape.","Traces and shapes part of the same legend group hide/show at the same time","when toggling legend items."].join(" ")}),legendgrouptitle:{text:e0({},Fp.legendgrouptitle.text,{}),font:QG({description:["Sets this legend group's title font."].join(" ")})},legendrank:e0({},Fp.legendrank,{description:["Sets the legend rank for new shape.","Items and groups with smaller ranks are presented on top/left side while","with *reversed* `legend.traceorder` they are on bottom/right side.","The default legendrank is 1000,","so that you can use ranks less than 1000 to place certain items before all unranked items,","and ranks greater than 1000 to go after all unranked items."].join(" ")}),legendwidth:e0({},Fp.legendwidth,{description:"Sets the width (in px or fraction) of the legend for new shape."}),line:{color:{valType:"color",description:["Sets the line color.","By default uses either dark grey or white","to increase contrast with background color."].join(" ")},width:{valType:"number",min:0,dflt:4,description:"Sets the line width (in px)."},dash:e0({},AVe,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",description:["Sets the color filling new shapes' interior.","Please note that if using a fillcolor with alpha greater than half,","drag inside the active shape starts moving the shape underneath,","otherwise a new shape could be started over."].join(" ")},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",description:["Determines the path's interior.","For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule"].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,description:"Sets the opacity of new shapes."},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",description:["Specifies whether new shapes are drawn below gridlines (*below*),","between gridlines and traces (*between*) or above traces (*above*)."].join(" ")},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal",description:["When `dragmode` is set to *drawrect*, *drawline* or *drawcircle*","this limits the drag to be horizontal, vertical or diagonal.","Using *diagonal* there is no limit e.g. in drawing lines in any direction.","*ortho* limits the draw to be either horizontal or vertical.","*horizontal* allows horizontal extend.","*vertical* allows vertical extend."].join(" ")},name:e0({},Fp.name,{description:["Sets new shape name.","The name appears as the legend item."].join(" ")}),label:{text:{valType:"string",dflt:"",description:["Sets the text to display with the new shape.","It is also used for legend item if `name` is not provided."].join(" ")},texttemplate:MVe({newshape:!0},{keys:Object.keys(kVe)}),font:QG({description:"Sets the new shape label text font."}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],description:["Sets the position of the label text relative to the new shape.","Supported values for rectangles, circles and paths are","*top left*, *top center*, *top right*, *middle left*,","*middle center*, *middle right*, *bottom left*, *bottom center*,","and *bottom right*.","Supported values for lines are *start*, *middle*, and *end*.","Default: *middle center* for rectangles, circles, and paths; *middle* for lines."].join(" ")},textangle:{valType:"angle",dflt:"auto",description:["Sets the angle at which the label text is drawn","with respect to the horizontal. For lines, angle *auto*","is the same angle as the line. For all other shapes,","angle *auto* is horizontal."].join(" ")},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",description:["Sets the label's horizontal position anchor","This anchor binds the specified `textposition` to the *left*, *center*","or *right* of the label text.","For example, if `textposition` is set to *top right* and","`xanchor` to *right* then the right-most portion of the","label text lines up with the right-most edge of the","new shape."].join(" ")},yanchor:{valType:"enumerated",values:["top","middle","bottom"],description:["Sets the label's vertical position anchor","This anchor binds the specified `textposition` to the *top*, *middle*","or *bottom* of the label text.","For example, if `textposition` is set to *top right* and","`yanchor` to *top* then the top-most portion of the","label text lines up with the top-most edge of the","new shape."].join(" ")},padding:{valType:"number",dflt:3,min:0,description:"Sets padding (in px) between edge of label and edge of new shape."}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)",description:"Sets the color filling the active shape' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5,description:"Sets the opacity of the active shape."}}},"none","from-root")});var nW=J((TDt,rW)=>{"use strict";var SVe=Ss().dash,CVe=cn().extendFlat;rW.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none",description:["Describes how a new selection is created.","If `immediate`, a new selection is created after first mouse up.","If `gradual`, a new selection is not created after first mouse.","By adding to and subtracting from the initial selection,","this option allows declaring extra outlines of the selection."].join(" ")},line:{color:{valType:"color",editType:"none",description:["Sets the line color.","By default uses either dark grey or white","to increase contrast with background color."].join(" ")},width:{valType:"number",min:1,dflt:1,editType:"none",description:"Sets the line width (in px)."},dash:CVe({},SVe,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none",description:"Sets the color filling the active selection' interior."},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none",description:"Sets the opacity of the active selection."},editType:"none"}}});var kT=J((ADt,iW)=>{"use strict";iW.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t,description:"The amount of padding (in px) along the top of the component."},r:{valType:"number",dflt:0,editType:t,description:"The amount of padding (in px) on the right side of the component."},b:{valType:"number",dflt:0,editType:t,description:"The amount of padding (in px) along the bottom of the component."},l:{valType:"number",dflt:0,editType:t,description:"The amount of padding (in px) on the left side of the component."},editType:t}}});var zp=J((MDt,lW)=>{"use strict";var ST=xa(),EVe=Bb(),CT=Ho(),aW=tW(),oW=nW(),LVe=kT(),sW=cn().extendFlat,ET=ST({editType:"calc",description:["Sets the global font.","Note that fonts used in traces and other","layout components inherit from the global font."].join(" ")});ET.family.dflt='"Open Sans", verdana, arial, sans-serif';ET.size.dflt=12;ET.color.dflt=CT.defaultLine;lW.exports={font:ET,title:{text:{valType:"string",editType:"layoutstyle",description:["Sets the plot's title.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:ST({editType:"layoutstyle",description:["Sets the title font.","Note that the title's font used to be customized","by the now deprecated `titlefont` attribute."].join(" ")}),subtitle:{text:{valType:"string",editType:"layoutstyle",description:"Sets the plot's subtitle."},font:ST({editType:"layoutstyle",description:"Sets the subtitle font."}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `x` refers to.","*container* spans the entire `width` of the plot.","*paper* refers to the width of the plotting area only."].join(" ")},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `y` refers to.","*container* spans the entire `height` of the plot.","*paper* refers to the height of the plotting area only."].join(" ")},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle",description:["Sets the x position with respect to `xref` in normalized","coordinates from *0* (left) to *1* (right)."].join(" ")},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle",description:["Sets the y position with respect to `yref` in normalized","coordinates from *0* (bottom) to *1* (top).","*auto* places the baseline of the title onto the","vertical center of the top margin."].join(" ")},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle",description:["Sets the title's horizontal alignment with respect to its x position.","*left* means that the title starts at x,","*right* means that the title ends at x","and *center* means that the title's center is at x.","*auto* divides `xref` by three and calculates the `xanchor`","value automatically based on the value of `x`."].join(" ")},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle",description:["Sets the title's vertical alignment with respect to its y position.","*top* means that the title's cap line is at y,","*bottom* means that the title's baseline is at y","and *middle* means that the title's midline is at y.","*auto* divides `yref` by three and calculates the `yanchor`","value automatically based on the value of `y`."].join(" ")},pad:sW(LVe({editType:"layoutstyle"}),{description:["Sets the padding of the title.","Each padding value only applies when the corresponding","`xanchor`/`yanchor` value is set accordingly. E.g. for left","padding to take effect, `xanchor` must be set to *left*.","The same rule applies if `xanchor`/`yanchor` is determined automatically.","Padding is muted if the respective anchor value is *middle*/*center*."].join(" ")}),automargin:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines whether the title can automatically push the figure margins.","If `yref='paper'` then the margin will expand to ensure that the title doesn\u2019t","overlap with the edges of the container. If `yref='container'` then the margins","will ensure that the title doesn\u2019t overlap with the plot area, tick labels,","and axis titles. If `automargin=true` and the margins need to be expanded,","then y will be set to a default 1 and yanchor will be set to an appropriate","default to ensure that minimal margin space is needed. Note that when `yref='paper'`,","only 1 or 0 are allowed y values. Invalid values will be reset to the default 1."].join(" ")},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot",description:["Determines how the font size for various text","elements are uniformed between each trace type.","If the computed text sizes were smaller than","the minimum size defined by `uniformtext.minsize`","using *hide* option hides the text; and","using *show* option shows the text without further downscaling.","Please note that if the size defined by `minsize` is greater than","the font size defined by trace, then the `minsize` is used."].join(" ")},minsize:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets the minimum text size between traces of the same type."].join(" ")},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none",description:["Determines whether or not a layout width or height","that has been left undefined by the user","is initialized on each relayout.","Note that, regardless of this attribute,","an undefined layout width or height","is always initialized on the first call to plot."].join(" ")},width:{valType:"number",min:10,dflt:700,editType:"plot",description:["Sets the plot's width (in px)."].join(" ")},height:{valType:"number",min:10,dflt:450,editType:"plot",description:["Sets the plot's height (in px)."].join(" ")},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot",description:"Minimum width of the plot with margin.automargin applied (in px)"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot",description:"Minimum height of the plot with margin.automargin applied (in px)"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot",description:"Sets the left margin (in px)."},r:{valType:"number",min:0,dflt:80,editType:"plot",description:"Sets the right margin (in px)."},t:{valType:"number",min:0,dflt:100,editType:"plot",description:"Sets the top margin (in px)."},b:{valType:"number",min:0,dflt:80,editType:"plot",description:"Sets the bottom margin (in px)."},pad:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets the amount of padding (in px)","between the plotting area and the axis lines"].join(" ")},autoexpand:{valType:"boolean",dflt:!0,editType:"plot",description:["Turns on/off margin expansion computations.","Legends, colorbars, updatemenus, sliders, axis rangeselector and rangeslider","are allowed to push the margins by defaults."].join(" ")},editType:"plot"},computed:{valType:"any",editType:"none",description:["Placeholder for exporting automargin-impacting values namely","`margin.t`, `margin.b`, `margin.l` and `margin.r` in *full-json* mode."].join(" ")},paper_bgcolor:{valType:"color",dflt:CT.background,editType:"plot",description:"Sets the background color of the paper where the graph is drawn."},plot_bgcolor:{valType:"color",dflt:CT.background,editType:"layoutstyle",description:["Sets the background color of the plotting area in-between x and y axes."].join(" ")},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc",description:["Using *strict* a numeric string in trace data is not converted to a number.","Using *convert types* a numeric string in trace data may be","treated as a number during automatic axis `type` detection.","This is the default value; however it could be overridden for individual axes."].join(" ")},separators:{valType:"string",editType:"plot",description:["Sets the decimal and thousand separators.","For example, *. * puts a '.' before decimals and a space","between thousands. In English locales, dflt is *.,* but","other locales may alter this default."].join(" ")},hidesources:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines whether or not a text link citing the data source is","placed at the bottom-right cored of the figure.","Has only an effect only on graphs that have been generated via","forked graphs from the Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise)."].join(" ")},showlegend:{valType:"boolean",editType:"legend",description:["Determines whether or not a legend is drawn.","Default is `true` if there is a trace to show and any of these:","a) Two or more traces would by default be shown in the legend.","b) One pie trace is shown in the legend.","c) One trace is explicitly given with `showlegend: true`."].join(" ")},colorway:{valType:"colorlist",dflt:CT.defaults,editType:"calc",description:"Sets the default trace colors."},datarevision:{valType:"any",editType:"calc",description:["If provided, a changed value tells `Plotly.react` that","one or more data arrays has changed. This way you can modify","arrays in-place rather than making a complete new copy for an","incremental change.","If NOT provided, `Plotly.react` assumes that data arrays are","being treated as immutable, thus any data array with a","different identity from its predecessor contains new data."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Used to allow user interactions with the plot to persist after","`Plotly.react` calls that are unaware of these interactions.","If `uirevision` is omitted, or if it is given and it changed from","the previous `Plotly.react` call, the exact new figure is used.","If `uirevision` is truthy and did NOT change, any attribute","that has been affected by user interactions and did not receive a","different value in the new figure will keep the interaction value.","`layout.uirevision` attribute serves as the default for","`uirevision` attributes in various sub-containers. For finer","control you can set these sub-attributes directly. For example,","if your app separately controls the data on the x and y axes you","might set `xaxis.uirevision=*time*` and `yaxis.uirevision=*cost*`.","Then if only the y data is changed, you can update","`yaxis.uirevision=*quantity*` and the y axis range will reset but","the x axis range will retain any user-driven zoom."].join(" ")},editrevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in `editable: true`","configuration, other than trace names and axis titles.","Defaults to `layout.uirevision`."].join(" ")},selectionrevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in selected points","from all traces."].join(" ")},template:{valType:"any",editType:"calc",description:["Default attributes to be applied to the plot. Templates can be","created from existing plots using `Plotly.makeTemplate`, or","created manually. They should be objects with format:","`{layout: layoutTemplate, data: {[type]: [traceTemplate, ...]}, ...}`","`layoutTemplate` and `traceTemplate` are objects matching the","attribute structure of `layout` and a data trace. ","Trace templates are applied cyclically to traces of each type.","Container arrays (eg `annotations`) have special handling:","An object ending in `defaults` (eg `annotationdefaults`) is applied","to each array item. But if an item has a `templateitemname` key","we look in the template array for an item with matching `name` and","apply that instead. If no matching `name` is found we mark the item","invisible. Any named template item not referenced is appended to","the end of the array, so you can use this for a watermark annotation","or a logo image, for example. To omit one of these items on the plot,","make an item with matching `templateitemname` and `visible: false`."].join(" ")},newshape:aW.newshape,activeshape:aW.activeshape,newselection:oW.newselection,activeselection:oW.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot",description:["Assigns extra meta information that can be used in various `text` attributes.","Attributes such as the graph, axis and colorbar `title.text`, annotation `text`","`trace.name` in legend items, `rangeselector`, `updatemenus` and `sliders` `label` text","all support `meta`. One can access `meta` fields using template strings:","`%{meta[i]}` where `i` is the index of the `meta`","item in question.","`meta` can also be an object for example `{key: value}` which can be accessed","%{meta[key]}."].join(" ")},transition:sW({},EVe.transition,{description:["Sets transition options used during Plotly.react updates."].join(" "),editType:"none"}),_deprecated:{title:{valType:"string",editType:"layoutstyle",description:["Value of `title` is no longer a simple *string* but a set of sub-attributes.","To set the contents of the title, please use `title.text` now."].join(" ")},titlefont:ST({editType:"layoutstyle",description:["Former `titlefont` is now the sub-attribute `font` of `title`.","To customize title font properties, please use `title.font` now."].join(" ")})}}});var zr=J(In=>{"use strict";var M1=Kd(),uW=bT(),fW=_E(),DVe=Bv(),RVe=Ob().addStyleRule,cW=cn(),PVe=Qi(),IVe=zp(),qVe=cW.extendFlat,LT=cW.extendDeepAll;In.modules={};In.allCategories={};In.allTypes=[];In.subplotsRegistry={};In.transformsRegistry={};In.componentsRegistry={};In.layoutArrayContainers=[];In.layoutArrayRegexes=[];In.traceLayoutAttributes={};In.localeRegistry={};In.apiMethodRegistry={};In.collectableSubplotTypes=null;In.register=function(t){if(In.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var UVe=m1().timeFormat,TW=dn(),EE=Kd(),r0=x1().mod,C1=oi(),Jf=C1.BADNUM,Fu=C1.ONEDAY,Ub=C1.ONEHOUR,t0=C1.ONEMIN,S1=C1.ONESEC,Hb=C1.EPOCHJD,Hv=zr(),mW=m1().utcFormat,HVe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,jVe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,yW=new Date().getFullYear()-70;function jv(e){return e&&Hv.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}ho.dateTick0=function(e,t){var r=VVe(e,!!t);if(t<2)return r;var n=ho.dateTime2ms(r,e);return n+=Fu*(t-1),ho.ms2DateTime(n,0,e)};function VVe(e,t){return jv(e)?t?Hv.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Hv.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}ho.dfltRange=function(e){return jv(e)?Hv.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};ho.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var RT,PT;ho.dateTime2ms=function(e,t){if(ho.isJSDate(e)){var r=e.getTimezoneOffset()*t0,n=(e.getUTCMinutes()-e.getMinutes())*t0+(e.getUTCSeconds()-e.getSeconds())*S1+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*t0;r=r-i/2+r0(n-r+i/2,i)}return e=Number(e)-r,e>=RT&&e<=PT?e:Jf}if(typeof e!="string"&&typeof e!="number")return Jf;e=String(e);var a=jv(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",l=e.match(s?jVe:HVe);if(!l)return Jf;var u=l[1],f=l[3]||"1",c=Number(l[5]||1),h=Number(l[7]||0),d=Number(l[9]||0),v=Number(l[11]||0);if(a){if(u.length===2)return Jf;u=Number(u);var m;try{var b=Hv.getComponentMethod("calendars","getCal")(t);if(s){var g=f.charAt(f.length-1)==="i";f=parseInt(f,10),m=b.newDate(u,b.toMonthIndex(u,f,g),c)}else m=b.newDate(u,Number(f),c)}catch{return Jf}return m?(m.toJD()-Hb)*Fu+h*Ub+d*t0+v*S1:Jf}u.length===2?u=(Number(u)+2e3-yW)%100+yW:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,h,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?Jf:_.getTime()+v*S1};RT=ho.MIN_MS=ho.dateTime2ms("-9999");PT=ho.MAX_MS=ho.dateTime2ms("9999-12-31 23:59:59.9999");ho.isDateTime=function(e,t){return ho.dateTime2ms(e,t)!==Jf};function k1(e,t){return String(e+Math.pow(10,t)).substr(1)}var DT=90*Fu,xW=3*Ub,bW=5*t0;ho.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=RT&&e<=PT))return Jf;t||(t=0);var n=Math.floor(r0(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,f;if(jv(r)){var c=Math.floor(i/Fu)+Hb,h=Math.floor(r0(e,Fu));try{a=Hv.getComponentMethod("calendars","getCal")(r).fromJD(c).formatDate("yyyy-mm-dd")}catch{a=mW("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=RT+Fu&&e<=PT-Fu))return Jf;var t=Math.floor(r0(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=UVe("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return AW(n,i,a,o,s)};function AW(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+k1(t,2)+":"+k1(r,2),(n||i)&&(e+=":"+k1(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+k1(i,a)}return e}ho.cleanDate=function(e,t,r){if(e===Jf)return t;if(ho.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(jv(r))return EE.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=ho.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!ho.isDateTime(e,r))return EE.error("unrecognized date",e),t;return e};var YVe=/%\d?f/g,GVe=/%h/g,WVe={1:"1",2:"1",3:"2",4:"2"};function wW(e,t,r,n){e=e.replace(YVe,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(GVe,function(){return WVe[r("%q")(i)]}),jv(n))try{e=Hv.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch{return"Invalid"}return r(e)(i)}var XVe=[59,59.9,59.99,59.999,59.9999];function ZVe(e,t){var r=r0(e+.05,Fu),n=k1(Math.floor(r/Ub),2)+":"+k1(r0(Math.floor(r/t0),60),2);if(t!=="M"){TW(t)||(t=0);var i=Math.min(r0(e/S1,60),XVe[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}ho.formatDate=function(e,t,r,n,i,a){if(i=jv(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` +`+a.year;else return ZVe(e,r)+` +`+wW(a.dayMonthYear,e,n,i);return wW(t,e,n,i)};var _W=3*Fu;ho.incrementMonth=function(e,t,r){r=jv(r)&&r;var n=r0(e,Fu);if(e=Math.round(e-n),r)try{var i=Math.round(e/Fu)+Hb,a=Hv.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-Hb)*Fu+n}catch{EE.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+_W);return s.setUTCMonth(s.getUTCMonth()+t)+n-_W};ho.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,l=jv(t)&&Hv.getComponentMethod("calendars","getCal")(t),u=0;u{"use strict";kW.exports=function(t){return t}});var IT=J(Vv=>{"use strict";var JVe=dn(),$Ve=Kd(),KVe=jb(),QVe=oi().BADNUM,LE=1e-9;Vv.findBin=function(e,t,r){if(JVe(t.start))return r?Math.ceil((e-t.start)/t.size-LE)-1:Math.floor((e-t.start)/t.size+LE);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,l;for(o>=0?l=r?eYe:tYe:l=r?nYe:rYe,e+=o*LE*(r?-1:1)*(o>=0?1:-1);n90&&$Ve.log("Long binary search..."),n-1};function eYe(e,t){return et}function nYe(e,t){return e>=t}Vv.sorterAsc=function(e,t){return e-t};Vv.sorterDes=function(e,t){return t-e};Vv.distinctVals=function(e){var t=e.slice();t.sort(Vv.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===QVe;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var l=t[s],u=l-o;o===void 0?(a.push(l),o=l):u>i&&(n=Math.min(n,u),a.push(l),o=l)}return{vals:a,minDiff:n}};Vv.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;n0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};Vv.findIndexOfMin=function(e,t){t=t||KVe;for(var r=1/0,n,i=0;i{"use strict";SW.exports=function(t){return Object.keys(t).sort()}});var CW=J(vo=>{"use strict";var Yb=dn(),iYe=fl().isArrayOrTypedArray;vo.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),Yb(t)||(t=!1),iYe(r[0])){for(a=new Array(n),i=0;ie.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var PW=J((RDt,RW)=>{"use strict";var EW=x1(),DE=EW.mod,aYe=EW.modHalf,Gb=Math.PI,n0=2*Gb;function oYe(e){return e/180*Gb}function sYe(e){return e/Gb*180}function RE(e){return Math.abs(e[1]-e[0])>n0-1e-14}function LW(e,t){return aYe(t-e,n0)}function lYe(e,t){return Math.abs(LW(e,t))}function DW(e,t){if(RE(t))return!0;var r,n;t[0]n&&(n+=n0);var i=DE(e,n0),a=i+n0;return i>=r&&i<=n||a>=r&&a<=n}function uYe(e,t,r,n){if(!DW(t,n))return!1;var i,a;return r[0]=i&&e<=a}function PE(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=RE([r,n]),l,u,f,c,h;s?(l=0,u=Gb,f=n0):r{"use strict";Np.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};Np.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};Np.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};Np.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};Np.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};Np.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var zW=J(Op=>{"use strict";var IE=x1().mod;Op.segmentsIntersect=FW;function FW(e,t,r,n,i,a,o,s){var l=r-e,u=i-e,f=o-i,c=n-t,h=a-t,d=s-a,v=l*d-f*c;if(v===0)return null;var m=(u*d-f*h)/v,b=(u*c-l*h)/v;return b<0||b>1||m<0||m>1?null:{x:e+l*m,y:t+c*m}}Op.segmentDistance=function(t,r,n,i,a,o,s,l){if(FW(t,r,n,i,a,o,s,l))return 0;var u=n-t,f=i-r,c=s-a,h=l-o,d=u*u+f*f,v=c*c+h*h,m=Math.min(qT(u,f,d,a-t,o-r),qT(u,f,d,s-t,l-r),qT(c,h,v,t-a,r-o),qT(c,h,v,n-a,i-o));return Math.sqrt(m)};function qT(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var l=n*t-i*e;return l*l/r}}var FT,qE,qW;Op.getTextLocation=function(t,r,n,i){if((t!==qE||i!==qW)&&(FT={},qE=t,qW=i),FT[n])return FT[n];var a=t.getPointAtLength(IE(n-i/2,r)),o=t.getPointAtLength(IE(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(IE(n,r)),u=(l.x*4+a.x+o.x)/6,f=(l.y*4+a.y+o.y)/6,c={x:u,y:f,theta:s};return FT[n]=c,c};Op.clearLocationCache=function(){qE=null};Op.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,l=0,u=t.getTotalLength(),f=u,c,h;function d(m){var b=t.getPointAtLength(m);m===0?c=b:m===u&&(h=b);var g=b.xa?b.x-a:0,_=b.ys?b.y-s:0;return Math.sqrt(g*g+_*_)}for(var v=d(l);v;){if(l+=v+n,l>f)return;v=d(l)}for(v=d(f);v;){if(f-=v+n,l>f)return;v=d(f)}return{min:l,max:f,len:f-l,total:u,isClosed:l===0&&f===u&&Math.abs(c.x-h.x)<.1&&Math.abs(c.y-h.y)<.1}};Op.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,l=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,u=0,f=0,c=a,h,d,v;u0?c=h:f=h,u++}return d}});var zT=J(Wb=>{"use strict";var Yv={};Wb.throttle=function(t,r,n){var i=Yv[t],a=Date.now();if(!i){for(var o in Yv)Yv[o].tsi.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};Wb.done=function(e){var t=Yv[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};Wb.clear=function(e){if(e)NW(Yv[e]),delete Yv[e];else for(var t in Yv)Wb.clear(t)};function NW(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var BW=J((FDt,OW)=>{"use strict";OW.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var UW=J((zDt,NT)=>{"use strict";NT.exports=FE;NT.exports.isMobile=FE;NT.exports.default=FE;var vYe=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,dYe=/CrOS/,pYe=/android|ipad|playbook|silk/i;function FE(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=vYe.test(t)&&!dYe.test(t)||!!e.tablet&&pYe.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var jW=J((NDt,HW)=>{"use strict";var gYe=dn(),mYe=UW();HW.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=yYe(),typeof r!="string")return!0;var n=mYe({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a-1;s--){var l=i[s];if(l.substr(0,8)==="Version/"){var u=l.substr(8).split(".")[0];if(gYe(u)&&(u=+u),u>=13)return!0}}}return n};function yYe(){var e;return typeof navigator<"u"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var YW=J((ODt,VW)=>{"use strict";var xYe=Nr();VW.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=xYe.select(this)}),i}});var WW=J((BDt,GW)=>{"use strict";var bYe=zr();GW.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[r];if(l)return l}a=bYe.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var zE=J((UDt,XW)=>{"use strict";XW.exports=function(t){for(var r={},n=[],i=0,a=0;a{"use strict";ZW.exports=function(t){for(var r=TYe(t)?_Ye:wYe,n=[],i=0;i{"use strict";$W.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var l=parseFloat(i).toPrecision(12);l.indexOf("e+")===-1&&(i=+l)}}return i}});var eX=J((VDt,QW)=>{"use strict";var AYe=dn(),MYe=oi().BADNUM,kYe=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;QW.exports=function(t){return typeof t=="string"&&(t=t.replace(kYe,"")),AYe(t)?Number(t):MYe}});var gt=J((YDt,vX)=>{"use strict";var Xb=Nr(),SYe=m1().utcFormat,CYe=lE().format,oX=dn(),sX=oi(),lX=sX.FP_SAFE,EYe=-lX,tX=sX.BADNUM,Pt=vX.exports={};Pt.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var rX={};Pt.warnBadFormat=function(e){var t=String(e);rX[t]||(rX[t]=1,Pt.warn('encountered bad format: "'+t+'"'))};Pt.noFormat=function(e){return String(e)};Pt.numberFormat=function(e){var t;try{t=CYe(Pt.adjustFormat(e))}catch{return Pt.warnBadFormat(e),Pt.noFormat}return t};Pt.nestedProperty=Rb();Pt.keyedContainer=YV();Pt.relativeAttr=WV();Pt.isPlainObject=Bv();Pt.toLogRange=vT();Pt.relinkPrivateKeys=$V();var i0=fl();Pt.isArrayBuffer=i0.isArrayBuffer;Pt.isTypedArray=i0.isTypedArray;Pt.isArrayOrTypedArray=i0.isArrayOrTypedArray;Pt.isArray1D=i0.isArray1D;Pt.ensureArray=i0.ensureArray;Pt.concat=i0.concat;Pt.maxRowLength=i0.maxRowLength;Pt.minRowLength=i0.minRowLength;var uX=x1();Pt.mod=uX.mod;Pt.modHalf=uX.modHalf;var a0=mY();Pt.valObjectMeta=a0.valObjectMeta;Pt.coerce=a0.coerce;Pt.coerce2=a0.coerce2;Pt.coerceFont=a0.coerceFont;Pt.coercePattern=a0.coercePattern;Pt.coerceHoverinfo=a0.coerceHoverinfo;Pt.coerceSelectionMarkerOpacity=a0.coerceSelectionMarkerOpacity;Pt.validate=a0.validate;var Af=MW();Pt.dateTime2ms=Af.dateTime2ms;Pt.isDateTime=Af.isDateTime;Pt.ms2DateTime=Af.ms2DateTime;Pt.ms2DateTimeLocal=Af.ms2DateTimeLocal;Pt.cleanDate=Af.cleanDate;Pt.isJSDate=Af.isJSDate;Pt.formatDate=Af.formatDate;Pt.incrementMonth=Af.incrementMonth;Pt.dateTick0=Af.dateTick0;Pt.dfltRange=Af.dfltRange;Pt.findExactDates=Af.findExactDates;Pt.MIN_MS=Af.MIN_MS;Pt.MAX_MS=Af.MAX_MS;var Bp=IT();Pt.findBin=Bp.findBin;Pt.sorterAsc=Bp.sorterAsc;Pt.sorterDes=Bp.sorterDes;Pt.distinctVals=Bp.distinctVals;Pt.roundUp=Bp.roundUp;Pt.sort=Bp.sort;Pt.findIndexOfMin=Bp.findIndexOfMin;Pt.sortObjectKeys=Vb();var Gv=CW();Pt.aggNums=Gv.aggNums;Pt.len=Gv.len;Pt.mean=Gv.mean;Pt.geometricMean=Gv.geometricMean;Pt.median=Gv.median;Pt.midRange=Gv.midRange;Pt.variance=Gv.variance;Pt.stdev=Gv.stdev;Pt.interp=Gv.interp;var Qc=wT();Pt.init2dArray=Qc.init2dArray;Pt.transposeRagged=Qc.transposeRagged;Pt.dot=Qc.dot;Pt.translationMatrix=Qc.translationMatrix;Pt.rotationMatrix=Qc.rotationMatrix;Pt.rotationXYMatrix=Qc.rotationXYMatrix;Pt.apply3DTransform=Qc.apply3DTransform;Pt.apply2DTransform=Qc.apply2DTransform;Pt.apply2DTransform2=Qc.apply2DTransform2;Pt.convertCssMatrix=Qc.convertCssMatrix;Pt.inverseTransformMatrix=Qc.inverseTransformMatrix;var Vh=PW();Pt.deg2rad=Vh.deg2rad;Pt.rad2deg=Vh.rad2deg;Pt.angleDelta=Vh.angleDelta;Pt.angleDist=Vh.angleDist;Pt.isFullCircle=Vh.isFullCircle;Pt.isAngleInsideSector=Vh.isAngleInsideSector;Pt.isPtInsideSector=Vh.isPtInsideSector;Pt.pathArc=Vh.pathArc;Pt.pathSector=Vh.pathSector;Pt.pathAnnulus=Vh.pathAnnulus;var L1=IW();Pt.isLeftAnchor=L1.isLeftAnchor;Pt.isCenterAnchor=L1.isCenterAnchor;Pt.isRightAnchor=L1.isRightAnchor;Pt.isTopAnchor=L1.isTopAnchor;Pt.isMiddleAnchor=L1.isMiddleAnchor;Pt.isBottomAnchor=L1.isBottomAnchor;var D1=zW();Pt.segmentsIntersect=D1.segmentsIntersect;Pt.segmentDistance=D1.segmentDistance;Pt.getTextLocation=D1.getTextLocation;Pt.clearLocationCache=D1.clearLocationCache;Pt.getVisibleSegment=D1.getVisibleSegment;Pt.findPointOnPath=D1.findPointOnPath;var UT=cn();Pt.extendFlat=UT.extendFlat;Pt.extendDeep=UT.extendDeep;Pt.extendDeepAll=UT.extendDeepAll;Pt.extendDeepNoArrays=UT.extendDeepNoArrays;var NE=Kd();Pt.log=NE.log;Pt.warn=NE.warn;Pt.error=NE.error;var LYe=_1();Pt.counterRegex=LYe.counter;var OE=zT();Pt.throttle=OE.throttle;Pt.throttleDone=OE.done;Pt.clearThrottle=OE.clear;var Yh=Ob();Pt.getGraphDiv=Yh.getGraphDiv;Pt.isPlotDiv=Yh.isPlotDiv;Pt.removeElement=Yh.removeElement;Pt.addStyleRule=Yh.addStyleRule;Pt.addRelatedStyleRule=Yh.addRelatedStyleRule;Pt.deleteRelatedStyleRule=Yh.deleteRelatedStyleRule;Pt.getFullTransformMatrix=Yh.getFullTransformMatrix;Pt.getElementTransformMatrix=Yh.getElementTransformMatrix;Pt.getElementAndAncestors=Yh.getElementAndAncestors;Pt.equalDomRects=Yh.equalDomRects;Pt.clearResponsive=BW();Pt.preserveDrawingBuffer=jW();Pt.makeTraceGroups=YW();Pt._=WW();Pt.notifier=xE();Pt.filterUnique=zE();Pt.filterVisible=JW();Pt.pushUnique=_E();Pt.increment=KW();Pt.cleanNumber=eX();Pt.ensureNumber=function(t){return oX(t)?(t=Number(t),t>lX||t=t?!1:oX(e)&&e>=0&&e%1===0};Pt.noop=bT();Pt.identity=jb();Pt.repeat=function(e,t){for(var r=new Array(t),n=0;nr?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};Pt.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};Pt.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s=Math.pow(2,r)?i>10?(Pt.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};Pt.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};Pt.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,l,u,f;for(s=0;s=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=r&&(u=n-1-u),f+=e[u]*a[l];o[s]=f}return o};Pt.syncOrAsync=function(e,t,r){var n,i;function a(){return Pt.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};Pt.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};Pt.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a0?i:0})};Pt.fillArray=function(e,t,r,n){if(n=n||Pt.identity,Pt.isArrayOrTypedArray(e))for(var i=0;i1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l};Pt.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var hX=/^\w*$/;Pt.templateString=function(e,t){var r={};return e.replace(Pt.TEMPLATE_STRING_REGEX,function(n,i){var a;return hX.test(i)?a=t[i]:(r[i]=r[i]||Pt.nestedProperty(t,i).get,a=r[i]()),Pt.isValidTextValue(a)?a:""})};var FYe={max:10,count:0,name:"hovertemplate"};Pt.hovertemplateString=function(){return BE.apply(FYe,arguments)};var zYe={max:10,count:0,name:"texttemplate"};Pt.texttemplateString=function(){return BE.apply(zYe,arguments)};var NYe=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function OYe(e){var t=e.match(NYe);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var BYe={max:10,count:0,name:"texttemplate",parseMultDiv:!0};Pt.texttemplateStringForShapes=function(){return BE.apply(BYe,arguments)};var nX=/^[:|\|]/;function BE(e,t,r){var n=this,i=arguments;t||(t={});var a={};return e.replace(Pt.TEMPLATE_STRING_REGEX,function(o,s,l){var u=s==="xother"||s==="yother",f=s==="_xother"||s==="_yother",c=s==="_xother_"||s==="_yother_",h=s==="xother_"||s==="yother_",d=u||f||h||c,v=s;(f||c)&&(v=v.substring(1)),(h||c)&&(v=v.substring(0,v.length-1));var m=null,b=null;if(n.parseMultDiv){var g=OYe(v);v=g.key,m=g.op,b=g.number}var _;if(d){if(_=t[v],_===void 0)return""}else{var T,w;for(w=3;w=BT&&o<=iX,u=s>=BT&&s<=iX;if(l&&(n=10*n+o-BT),u&&(i=10*i+s-BT),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var E1=2e9;Pt.seedPseudoRandom=function(){E1=2e9};Pt.pseudoRandom=function(){var e=E1;return E1=(69069*E1+1)%4294967296,Math.abs(E1-e)<429496729?Pt.pseudoRandom():E1/4294967296};Pt.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=Pt.extractOption(e,t,"htx","hovertext");if(Pt.isValidTextValue(i))return n(i);var a=Pt.extractOption(e,t,"tx","text");if(Pt.isValidTextValue(a))return n(a)};Pt.isValidTextValue=function(e){return e||e===0};Pt.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n1&&(u=1):u=0,Pt.strTranslate(i-u*(r+o),a-u*(n+s))+Pt.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};Pt.setTransormAndDisplay=function(e,t){e.attr("transform",Pt.getTextTransform(t)),e.style("display",t.scale?null:"none")};Pt.ensureUniformFontSize=function(e,t){var r=Pt.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};Pt.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};Pt.bigFont=function(e){return Math.round(1.2*e)};var aX=Pt.getFirefoxVersion(),UYe=aX!==null&&aX<86;Pt.getPositionFromD3Event=function(){return UYe?[Xb.event.layerX,Xb.event.layerY]:[Xb.event.offsetX,Xb.event.offsetY]}});var gX=J(()=>{"use strict";var HYe=gt(),dX={"X,X div":'direction:ltr;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 .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg":"overflow:hidden;","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-default":"cursor:default;","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 .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","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:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","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,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.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(UE in dX)pX=UE.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),HYe.addStyleRule(pX,dX[UE]);var pX,UE});var HE=J((XDt,mX)=>{mX.exports=!0});var VE=J((ZDt,yX)=>{"use strict";var jYe=HE(),jE;typeof global.matchMedia=="function"?jE=!global.matchMedia("(hover: none)").matches:jE=jYe;yX.exports=jE});var VT=J((JDt,YE)=>{"use strict";var R1=typeof Reflect=="object"?Reflect:null,xX=R1&&typeof R1.apply=="function"?R1.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},HT;R1&&typeof R1.ownKeys=="function"?HT=R1.ownKeys:Object.getOwnPropertySymbols?HT=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:HT=function(t){return Object.getOwnPropertyNames(t)};function VYe(e){console&&console.warn&&console.warn(e)}var wX=Number.isNaN||function(t){return t!==t};function ba(){ba.init.call(this)}YE.exports=ba;YE.exports.once=XYe;ba.EventEmitter=ba;ba.prototype._events=void 0;ba.prototype._eventsCount=0;ba.prototype._maxListeners=void 0;var bX=10;function jT(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(ba,"defaultMaxListeners",{enumerable:!0,get:function(){return bX},set:function(e){if(typeof e!="number"||e<0||wX(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");bX=e}});ba.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};ba.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||wX(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function _X(e){return e._maxListeners===void 0?ba.defaultMaxListeners:e._maxListeners}ba.prototype.getMaxListeners=function(){return _X(this)};ba.prototype.emit=function(t){for(var r=[],n=1;n0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(l===void 0)return!1;if(typeof l=="function")xX(l,this,r);else for(var u=l.length,f=SX(l,u),n=0;n0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,VYe(s)}return e}ba.prototype.addListener=function(t,r){return TX(this,t,r,!1)};ba.prototype.on=ba.prototype.addListener;ba.prototype.prependListener=function(t,r){return TX(this,t,r,!0)};function YYe(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function AX(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=YYe.bind(n);return i.listener=r,n.wrapFn=i,i}ba.prototype.once=function(t,r){return jT(r),this.on(t,AX(this,t,r)),this};ba.prototype.prependOnceListener=function(t,r){return jT(r),this.prependListener(t,AX(this,t,r)),this};ba.prototype.removeListener=function(t,r){var n,i,a,o,s;if(jT(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():GYe(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};ba.prototype.off=ba.prototype.removeListener;ba.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i=0;i--)this.removeListener(t,r[i]);return this};function MX(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?WYe(i):SX(i,i.length)}ba.prototype.listeners=function(t){return MX(this,t,!0)};ba.prototype.rawListeners=function(t){return MX(this,t,!1)};ba.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):kX.call(e,t)};ba.prototype.listenerCount=kX;function kX(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}ba.prototype.eventNames=function(){return this._eventsCount>0?HT(this._events):[]};function SX(e,t){for(var r=new Array(t),n=0;n{"use strict";var GE=VT().EventEmitter,JYe={init:function(e){if(e._ev instanceof GE)return e;var t=new GE,r=new GE;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){typeof jQuery<"u"&&jQuery(e).trigger(n,i),t.emit(n,i),r.emit(n,i)},e},triggerHandler:function(e,t,r){var n,i;typeof jQuery<"u"&&(n=jQuery(e).triggerHandler(t,r));var a=e._ev;if(!a)return n;var o=a._events[t];if(!o)return n;function s(u){if(u.listener){if(a.removeListener(t,u.listener),!u.fired)return u.fired=!0,u.listener.apply(a,[r])}else return u.apply(a,[r])}o=Array.isArray(o)?o:[o];var l;for(l=0;l{"use strict";var LX=gt(),$Ye=qp().dfltConfig;function KYe(e,t){for(var r=[],n,i=0;i$Ye.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};Wv.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};Wv.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};Wv.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n{"use strict";PX.exports={_isLinkedToArray:"frames_entry",group:{valType:"string",description:["An identifier that specifies the group to which the frame belongs,","used by animate to select a subset of frames."].join(" ")},name:{valType:"string",description:"A label by which to identify the frame"},traces:{valType:"any",description:["A list of trace indices that identify the respective traces in the","data attribute"].join(" ")},baseframe:{valType:"string",description:["The name of the frame into which this frame's properties are merged","before applying. This is used to unify properties and avoid needing","to specify the same values for the same properties in multiple frames."].join(" ")},data:{valType:"any",description:["A list of traces this frame modifies. The format is identical to the","normal trace definition."].join(" ")},layout:{valType:"any",description:["Layout properties which this frame modifies. The format is identical","to the normal layout definition."].join(" ")}}});var o0=J(Co=>{"use strict";var cl=zr(),$b=gt(),Jb=Qi(),XE=zp(),QYe=WE(),eGe=Bb(),tGe=qp().configAttributes,IX=La(),$f=$b.extendDeepAll,I1=$b.isPlainObject,rGe=$b.isArrayOrTypedArray,YT=$b.nestedProperty,nGe=$b.valObjectMeta,ZE="_isSubplotObj",GT="_isLinkedToArray",iGe="_arrayAttrRegexps",FX="_deprecated",JE=[ZE,GT,iGe,FX];Co.IS_SUBPLOT_OBJ=ZE;Co.IS_LINKED_TO_ARRAY=GT;Co.DEPRECATED=FX;Co.UNDERSCORE_ATTRS=JE;Co.get=function(){var e={};cl.allTypes.forEach(function(r){e[r]=oGe(r)});var t={};return Object.keys(cl.transformsRegistry).forEach(function(r){t[r]=lGe(r)}),{defs:{valObjects:nGe,metaKeys:JE.concat(["description","role","editType","impliedEdits"]),editType:{traces:IX.traces,layout:IX.layout},impliedEdits:{description:["Sometimes when an attribute is changed, other attributes","must be altered as well in order to achieve the intended","result. For example, when `range` is specified, it is","important to set `autorange` to `false` or the new `range`","value would be lost in the redraw. `impliedEdits` is the","mechanism to do this: `impliedEdits: {autorange: false}`.","Each key is a relative paths to the attribute string to","change, using *^* to ascend into the parent container,","for example `range[0]` has `impliedEdits: {*^autorange*: false}`.","A value of `undefined` means that the attribute will not be","changed, but its previous value should be recorded in case","we want to reverse this change later. For example, `autorange`","has `impliedEdits: {*range[0]*: undefined, *range[1]*:undefined}","because the range will likely be changed by redraw."].join(" ")}},traces:e,layout:sGe(),transforms:t,frames:uGe(),animation:Up(eGe),config:Up(tGe)}};Co.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(JE.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Co.isValObject(o)&&I1(o)&&a!=="impliedEdits"&&Co.crawl(o,t,i+1,s)}})};Co.isValObject=function(e){return e&&e.valType!==void 0};Co.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(h,d,v,m){r=r.slice(0,m).concat([d]),n=n.slice(0,m).concat([h&&h._isLinkedToArray]);var b=h&&(h.valType==="data_array"||h.arrayOk===!0)&&!(r[m-1]==="colorbar"&&(d==="ticktext"||d==="tickvals"));b&&s(i,0,"")}function s(h,d,v){var m=h[r[d]],b=v+r[d];if(d===r.length-1)rGe(m)&&t.push(a+b);else if(n[d]){if(Array.isArray(m))for(var g=0;g=o.length)return!1;i=(cl.transformsRegistry[o[s].type]||{}).attributes,a=i&&i[t[2]],n=3}else{var l=e._module;if(l||(l=(cl.modules[e.type||Jb.type.dflt]||{})._module),!l)return!1;if(i=l.attributes,a=i&&i[r],!a){var u=l.basePlotModule;u&&u.attributes&&(a=u.attributes[r])}a||(a=Jb[r])}return zX(a,t,n)};Co.getLayoutValObject=function(e,t){var r=aGe(e,t[0]);return zX(r,t,1)};function aGe(e,t){var r,n,i,a,o=e._basePlotModules;if(o){var s;for(r=0;r=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!Zb(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function Zb(e){return e===Math.round(e)&&e>=0}function oGe(e){var t,r;t=cl.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=$f({},Jb),a=$f({},t.attributes);Co.crawl(a,function(l,u,f,c,h){YT(i,h).set(void 0),l===void 0&&YT(a,h).set(void 0)}),$f(n,i),cl.traceIs(e,"noOpacity")&&delete n.opacity,cl.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),cl.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,$f(n,a),r.attributes&&$f(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:Boolean(t.animatable),type:e,attributes:Up(n)};if(t.layoutAttributes){var s={};$f(s,t.layoutAttributes),o.layoutAttributes=Up(s)}return t.animatable||Co.crawl(o,function(l){Co.isValObject(l)&&"anim"in l&&delete l.anim}),o}function sGe(){var e={},t,r;$f(e,XE);for(t in cl.subplotsRegistry)if(r=cl.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n{"use strict";var q1=gt(),vGe=Qi(),s0="templateitemname",$E={name:{valType:"string",editType:"none",description:["When used in a template, named items are created in the output figure","in addition to any items the figure already has in this array.","You can modify these items in the output figure by making your own","item with `templateitemname` matching this `name`","alongside your modifications (including `visible: false` or","`enabled: false` to hide it).","Has no effect outside of a template."].join(" ")}};$E[s0]={valType:"string",editType:"calc",description:["Used to refer to a named item in this array in the template. Named","items from the template will be created even without a matching item","in the input figure, but you can modify one by making an item with","`templateitemname` matching its `name`, alongside your modifications","(including `visible: false` or `enabled: false` to hide it).","If there is no template or no matching item, this item will be","hidden unless you explicitly show it with `visible: true`."].join(" ")};Hp.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=$E.name,t[s0]=$E[s0],t};Hp.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=q1.coerce(a,{},vGe,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};Hp.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);q1.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};Hp.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[BX(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(u){var f={name:u.name,_input:u},c=f[s0]=u[s0];if(!OX(c))return f._template=i,f;for(var h=0;h=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function l(){s={},a&&(s[o]={},s[o][s0]=a)}l();function u(d,v){s[d]=v}function f(d,v){a?q1.nestedProperty(s[o],d).set(v):s[o+"."+d]=v}function c(){var d=s;return l(),d}function h(d,v){d&&f(d,v);var m=c();for(var b in m)q1.nestedProperty(e,b).set(m[b])}return{modifyBase:u,modifyItem:f,getUpdateObj:c,applyUpdate:h}}});var Eo=J((r8t,UX)=>{"use strict";var Kb=_1().counter;UX.exports={idRegex:{x:Kb("x","( domain)?"),y:Kb("y","( domain)?")},attrRegex:Kb("[xy]axis"),xAxisMatch:Kb("xaxis"),yAxisMatch:Kb("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var jo=J(zu=>{"use strict";var dGe=zr(),KE=Eo();zu.id2name=function(t){if(!(typeof t!="string"||!t.match(KE.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};zu.name2id=function(t){if(t.match(KE.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};zu.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(KE.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].substr(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};zu.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=zu.listIds(e,t),a=new Array(i.length),o;for(o=0;on?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)};zu.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function HX(e,t){if(t&&t.length){for(var r=0;r{"use strict";function pGe(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function gGe(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}jX.exports={clearOutlineControllers:pGe,clearOutline:gGe}});var WT=J((a8t,VX)=>{"use strict";VX.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc",description:["Determines how scatter points at the same location coordinate","are displayed on the graph.","With *group*, the scatter points are plotted next to one another","centered around the shared location.","With *overlay*, the scatter points are plotted over one another,","you might need to reduce *opacity* to see multiple scatter points."].join(" ")},scattergap:{valType:"number",min:0,max:1,editType:"calc",description:["Sets the gap (in plot fraction) between scatter points of","adjacent location coordinates.","Defaults to `bargap`."].join(" ")}}});var Nu=J(XT=>{"use strict";var Qb=zr(),mGe=Eo().SUBPLOT_PATTERN;XT.getSubplotCalcData=function(e,t,r){var n=Qb.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o{"use strict";var yGe=zr(),F1=gt();jp.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=jp.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){YX(e,o,i.cache),i.check=function(){if(a){var f=YX(e,o,i.cache);return f.changed&&n&&i.lookupTable[f.value]!==void 0&&(i.disable(),Promise.resolve(n({value:f.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[f.value]})).then(i.enable,i.enable)),f.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],l=0;l0?".":"")+i;F1.isPlainObject(a)?QE(a,t,o,n+1):t(o,i,a)}})}});var ea=J((l8t,lZ)=>{"use strict";var eZ=Nr(),bGe=m1().timeFormatLocale,wGe=lE().formatLocale,e2=dn(),_Ge=uE(),wi=zr(),tZ=o0(),TGe=ki(),Fr=gt(),rZ=qr(),ZX=oi().BADNUM,Ou=jo(),AGe=l0().clearOutline,MGe=WT(),tL=Bb(),kGe=WE(),SGe=Nu().getModuleCalcData,eL=Fr.relinkPrivateKeys,Vp=Fr._,Tr=lZ.exports={};Fr.extendFlat(Tr,wi);Tr.attributes=Qi();Tr.attributes.type.values=Tr.allTypes;Tr.fontAttrs=xa();Tr.layoutAttributes=zp();var JT=Tr.transformsRegistry,$T=XX();Tr.executeAPICommand=$T.executeAPICommand;Tr.computeAPICommandBindings=$T.computeAPICommandBindings;Tr.manageCommandObserver=$T.manageCommandObserver;Tr.hasSimpleAPICommandBindings=$T.hasSimpleAPICommandBindings;Tr.redrawText=function(e){return e=Fr.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(wi.getComponentMethod("annotations","draw")(e),wi.getComponentMethod("legend","draw")(e),wi.getComponentMethod("colorbar","draw")(e),t(Tr.previousPromises(e)))},300)})};Tr.resize=function(e){e=Fr.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||Fr.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Fr.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,wi.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};Tr.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};Tr.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Fr.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:rZ.defaultLine,"pointer-events":"all"}).each(function(){var u=eZ.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&CGe(e,a),o.text(a.text()&&s.text()?" - ":"")}};function CGe(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" "+String.fromCharCode(187));if(e._context.sendData)r.on("click",function(){Tr.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}Tr.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=eZ.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=Tr.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var EGe=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],LGe=["year","month","dayMonth","dayMonthYear"];Tr.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],l=e.data||[],u=e.calcdata||[],f=e._context||{},c;e._transitionData||Tr.createTransitionData(e),i._dfltTitle={plot:Vp(e,"Click to enter Plot title"),subtitle:Vp(e,"Click to enter Plot subtitle"),x:Vp(e,"Click to enter X axis title"),y:Vp(e,"Click to enter Y axis title"),colorbar:Vp(e,"Click to enter Colorscale title"),annotation:Vp(e,"new text")},i._traceWord=Vp(e,"trace");var h=JX(e,EGe);if(i._mapboxAccessToken=f.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;Tr.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),Tr.sanitizeMargins(i)}else{Tr.supplyLayoutGlobalDefaults(a,i,h);var m=!a.width||!a.height,b=i.autosize,g=f.autosizable,_=m&&(b||g);_?Tr.plotAutoSize(e,a,i):m&&Tr.sanitizeMargins(i),!b&&m&&(a.width=i.width,a.height=i.height)}i._d3locale=PGe(h,i.separators),i._extraFormat=JX(e,LGe),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var T=i._subplots=RGe(),w=i._splomAxes={x:{},y:{}},k=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=DGe(o,l),i._globalTransforms=(e._context||{}).globalTransforms,Tr.supplyDataDefaults(l,s,a,i);var x=Object.keys(w.x),M=Object.keys(w.y);if(x.length>1&&M.length>1){for(wi.getComponentMethod("grid","sizeDefaults")(a,i),c=0;c15&&M.length>15&&i.shapes.length===0&&i.images.length===0,Tr.linkSubplots(s,i,o,n),Tr.cleanPlot(s,i,o,n);var E=!!(n._has&&n._has("gl2d")),C=!!(i._has&&i._has("gl2d")),L=!!(n._has&&n._has("cartesian")),R=!!(i._has&&i._has("cartesian")),I=L||E,P=R||C;I&&!P?n._bgLayer.remove():P&&!I&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&AGe({_fullLayout:n}),IGe(s,i),eL(i,n),wi.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var D=i._tracePreGUI,q={},N;for(N in D)q[N]="old";for(c=0;c0){var f=1-2*a;o=Math.round(f*o),s=Math.round(f*s)}}var c=Tr.layoutAttributes.width.min,h=Tr.layoutAttributes.height.min;o1,v=!r.height&&Math.abs(n.height-s)>1;(v||d)&&(d&&(n.width=o),v&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),Tr.sanitizeMargins(n)};Tr.supplyLayoutModuleDefaults=function(e,t,r,n){var i=wi.componentsRegistry,a=t._basePlotModules,o,s,l,u=wi.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(wi.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var f in t._subplots)t._subplots[f].sort(Fr.subplotSort);for(s=0;s1&&(r.l/=b,r.r/=b)}if(h){var g=(r.t+r.b)/h;g>1&&(r.t/=g,r.b/=g)}var _=r.xl!==void 0?r.xl:r.x,T=r.xr!==void 0?r.xr:r.x,w=r.yt!==void 0?r.yt:r.y,k=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:_,size:r.l+m},r:{val:T,size:r.r+m},b:{val:k,size:r.b+m},t:{val:w,size:r.t+m}},v[t]=1}if(!n._replotting)return Tr.doAutoMargin(e)}};function zGe(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Ou.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}Tr.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),iZ(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=Fr.extendFlat({},i),l=a.l,u=a.r,f=a.t,c=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,m=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var g=e._fullLayout._reservedMargin;for(var _ in g)for(var T in g[_]){var w=g[_][T];o[T]=Math.max(o[T],w)}h.base={l:{val:0,size:l},r:{val:1,size:u},t:{val:1,size:f},b:{val:0,size:c}};for(var k in o){var x=0;for(var M in h)M!=="base"&&e2(h[M][k].size)&&(x=h[M][k].size>x?h[M][k].size:x);var A=Math.max(0,a[k]-x);o[k]=Math.max(0,o[k]-A)}for(var p in h){var S=h[p].l||{},y=h[p].b||{},E=S.val,C=S.size,L=y.val,R=y.size,I=r-o.r-o.l,P=n-o.t-o.b;for(var D in h){if(e2(C)&&h[D].r){var q=h[D].r.val,N=h[D].r.size;if(q>E){var U=(C*q+(N-I)*E)/(q-E),G=(N*(1-E)+(C-I)*(1-q))/(q-E);U+G>l+u&&(l=U,u=G)}}if(e2(R)&&h[D].t){var ee=h[D].t.val,Q=h[D].t.size;if(ee>L){var j=(R*ee+(Q-P)*L)/(ee-L),O=(Q*(1-L)+(R-P)*(1-ee))/(ee-L);j+O>c+f&&(c=j,f=O)}}}}}var Z=Fr.constrain(r-a.l-a.r,aZ,v),K=Fr.constrain(n-a.t-a.b,oZ,m),$=Math.max(0,r-Z),oe=Math.max(0,n-K);if($){var te=(l+u)/$;te>1&&(l/=te,u/=te)}if(oe){var V=(c+f)/oe;V>1&&(c/=V,f/=V)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(f)+o.t,i.b=Math.round(c)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(Tr.didMarginChange(s,i)||zGe(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var ne=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount1)return!0}return!1};Tr.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&Tr.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Fr.isPlainObject(h)){var v={},m;return Object.keys(h).sort().forEach(function(T){if(["_","["].indexOf(T.charAt(0))===-1){if(typeof h[T]=="function"){d&&(v[T]="_function");return}if(r==="keepdata"){if(T.substr(T.length-3)==="src")return}else if(r==="keepstream"){if(m=h[T+"src"],typeof m=="string"&&m.indexOf(":")>0&&!Fr.isPlainObject(h.stream))return}else if(r!=="keepall"&&(m=h[T+"src"],typeof m=="string"&&m.indexOf(":")>0))return;v[T]=u(h[T],d)}}),v}var b=Array.isArray(h),g=Fr.isTypedArray(h);if((b||g)&&h.dtype&&h.shape){var _=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Fr.isArrayBuffer(_)?_Ge.encode(_):_},d)}return b?h.map(function(T){return u(T,d)}):g?Fr.simpleMap(h,Fr.identity):Fr.isJSDate(h)?Fr.ms2DateTimeLocal(+h):h}var f={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(f.layout=u(s),i)){var c=s._size;f.layout.computed={margin:{b:c.b,l:c.l,r:c.r,t:c.t}}}return l&&(f.frames=u(l)),a&&(f.config=u(e._context,!0)),n==="object"?f:JSON.stringify(f)};Tr.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return wi.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function v(){return h++,function(){d++,!n&&d===h&&s(c)}}r.runFn(v),setTimeout(v())})}function s(c){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return wi.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(c)}function l(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var u=[Tr.previousPromises,l,r.prepareFn,Tr.rehover,Tr.reselect,o],f=Fr.syncOrAsync(u,e);return(!f||!f.then)&&(f=Promise.resolve()),f.then(function(){return e})}Tr.doCalcdata=function(e,t){var r=Ou.list(e),n=e._fullData,i=e._fullLayout,a,o,s,l,u=new Array(n.length),f=(e.calcdata||[]).slice();for(e.calcdata=u,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s=0;l--)if(k[l].enabled){a._indexToPoints=k[l]._indexToPoints;break}o&&o.calc&&(w=o.calc(e,a))}(!Array.isArray(w)||!w[0])&&(w=[{x:ZX,y:ZX}]),w[0].t||(w[0].t={}),w[0].trace=a,u[_]=w}}for(KX(r,n,i),s=0;s{"use strict";Yp.xmlns="http://www.w3.org/2000/xmlns/";Yp.svg="http://www.w3.org/2000/svg";Yp.xlink="http://www.w3.org/1999/xlink";Yp.svgAttrs={xmlns:Yp.svg,"xmlns:xlink":Yp.xlink}});var Vo=J((f8t,uZ)=>{"use strict";uZ.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var ca=J(Kf=>{"use strict";var Lo=Nr(),Xv=gt(),UGe=Xv.strTranslate,rL=Gh(),HGe=Vo().LINE_SPACING,jGe=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;Kf.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax<"u"&&n.match(jGe),a=Lo.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var l=rWe(e.node(),n);l&&e.style("pointer-events","all"),Kf.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(l){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),f={fontSize:u};WGe(i[2],f,function(c,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var v=c&&c.select("svg");if(!v||!v.node()){s(),l();return}var m=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});m.node().appendChild(v.node()),h&&h.node()&&v.node().insertBefore(h.node().cloneNode(!0),v.node().firstChild);var b=d.width,g=d.height;v.attr({class:o,height:g,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var _=e.node().style.fill||"black",T=v.select("g");T.attr({fill:_,stroke:_});var w=T.node().getBoundingClientRect(),k=w.width,x=w.height;(k>b||x>g)&&(v.style("overflow","hidden"),w=v.node().getBoundingClientRect(),k=w.width,x=w.height);var M=+e.attr("x"),A=+e.attr("y"),p=u||e.node().getBoundingClientRect().height,S=-p/4;if(o[0]==="y")m.attr({transform:"rotate("+[-90,M,A]+")"+UGe(-k/2,S-x/2)});else if(o[0]==="l")A=S-x/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)M=0,A=S;else{var y=e.attr("text-anchor");M=M-k*(y==="middle"?.5:y==="end"?1:0),A=A+S-x/2}v.attr({x:M,y:A}),r&&r.call(e,m),l(m)})})):s(),e};var VGe=/(<|<|<)/g,YGe=/(>|>|>)/g;function GGe(e){return e.replace(VGe,"\\lt ").replace(YGe,"\\gt ")}var fZ=[["$","$"],["\\(","\\)"]];function WGe(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Xv.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,l=function(){return a=Xv.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:fZ},displayAlign:"left"})},u=function(){a=Xv.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=fZ},f=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},c=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var _="math-output-"+Xv.randstr({},64);s=Lo.select("body").append("div").attr({id:_}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(GGe(e));var T=s.node();return n===2?MathJax.Hub.Typeset(T):MathJax.typeset([T])},d=function(){var _=s.select(n===2?".MathJax_SVG":".MathJax"),T=!_.empty()&&s.select("svg").node();if(!T)Xv.log("There was an error in the tex syntax.",e),r();else{var w=T.getBoundingClientRect(),k;n===2?k=Lo.select("body").select("#MathJax_SVG_glyphs"):k=_.select("defs"),r(_,k,w)}s.remove()},v=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},m=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},g=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(l,f,h,d,v,b):n===3&&(u(),c(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),m(),g()}))}var dZ={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},XGe={sub:"0.3em",sup:"-0.6em"},ZGe={sub:"-0.21em",sup:"0.42em"},cZ="\u200B",hZ=["http:","https:","mailto:","",void 0,":"],pZ=Kf.NEWLINES=/(\r\n?|\n)/g,iL=/(<[^<>]*>)/,aL=/<(\/?)([^ >]*)(\s+(.*))?>/i,JGe=//i;Kf.BR_TAG_ALL=//gi;var gZ=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,mZ=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,yZ=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,$Ge=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function Gp(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&KT(n)}var KGe=/(^|;)\s*color:/;Kf.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(iL),s=[],l="",u=0,f=0;fa?s.push(c.substr(0,m-a)+i):s.push(c.substr(0,m));break}l=""}}return s.join("")};var QGe={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},eWe=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function KT(e){return e.replace(eWe,function(t,r){var n;return r.charAt(0)==="#"?n=tWe(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):n=QGe[r],n||t})}Kf.convertEntities=KT;function tWe(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function rWe(e,t){t=t.replace(pZ," ");var r=!1,n=[],i,a=-1;function o(){a++;var x=document.createElementNS(rL.svg,"tspan");Lo.select(x).attr({class:"line",dy:a*HGe+"em"}),e.appendChild(x),i=x;var M=n;if(n=[{node:x}],M.length>1)for(var A=1;A.",t);return}var M=n.pop();x!==M.type&&Xv.log("Start tag <"+M.type+"> doesnt match end tag <"+x+">. Pretending it did match.",t),i=n[n.length-1].node}var f=JGe.test(t);f?o():(i=e,n=[{node:e}]);for(var c=t.split(iL),h=0;h{"use strict";var nWe=Nr(),eA=ls(),r2=dn(),QT=gt(),bZ=qr(),iWe=Pp().isValid;function aWe(e,t,r){var n=t?QT.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(QT.isArrayOrTypedArray(i)){for(var o=0;o=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function kZ(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o{"use strict";var CZ=SE(),sWe=CZ.FORMAT_LINK,lWe=CZ.DATE_FORMAT_LINK;function uWe(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?oL:EZ)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function oL(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+sWe+"."].join(" ")}function EZ(e,t){return oL(e,t)+[" And for dates see: "+lWe+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}LZ.exports={axisHoverFormat:uWe,descriptionOnlyNumbers:oL,descriptionWithDates:EZ}});var hl=J((d8t,GZ)=>{"use strict";var sL=xa(),z1=Ho(),YZ=Ss().dash,fL=cn().extendFlat,DZ=ki().templatedArray,RZ=Ga().descriptionWithDates,fWe=oi().ONEDAY,Wh=Eo(),lL=Wh.HOUR_PATTERN,uL=Wh.WEEKDAY_PATTERN,tA={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0},description:["Sets the tick mode for this axis.","If *auto*, the number of ticks is set via `nticks`.","If *linear*, the placement of the ticks is determined by","a starting position `tick0` and a tick step `dtick`","(*linear* is the default value if `tick0` and `dtick` are provided).","If *array*, the placement of the ticks is set via `tickvals`","and the tick text is `ticktext`.","(*array* is the default value if `tickvals` is provided)."].join(" ")},cWe=fL({},tA,{values:tA.values.slice().concat(["sync"]),description:[tA.description,"If *sync*, the number of ticks will sync with the overlayed axis","set by `overlaying` property."].join(" ")});function PZ(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks",description:["Specifies the maximum number of ticks for the particular axis.","The actual number of ticks will be chosen automatically to be","less than or equal to `nticks`.","Has an effect only if `tickmode` is set to *auto*."].join(" ")}}var IZ={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"},description:["Sets the placement of the first tick on this axis.","Use with `dtick`.","If the axis `type` is *log*, then you must take the log of your starting tick","(e.g. to set the starting tick to 100, set the `tick0` to 2)","except when `dtick`=*L* (see `dtick` for more info).","If the axis `type` is *date*, it should be a date string, like date data.","If the axis `type` is *category*, it should be a number, using the scale where","each category is assigned a serial number from zero in the order it appears."].join(" ")},qZ={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"},description:["Sets the step in-between ticks on this axis. Use with `tick0`.","Must be a positive number, or special strings available to *log* and *date* axes.","If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n","is the tick number. For example,","to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1.","To set tick marks at 1, 100, 10000, ... set dtick to 2.","To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433.","*log* has several special values; *L*, where `f` is a positive number,","gives ticks linearly spaced in value (but not position).","For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc.","To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5).","`tick0` is ignored for *D1* and *D2*.","If the axis `type` is *date*, then you must convert the time to milliseconds.","For example, to set the interval between ticks to one day,","set `dtick` to 86400000.0.","*date* also has special values *M* gives ticks spaced by a number of months.","`n` must be a positive integer.","To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*.","To set ticks every 4 years, set `dtick` to *M48*"].join(" ")},FZ={valType:"data_array",editType:"ticks",description:["Sets the values at which ticks on this axis appear.","Only has an effect if `tickmode` is set to *array*.","Used with `ticktext`."].join(" ")},zZ={valType:"enumerated",values:["outside","inside",""],editType:"ticks",description:["Determines whether ticks are drawn or not.","If **, this axis' ticks are not drawn.","If *outside* (*inside*), this axis' are drawn outside (inside)","the axis lines."].join(" ")};function NZ(e){var t={valType:"number",min:0,editType:"ticks",description:"Sets the tick length (in px)."};return e||(t.dflt=5),t}function OZ(e){var t={valType:"number",min:0,editType:"ticks",description:"Sets the tick width (in px)."};return e||(t.dflt=1),t}var BZ={valType:"color",dflt:z1.defaultLine,editType:"ticks",description:"Sets the tick color."},UZ={valType:"color",dflt:z1.lightLine,editType:"ticks",description:"Sets the color of the grid lines."};function HZ(e){var t={valType:"number",min:0,editType:"ticks",description:"Sets the width (in px) of the grid lines."};return e||(t.dflt=1),t}var jZ=fL({},YZ,{editType:"ticks"}),VZ={valType:"boolean",editType:"ticks",description:["Determines whether or not grid lines are drawn.","If *true*, the grid lines are drawn at every tick mark."].join(" ")};GZ.exports={visible:{valType:"boolean",editType:"plot",description:["A single toggle to hide the axis while preserving interaction like dragging.","Default is true when a cheater plot is present on the axis, otherwise","false"].join(" ")},color:{valType:"color",dflt:z1.defaultLine,editType:"ticks",description:["Sets default for all colors associated with this axis","all at once: line, font, tick, and grid colors.","Grid color is lightened by blending this with the plot background","Individual pieces can override this."].join(" ")},title:{text:{valType:"string",editType:"ticks",description:["Sets the title of this axis.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:sL({editType:"ticks",description:["Sets this axis' title font.","Note that the title's font used to be customized","by the now deprecated `titlefont` attribute."].join(" ")}),standoff:{valType:"number",min:0,editType:"ticks",description:["Sets the standoff distance (in px) between the axis labels and the title text","The default value is a function of the axis tick labels, the title `font.size`","and the axis `linewidth`.","Note that the axis title position is always constrained within the margins,","so the actual standoff distance is always less than the set or default value.","By setting `standoff` and turning on `automargin`, plotly.js will push the","margins to fit the axis title at given standoff distance."].join(" ")},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0,description:["Sets the axis type.","By default, plotly attempts to determined the axis type","by looking into the data of the traces that referenced","the axis in question."].join(" ")},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc",description:["Using *strict* a numeric string in trace data is not converted to a number.","Using *convert types* a numeric string in trace data may be","treated as a number during automatic axis `type` detection.","Defaults to layout.autotypenumbers."].join(" ")},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Determines whether or not the range of this axis is","computed in relation to the input data.","See `rangemode` for more info.","If `range` is provided and it has a value for both the","lower and upper bound, `autorange` is set to *false*.","Using *min* applies autorange only to set the minimum.","Using *max* applies autorange only to set the maximum.","Using *min reversed* applies autorange only to set the minimum on a reversed axis.","Using *max reversed* applies autorange only to set the maximum on a reversed axis.","Using *reversed* applies autorange on both ends and reverses the axis direction."].join(" ")},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Use this value exactly as autorange minimum."].join(" ")},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Use this value exactly as autorange maximum."].join(" ")},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Clip autorange minimum if it goes beyond this value.","Has no effect when `autorangeoptions.minallowed` is provided."].join(" ")},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Clip autorange maximum if it goes beyond this value.","Has no effect when `autorangeoptions.maxallowed` is provided."].join(" ")},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Ensure this value is included in autorange."].join(" ")},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot",description:["If *normal*, the range is computed in relation to the extrema","of the input data.","If *tozero*`, the range extends to 0,","regardless of the input data","If *nonnegative*, the range is non-negative,","regardless of the input data.","Applies only to linear axes."].join(" ")},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0,description:["Sets the range of this axis.","If the axis `type` is *log*, then you must take the log of your","desired range (e.g. to set the range from 1 to 100,","set the range from 0 to 2).","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears.","Leaving either or both elements `null` impacts the default `autorange`."].join(" ")},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1},description:["Determines the minimum range of this axis."].join(" ")},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1},description:["Determines the maximum range of this axis."].join(" ")},fixedrange:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not this axis is zoom-able.","If true, then zoom is disabled."].join(" ")},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot",description:["Could be used to set the desired inside range of this axis","(excluding the labels) when `ticklabelposition` of","the anchored axis has *inside*.","Not implemented for axes with `type` *log*.","This would be ignored when `range` is provided."].join(" ")},scaleanchor:{valType:"enumerated",values:[Wh.idRegex.x.toString(),Wh.idRegex.y.toString(),!1],editType:"plot",description:["If set to another axis id (e.g. `x2`, `y`), the range of this axis","changes together with the range of the corresponding axis","such that the scale of pixels per unit is in a constant ratio.","Both axes are still zoomable, but when you zoom one, the other will","zoom the same amount, keeping a fixed midpoint.","`constrain` and `constraintoward` determine how we enforce the constraint.","You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}`","but you can only link axes of the same `type`.","The linked axis can have the opposite letter (to constrain the aspect ratio)","or the same letter (to match scales across subplots).","Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant","and the last constraint encountered will be ignored to avoid possible","inconsistent constraints via `scaleratio`.","Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint","is currently forbidden.","Setting `false` allows to remove a default constraint (occasionally,","you may need to prevent a default `scaleanchor` constraint from",'being applied, eg. when having an image trace `yaxis: {scaleanchor: "x"}`',"is set automatically in order for pixels to be rendered as squares,","setting `yaxis: {scaleanchor: false}` allows to remove the constraint)."].join(" ")},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot",description:["If this axis is linked to another by `scaleanchor`, this determines the pixel","to unit scale ratio. For example, if this value is 10, then every unit on","this axis spans 10 times the number of pixels as a unit on the linked axis.","Use this for example to create an elevation profile where the vertical scale","is exaggerated a fixed amount with respect to the horizontal."].join(" ")},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot",description:["If this axis needs to be compressed (either due to its own `scaleanchor` and","`scaleratio` or those of the other axis), determines how that happens:","by increasing the *range*, or by decreasing the *domain*.","Default is *domain* for axes containing image traces, *range* otherwise."].join(" ")},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot",description:["If this axis needs to be compressed (either due to its own `scaleanchor` and","`scaleratio` or those of the other axis), determines which direction we push","the originally specified plot area. Options are *left*, *center* (default),","and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes."].join(" ")},matches:{valType:"enumerated",values:[Wh.idRegex.x.toString(),Wh.idRegex.y.toString()],editType:"calc",description:["If set to another axis id (e.g. `x2`, `y`), the range of this axis","will match the range of the corresponding axis in data-coordinates space.","Moreover, matching axes share auto-range values, category lists and","histogram auto-bins.","Note that setting axes simultaneously in both a `scaleanchor` and a `matches` constraint","is currently forbidden.","Moreover, note that matching axes must have the same `type`."].join(" ")},rangebreaks:DZ("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this axis rangebreak is enabled or disabled.","Please note that `rangebreaks` only work for *date* axis type."].join(" ")},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc",description:["Sets the lower and upper bounds of this axis rangebreak.","Can be used with `pattern`."].join(" ")},pattern:{valType:"enumerated",values:[uL,lL,""],editType:"calc",description:["Determines a pattern on the time line that generates breaks.","If *"+uL+"* - days of the week in English e.g. 'Sunday' or `sun`","(matching is case-insensitive and considers only the first three characters),","as well as Sunday-based integers between 0 and 6.","If *"+lL+"* - hour (24-hour clock) as decimal numbers between 0 and 24.","for more info.","Examples:","- { pattern: '"+uL+"', bounds: [6, 1] }"," or simply { bounds: ['sat', 'mon'] }"," breaks from Saturday to Monday (i.e. skips the weekends).","- { pattern: '"+lL+"', bounds: [17, 8] }"," breaks from 5pm to 8am (i.e. skips non-work hours)."].join(" ")},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"},description:["Sets the coordinate values corresponding to the rangebreaks.","An alternative to `bounds`.","Use `dvalue` to set the size of the values along the axis."].join(" ")},dvalue:{valType:"number",editType:"calc",min:0,dflt:fWe,description:["Sets the size of each `values` item.","The default is one day in milliseconds."].join(" ")},editType:"calc"}),tickmode:cWe,nticks:PZ(),tick0:IZ,dtick:qZ,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks",description:["Sets the spacing between tick labels as compared to the spacing between ticks.","A value of 1 (default) means each tick gets a label.","A value of 2 means shows every 2nd label.","A larger value n means only every nth tick is labeled.","`tick0` determines which labels are shown.","Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*."].join(" ")},tickvals:FZ,ticktext:{valType:"data_array",editType:"ticks",description:["Sets the text displayed at the ticks position via `tickvals`.","Only has an effect if `tickmode` is set to *array*.","Used with `tickvals`."].join(" ")},ticks:zZ,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks",description:["Determines where ticks and grid lines are drawn with respect to their","corresponding tick labels.","Only has an effect for axes of `type` *category* or *multicategory*.","When set to *boundaries*, ticks and grid lines are drawn half a category","to the left/bottom of labels."].join(" ")},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks",description:["Determines where tick labels are drawn with respect to their","corresponding ticks and grid lines.","Only has an effect for axes of `type` *date*","When set to *period*, tick labels are drawn in the middle of the period","between ticks."].join(" ")},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc",description:["Determines where tick labels are drawn with respect to the axis","Please note that","top or bottom has no effect on x axes or when `ticklabelmode` is set to *period*.","Similarly","left or right has no effect on y axes or when `ticklabelmode` is set to *period*.","Has no effect on *multicategory* axes or when `tickson` is set to *boundaries*.","When used on axes linked by `matches` or `scaleanchor`,","no extra padding for inside labels would be added by autorange,","so that the scales could match."].join(" ")},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc",description:["Determines how we handle tick labels that would overflow either the graph div or the domain of the axis.","The default value for inside tick labels is *hide past domain*.","Otherwise on *category* and *multicategory* axes the default is *allow*.","In other cases the default is *hide past div*."].join(" ")},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks",description:["Shifts the tick labels by the specified number of pixels in parallel to the axis.","Positive values move the labels in the positive direction of the axis."].join(" ")},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks",description:["Sets the standoff distance (in px) between the axis tick labels and their default position.","A positive `ticklabelstandoff` moves the labels farther away from the plot area","if `ticklabelposition` is *outside*, and deeper into the plot area if","`ticklabelposition` is *inside*. A negative `ticklabelstandoff` works in the opposite","direction, moving outside ticks towards the plot area and inside ticks towards","the outside. If the negative value is large enough, inside ticks can even end up","outside and vice versa."].join(" ")},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc",description:["Only for axes with `type` *date* or *linear*.","Instead of drawing the major tick label, draw the label for the minor tick","that is n positions away from the major tick. E.g. to always draw the label for the","minor tick before each major tick, choose `ticklabelindex` -1. This is useful for date","axes with `ticklabelmode` *period* if you want to label the period that ends with each","major tick instead of the period that begins there."].join(" ")},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle",description:["Determines if the axis lines or/and ticks are mirrored to","the opposite side of the plotting area.","If *true*, the axis lines are mirrored.","If *ticks*, the axis lines and ticks are mirrored.","If *false*, mirroring is disable.","If *all*, axis lines are mirrored on all shared-axes subplots.","If *allticks*, axis lines and ticks are mirrored","on all shared-axes subplots."].join(" ")},ticklen:NZ(),tickwidth:OZ(),tickcolor:BZ,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks",description:"Determines whether or not the tick labels are drawn."},labelalias:{valType:"any",dflt:!1,editType:"ticks",description:["Replacement text for specific tick or hover labels.","For example using {US: 'USA', CA: 'Canada'} changes US to USA","and CA to Canada. The labels we would have shown must match","the keys exactly, after adding any tickprefix or ticksuffix.","For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash.","That means you need to use \u22121 instead of -1.","labelalias can be used with any axis type, and both keys (if needed)","and values (if desired) can include html-like tags or MathJax."].join(" ")},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks",description:["Determines whether long tick labels automatically grow the figure","margins."].join(" ")},showspikes:{valType:"boolean",dflt:!1,editType:"modebar",description:["Determines whether or not spikes (aka droplines) are drawn for this axis.","Note: This only takes affect when hovermode = closest"].join(" ")},spikecolor:{valType:"color",dflt:null,editType:"none",description:"Sets the spike color. If undefined, will use the series color"},spikethickness:{valType:"number",dflt:3,editType:"none",description:"Sets the width (in px) of the zero line."},spikedash:fL({},YZ,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none",description:["Determines the drawing mode for the spike line","If *toaxis*, the line is drawn from the data point to the axis the ","series is plotted on.","If *across*, the line is drawn across the entire plot area, and","supercedes *toaxis*.","If *marker*, then a marker dot is drawn on the axis the series is","plotted on"].join(" ")},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none",description:"Determines whether spikelines are stuck to the cursor or to the closest datapoints."},tickfont:sL({editType:"ticks",description:"Sets the tick font."}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks",description:["Sets the angle of the tick labels with respect to the horizontal.","For example, a `tickangle` of -90 draws the tick labels","vertically."].join(" ")},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks",description:["When `tickangle` is set to *auto*, it will be set to the first","angle in this array that is large enough to prevent label","overlap."].join(" ")},tickprefix:{valType:"string",dflt:"",editType:"ticks",description:"Sets a tick label prefix."},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks",description:["If *all*, all tick labels are displayed with a prefix.","If *first*, only the first tick is displayed with a prefix.","If *last*, only the last tick is displayed with a suffix.","If *none*, tick prefixes are hidden."].join(" ")},ticksuffix:{valType:"string",dflt:"",editType:"ticks",description:"Sets a tick label suffix."},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks",description:"Same as `showtickprefix` but for tick suffixes."},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks",description:["If *all*, all exponents are shown besides their significands.","If *first*, only the exponent of the first tick is shown.","If *last*, only the exponent of the last tick is shown.","If *none*, no exponents appear."].join(" ")},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks",description:["Determines a formatting rule for the tick exponents.","For example, consider the number 1,000,000,000.","If *none*, it appears as 1,000,000,000.","If *e*, 1e+9.","If *E*, 1E+9.","If *power*, 1x10^9 (with 9 in a super script).","If *SI*, 1G.","If *B*, 1B."].join(" ")},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks",description:["Hide SI prefix for 10^n if |n| is below this number.","This only has an effect when `tickformat` is *SI* or *B*."].join(" ")},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks",description:['If "true", even 4-digit integers are separated'].join(" ")},tickformat:{valType:"string",dflt:"",editType:"ticks",description:RZ("tick label")},tickformatstops:DZ("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks",description:["Determines whether or not this stop is used.","If `false`, this stop is ignored even within its `dtickrange`."].join(" ")},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks",description:["range [*min*, *max*], where *min*, *max* - dtick values","which describe some zoom level, it is possible to omit *min*","or *max* value by passing *null*"].join(" ")},value:{valType:"string",dflt:"",editType:"ticks",description:["string - dtickformat for described zoom level, the same as *tickformat*"].join(" ")},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:RZ("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle",description:["Determines whether or not a line bounding this axis is drawn."].join(" ")},linecolor:{valType:"color",dflt:z1.defaultLine,editType:"layoutstyle",description:"Sets the axis line color."},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle",description:"Sets the width (in px) of the axis line."},showgrid:VZ,gridcolor:UZ,gridwidth:HZ(),griddash:jZ,zeroline:{valType:"boolean",editType:"ticks",description:["Determines whether or not a line is drawn at along the 0 value","of this axis.","If *true*, the zero line is drawn on top of the grid lines."].join(" ")},zerolinecolor:{valType:"color",dflt:z1.defaultLine,editType:"ticks",description:"Sets the line color of the zero line."},zerolinewidth:{valType:"number",dflt:1,editType:"ticks",description:"Sets the width (in px) of the zero line."},showdividers:{valType:"boolean",dflt:!0,editType:"ticks",description:["Determines whether or not a dividers are drawn","between the category levels of this axis.","Only has an effect on *multicategory* axes."].join(" ")},dividercolor:{valType:"color",dflt:z1.defaultLine,editType:"ticks",description:["Sets the color of the dividers","Only has an effect on *multicategory* axes."].join(" ")},dividerwidth:{valType:"number",dflt:1,editType:"ticks",description:["Sets the width (in px) of the dividers","Only has an effect on *multicategory* axes."].join(" ")},anchor:{valType:"enumerated",values:["free",Wh.idRegex.x.toString(),Wh.idRegex.y.toString()],editType:"plot",description:["If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to","the corresponding opposite-letter axis.","If set to *free*, this axis' position is determined by `position`."].join(" ")},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot",description:["Determines whether a x (y) axis is positioned","at the *bottom* (*left*) or *top* (*right*)","of the plotting area."].join(" ")},overlaying:{valType:"enumerated",values:["free",Wh.idRegex.x.toString(),Wh.idRegex.y.toString()],editType:"plot",description:["If set a same-letter axis id, this axis is overlaid on top of","the corresponding same-letter axis, with traces and axes visible for both","axes.","If *false*, this axis does not overlay any same-letter axes.","In this case, for axes with overlapping domains only the highest-numbered","axis will be visible."].join(" ")},minor:{tickmode:tA,nticks:PZ("minor"),tick0:IZ,dtick:qZ,tickvals:FZ,ticks:zZ,ticklen:NZ("minor"),tickwidth:OZ("minor"),tickcolor:BZ,gridcolor:UZ,gridwidth:HZ("minor"),griddash:jZ,showgrid:VZ,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot",description:["Sets the layer on which this axis is displayed.","If *above traces*, this axis is displayed above all the subplot's traces","If *below traces*, this axis is displayed below all the subplot's traces,","but above the grid lines.","Useful when used together with scatter-like traces with `cliponaxis`","set to *false* to show markers and/or text nodes above this axis."].join(" ")},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot",description:["Sets the domain of this axis (in plot fraction)."].join(" ")},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot",description:["Sets the position of this axis in the plotting space","(in normalized coordinates).","Only has an effect if `anchor` is set to *free*."].join(" ")},autoshift:{valType:"boolean",dflt:!1,editType:"plot",description:["Automatically reposition the axis to avoid","overlap with other axes with the same `overlaying` value.","This repositioning will account for any `shift` amount applied to other","axes on the same side with `autoshift` is set to true.","Only has an effect if `anchor` is set to *free*."].join(" ")},shift:{valType:"number",editType:"plot",description:["Moves the axis a given number of pixels from where it would have been otherwise.","Accepts both positive and negative values, which will shift the axis either right","or left, respectively.","If `autoshift` is set to true, then this defaults to a padding of -3 if `side` is set to *left*.","and defaults to +3 if `side` is set to *right*. Defaults to 0 if `autoshift` is set to false.","Only has an effect if `anchor` is set to *free*."].join(" ")},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc",description:["Specifies the ordering logic for the case of categorical variables.","By default, plotly uses *trace*, which specifies the order that is present in the data supplied.","Set `categoryorder` to *category ascending* or *category descending* if order should be determined by","the alphanumerical order of the category names.","Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category","is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to","the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.","Set `categoryorder` to *total ascending* or *total descending* if order should be determined by the","numerical order of the values.","Similarly, the order can be determined by the min, max, sum, mean, geometric mean or median of all the values."].join(" ")},categoryarray:{valType:"data_array",editType:"calc",description:["Sets the order in which categories on this axis appear.","Only has an effect if `categoryorder` is set to *array*.","Used with `categoryorder`."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis `range`,","`autorange`, and `title` if in `editable: true` configuration.","Defaults to `layout.uirevision`."].join(" ")},editType:"calc",_deprecated:{autotick:{valType:"boolean",editType:"ticks",description:["Obsolete.","Set `tickmode` to *auto* for old `autotick` *true* behavior.","Set `tickmode` to *linear* for `autotick` *false*."].join(" ")},title:{valType:"string",editType:"ticks",description:["Value of `title` is no longer a simple *string* but a set of sub-attributes.","To set the axis' title, please use `title.text` now."].join(" ")},titlefont:sL({editType:"ticks",description:["Former `titlefont` is now the sub-attribute `font` of `title`.","To customize title font properties, please use `title.font` now."].join(" ")})}}});var rA=J((p8t,XZ)=>{"use strict";var wa=hl(),cL=xa(),WZ=cn().extendFlat,hWe=La().overrideAll;XZ.exports=hWe({orientation:{valType:"enumerated",values:["h","v"],dflt:"v",description:"Sets the orientation of the colorbar."},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",description:["Determines whether this color bar's thickness","(i.e. the measure in the constant color direction)","is set in units of plot *fraction* or in *pixels*.","Use `thickness` to set the value."].join(" ")},thickness:{valType:"number",min:0,dflt:30,description:["Sets the thickness of the color bar","This measure excludes the size of the padding, ticks and labels."].join(" ")},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction",description:["Determines whether this color bar's length","(i.e. the measure in the color variation direction)","is set in units of plot *fraction* or in *pixels.","Use `len` to set the value."].join(" ")},len:{valType:"number",min:0,dflt:1,description:["Sets the length of the color bar","This measure excludes the padding of both ends.","That is, the color bar length is this length minus the","padding on both ends."].join(" ")},x:{valType:"number",description:["Sets the x position with respect to `xref` of the color bar (in plot fraction).","When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and","0.5 when `orientation` is *h*.","When `xref` is *container*, defaults to *1* when `orientation` is *v* and","0.5 when `orientation` is *h*.","Must be between *0* and *1* if `xref` is *container*","and between *-2* and *3* if `xref` is *paper*."].join(" ")},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `x` refers to.","*container* spans the entire `width` of the plot.","*paper* refers to the width of the plotting area only."].join(" ")},xanchor:{valType:"enumerated",values:["left","center","right"],description:["Sets this color bar's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the color bar.","Defaults to *left* when `orientation` is *v* and","*center* when `orientation` is *h*."].join(" ")},xpad:{valType:"number",min:0,dflt:10,description:"Sets the amount of padding (in px) along the x direction."},y:{valType:"number",description:["Sets the y position with respect to `yref` of the color bar (in plot fraction).","When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and","1.02 when `orientation` is *h*.","When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and","1 when `orientation` is *h*.","Must be between *0* and *1* if `yref` is *container*","and between *-2* and *3* if `yref` is *paper*."].join(" ")},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `y` refers to.","*container* spans the entire `height` of the plot.","*paper* refers to the height of the plotting area only."].join(" ")},yanchor:{valType:"enumerated",values:["top","middle","bottom"],description:["Sets this color bar's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the color bar.","Defaults to *middle* when `orientation` is *v* and","*bottom* when `orientation` is *h*."].join(" ")},ypad:{valType:"number",min:0,dflt:10,description:"Sets the amount of padding (in px) along the y direction."},outlinecolor:wa.linecolor,outlinewidth:wa.linewidth,bordercolor:wa.linecolor,borderwidth:{valType:"number",min:0,dflt:0,description:["Sets the width (in px) or the border enclosing this color bar."].join(" ")},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",description:"Sets the color of padded area."},tickmode:wa.minor.tickmode,nticks:wa.nticks,tick0:wa.tick0,dtick:wa.dtick,tickvals:wa.tickvals,ticktext:wa.ticktext,ticks:WZ({},wa.ticks,{dflt:""}),ticklabeloverflow:WZ({},wa.ticklabeloverflow,{description:["Determines how we handle tick labels that would overflow either the graph div or the domain of the axis.","The default value for inside tick labels is *hide past domain*.","In other cases the default is *hide past div*."].join(" ")}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",description:["Determines where tick labels are drawn relative to the ticks.","Left and right options are used when `orientation` is *h*,","top and bottom when `orientation` is *v*."].join(" ")},ticklen:wa.ticklen,tickwidth:wa.tickwidth,tickcolor:wa.tickcolor,ticklabelstep:wa.ticklabelstep,showticklabels:wa.showticklabels,labelalias:wa.labelalias,tickfont:cL({description:"Sets the color bar's tick label font"}),tickangle:wa.tickangle,tickformat:wa.tickformat,tickformatstops:wa.tickformatstops,tickprefix:wa.tickprefix,showtickprefix:wa.showtickprefix,ticksuffix:wa.ticksuffix,showticksuffix:wa.showticksuffix,separatethousands:wa.separatethousands,exponentformat:wa.exponentformat,minexponent:wa.minexponent,showexponent:wa.showexponent,title:{text:{valType:"string",description:["Sets the title of the color bar.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:cL({description:["Sets this color bar's title font.","Note that the title's font used to be set","by the now deprecated `titlefont` attribute."].join(" ")}),side:{valType:"enumerated",values:["right","top","bottom"],description:["Determines the location of color bar's title","with respect to the color bar.","Defaults to *top* when `orientation` if *v* and ","defaults to *right* when `orientation` if *h*.","Note that the title's location used to be set","by the now deprecated `titleside` attribute."].join(" ")}},_deprecated:{title:{valType:"string",description:["Deprecated in favor of color bar's `title.text`.","Note that value of color bar's `title` is no longer a simple","*string* but a set of sub-attributes."].join(" ")},titlefont:cL({description:"Deprecated in favor of color bar's `title.font`."}),titleside:{valType:"enumerated",values:["right","top","bottom"],dflt:"top",description:"Deprecated in favor of color bar's `title.side`."}}},"colorbars","from-root")});var Da=J((g8t,JZ)=>{"use strict";var vWe=rA(),dWe=_1().counter,pWe=Vb(),ZZ=Pp().scales,gWe=pWe(ZZ);function n2(e){return"`"+e+"`"}JZ.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:Boolean(t),a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?ZZ[r.colorscaleDflt]:null,l=r.editTypeOverride||"",u=t?t+".":"",f,c;"colorAttr"in r?(f=r.colorAttr,c=r.colorAttr):(f={z:"z",c:"color"}[n],c="in "+n2(u+f));var h=i?" Has an effect only if "+c+" is set to a numerical array.":"",d=n+"auto",v=n+"min",m=n+"max",b=n+"mid",g=n2(u+d),_=n2(u+v),T=n2(u+m),w=_+" and "+T,k={};k[v]=k[m]=void 0;var x={};x[d]=!1;var M={};return f==="color"&&(M.color={valType:"color",arrayOk:!0,editType:l||"style",description:["Sets the",t,"color.","It accepts either a specific color","or an array of numbers that are mapped to the colorscale","relative to the max and min values of the array or relative to",w,"if set."].join(" ")},r.anim&&(M.color.anim=!0)),M[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:k,description:["Determines whether or not the color domain is computed","with respect to the input data (here "+c+") or the bounds set in",w+h,"Defaults to `false` when",w,"are set by the user."].join(" ")},M[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x,description:["Sets the lower bound of the color domain."+h,"Value should have the same units as",c,"and if set,",T,"must be set as well."].join(" ")},M[m]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:x,description:["Sets the upper bound of the color domain."+h,"Value should have the same units as",c,"and if set,",_,"must be set as well."].join(" ")},M[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:k,description:["Sets the mid-point of the color domain by scaling",_,"and/or",T,"to be equidistant to this point."+h,"Value should have the same units as",c+".","Has no effect when",g,"is `false`."].join(" ")},M.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1},description:["Sets the colorscale."+h,"The colorscale must be an array containing","arrays mapping a normalized value to an","rgb, rgba, hex, hsl, hsv, or named color string.","At minimum, a mapping for the lowest (0) and highest (1)","values are required. For example,","`[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`.","To control the bounds of the colorscale in color space,","use",w+".","Alternatively, `colorscale` may be a palette name string","of the following list: "+gWe+"."].join(" ")},M.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0},description:["Determines whether the colorscale is a default palette (`autocolorscale: true`)","or the palette determined by",n2(u+"colorscale")+"."+h,"In case `colorscale` is unspecified or `autocolorscale` is true, the default","palette will be chosen according to whether numbers in the `color` array are","all positive, all negative or mixed."].join(" ")},M.reversescale={valType:"boolean",dflt:!1,editType:"plot",description:["Reverses the color mapping if true."+h,"If true,",_,"will correspond to the last color","in the array and",T,"will correspond to the first color."].join(" ")},a||(M.showscale={valType:"boolean",dflt:o,editType:"calc",description:["Determines whether or not a colorbar is displayed for this trace."+h].join(" ")},M.colorbar=vWe),r.noColorAxis||(M.coloraxis={valType:"subplotid",regex:dWe("coloraxis"),dflt:null,editType:"calc",description:["Sets a reference to a shared color axis.","References to these shared color axes are *coloraxis*, *coloraxis2*, *coloraxis3*, etc.","Settings for these shared color axes are set in the layout, under","`layout.coloraxis`, `layout.coloraxis2`, etc.","Note that multiple color scales can be linked to the same color axis."].join(" ")}),M}});var dL=J((m8t,$Z)=>{"use strict";var mWe=cn().extendFlat,yWe=Da(),hL=Pp().scales,vL="Note that `autocolorscale` must be true for this attribute to work.";$Z.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:hL.Reds,editType:"calc",description:["Sets the default sequential colorscale for positive values.",vL].join(" ")},sequentialminus:{valType:"colorscale",dflt:hL.Blues,editType:"calc",description:["Sets the default sequential colorscale for negative values.",vL].join(" ")},diverging:{valType:"colorscale",dflt:hL.RdBu,editType:"calc",description:["Sets the default diverging colorscale.",vL].join(" ")}},coloraxis:mWe({_isSubplotObj:!0,editType:"calc",description:[""].join(" ")},yWe("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var pL=J((y8t,KZ)=>{"use strict";var xWe=gt();KZ.exports=function(t){return xWe.isPlainObject(t.colorbar)}});var yL=J(mL=>{"use strict";var gL=dn(),QZ=gt(),eJ=oi(),bWe=eJ.ONEDAY,wWe=eJ.ONEWEEK;mL.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?bWe:1;if(!e)return a;if(gL(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.substr(1);return s=gL(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};mL.tick0=function(e,t,r,n){if(t==="date")return QZ.cleanDate(e,QZ.dateTick0(r,n%wWe===0?1:0));if(!(n==="D1"||n==="D2"))return gL(e)?Number(e):0}});var Wp=J((b8t,rJ)=>{"use strict";var tJ=yL(),_We=gt().isArrayOrTypedArray,TWe=fl().isTypedArraySpec,AWe=fl().decodeTypedArraySpec;rJ.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,l=o?r.minor:r,u=o?"minor.":"";function f(_){var T=s[_];return TWe(T)&&(T=AWe(T)),T!==void 0?T:(l._template||{})[_]}var c=f("tick0"),h=f("dtick"),d=f("tickvals"),v=_We(d)?"array":h?"linear":"auto",m=n(u+"tickmode",v);if(m==="auto"||m==="sync")n(u+"nticks");else if(m==="linear"){var b=l.dtick=tJ.dtick(h,i);l.tick0=tJ.tick0(c,i,r.calendar,b)}else if(i!=="multicategory"){var g=n(u+"tickvals");g===void 0?l.tickmode="auto":o||n("ticktext")}}});var N1=J((w8t,iJ)=>{"use strict";var xL=gt(),nJ=hl();iJ.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?nJ.minor:nJ,u=a?"minor.":"",f=xL.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),c=xL.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=xL.coerce2(o,s,l,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(u+"ticks",!a&&i.outerTicks||f||c||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var bL=J((_8t,aJ)=>{"use strict";aJ.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Bu=J((T8t,oJ)=>{"use strict";var nA=gt(),MWe=ki();oJ.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=nA.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=MWe.arrayTemplater(r,i,a),f,c;for(f=0;f{"use strict";var wL=gt(),kWe=qr().contrast,sJ=hl(),SWe=bL(),CWe=Bu();lJ.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");wL.isPlainObject(o)||delete r.labelalias;var s=SWe(t),l=n("showticklabels");if(l){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var u=a.font||{},f=r.color,c=r.ticklabelposition||"",h=c.indexOf("inside")!==-1?kWe(a.bgColor):f&&f!==sJ.color.dflt?f:u.color;if(wL.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var v=n("tickformat");CWe(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:EWe}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}}};function EWe(e,t){function r(i,a){return wL.coerce(e,t,sJ.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var Zp=J((M8t,uJ)=>{"use strict";var LWe=bL();uJ.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=LWe(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var _L=J((k8t,fJ)=>{"use strict";var u0=gt(),DWe=ki(),RWe=Wp(),PWe=N1(),IWe=Xp(),qWe=Zp(),FWe=rA();fJ.exports=function(t,r,n){var i=DWe.newContainer(r,"colorbar"),a=t.colorbar||{};function o(y,E){return u0.coerce(a,i,FWe,y,E)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,f=o("orientation"),c=f==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(c?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:c?u:l);var v=o("yref"),m=o("xref"),b=v==="paper",g=m==="paper",_,T,w,k="left";c?(w="middle",k=g?"left":"right",_=g?1.02:1,T=.5):(w=b?"bottom":"top",k="center",_=.5,T=b?1.02:1),u0.coerce(a,i,{x:{valType:"number",min:g?-2:0,max:g?3:1,dflt:_}},"x"),u0.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:T}},"y"),o("xanchor",k),o("xpad"),o("yanchor",w),o("ypad"),u0.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var x=u0.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:c?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",x.indexOf("inside")!==-1?"hide past domain":"hide past div"),RWe(a,i,o,"linear");var M=n.font,A={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};x.indexOf("inside")!==-1&&(A.bgColor="black"),qWe(a,i,o,"linear",A),IWe(a,i,o,"linear",A),PWe(a,i,o,"linear",A),o("title.text",n._dfltTitle.colorbar);var p=i.showticklabels?i.tickfont:M,S=u0.extendFlat({},M,{family:p.family,size:u0.bigFont(p.size)});u0.coerceFont(o,"title.font",S),o("title.side",c?"top":"right")}});var vl=J((S8t,vJ)=>{"use strict";var cJ=dn(),AL=gt(),zWe=pL(),NWe=_L(),hJ=Pp().isValid,OWe=zr().traceIs;function TL(e,t){var r=t.slice(0,t.length-1);return t?AL.nestedProperty(e,r).get()||{}:e}vJ.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=TL(t,o),f=TL(r,o),c=TL(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(l){var d=n._colorAxes||{},v=i(o+"coloraxis");if(v){var m=OWe(r,"contour")&&AL.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==m&&(b[0]=!1,AL.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[m,r,[h]];return}}var g=u[s+"min"],_=u[s+"max"],T=cJ(g)&&cJ(_)&&g<_,w=i(o+s+"auto",!T);w?i(o+s+"mid"):(i(o+s+"min"),i(o+s+"max"));var k=u.colorscale,x=c.colorscale,M;if(k!==void 0&&(M=!hJ(k)),x!==void 0&&(M=!hJ(x)),i(o+"autocolorscale",M),i(o+"colorscale"),i(o+"reversescale"),o!=="marker.line."){var A;o&&l&&(A=zWe(u));var p=i(o+"showscale",A);p&&(o&&c&&(f._template=c),NWe(u,f,n))}}});var mJ=J((C8t,gJ)=>{"use strict";var dJ=gt(),BWe=ki(),pJ=dL(),UWe=vl();gJ.exports=function(t,r){function n(c,h){return dJ.coerce(t,r,pJ,c,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(c,h){return dJ.coerce(a,o,pJ.coloraxis,c,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=BWe.newContainer(r,l,"coloraxis"),o._name=l,UWe(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var f=0;f{"use strict";var HWe=gt(),jWe=nu().hasColorscale,VWe=nu().extractOpts;yJ.exports=function(t,r){function n(f,c){var h=f["_"+c];h!==void 0&&(f[c]=h)}function i(f,c){var h=c.container?HWe.nestedProperty(f,c.container).get():f;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=VWe(h),v=d.auto;(v||d.min===void 0)&&n(h,c.min),(v||d.max===void 0)&&n(h,c.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a{"use strict";var bJ=dn(),ML=gt(),YWe=nu().extractOpts;wJ.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?ML.nestedProperty(r,o).get():r,l=YWe(s),u=l.auto!==!1,f=l.min,c=l.max,h=l.mid,d=function(){return ML.aggNums(Math.min,null,a)},v=function(){return ML.aggNums(Math.max,null,a)};if(f===void 0?f=d():u&&(s._colorAx&&bJ(f)?f=Math.min(f,d()):f=d()),c===void 0?c=v():u&&(s._colorAx&&bJ(c)?c=Math.max(c,v()):c=v()),u&&h!==void 0&&(c-h>h-f?f=h-(c-h):c-h=0?m=i.colorscale.sequential:m=i.colorscale.sequentialminus,l._sync("colorscale",m)}}});var Qa=J((D8t,_J)=>{"use strict";var iA=Pp(),O1=nu();_J.exports={moduleType:"component",name:"colorscale",attributes:Da(),layoutAttributes:dL(),supplyLayoutDefaults:mJ(),handleDefaults:vl(),crossTraceDefaults:xJ(),calc:Uu(),scales:iA.scales,defaultScale:iA.defaultScale,getScale:iA.get,isValidScale:iA.isValid,hasColorscale:O1.hasColorscale,extractOpts:O1.extractOpts,extractScale:O1.extractScale,flipScale:O1.flipScale,makeColorScaleFunc:O1.makeColorScaleFunc,makeColorScaleFuncFromTrace:O1.makeColorScaleFuncFromTrace}});var fs=J((R8t,AJ)=>{"use strict";var TJ=gt(),GWe=fl().isTypedArraySpec;AJ.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return TJ.isPlainObject(t)&&(TJ.isArrayOrTypedArray(t.size)||GWe(t.size))}}});var kL=J((P8t,MJ)=>{"use strict";var WWe=dn();MJ.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var l=o(s/r);return WWe(l)&&l>0?Math.max(l,a):0}}});var Qf=J(dl=>{"use strict";var kJ=gt();dl.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};dl.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i=0&&r.index{EJ.exports=KWe;var SL={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},$We=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function KWe(e){var t=[];return e.replace($We,function(r,n,i){var a=n.toLowerCase();for(i=eXe(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==SL[a])return i.unshift(n),t.push(i);if(i.length{"use strict";var tXe=CL(),mr=Nr().round,Cn="M0,0Z",LJ=Math.sqrt(2),f0=Math.sqrt(3),EL=Math.PI,LL=Math.cos,DL=Math.sin;qJ.exports={circle:{n:0,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?Ln(t,r,i):i}},square:{n:1,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.3,2);return Ln(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.4,2),i=mr(e*1.2,2);return Ln(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.8/LJ,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return Ln(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2/f0,2),i=mr(e/2,2),a=mr(e,2);return Ln(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2/f0,2),i=mr(e/2,2),a=mr(e,2);return Ln(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2/f0,2),i=mr(e/2,2),a=mr(e,2);return Ln(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2/f0,2),i=mr(e/2,2),a=mr(e,2);return Ln(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.6,2),i=mr(e*1.2,2);return Ln(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.6,2),i=mr(e*1.2,2);return Ln(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.6,2),i=mr(e*1.2,2);return Ln(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.6,2),i=mr(e*1.2,2);return Ln(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.951,2),i=mr(e*.588,2),a=mr(-e,2),o=mr(e*-.309,2),s=mr(e*.809,2);return Ln(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e/2,2),a=mr(e*f0/2,2);return Ln(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e/2,2),a=mr(e*f0/2,2);return Ln(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.924,2),i=mr(e*.383,2);return Ln(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(En(t))return Cn;var n=e*1.4,i=mr(n*.225,2),a=mr(n*.951,2),o=mr(n*.363,2),s=mr(n*.588,2),l=mr(-n,2),u=mr(n*-.309,2),f=mr(n*.118,2),c=mr(n*.809,2),h=mr(n*.382,2);return Ln(t,r,"M"+i+","+u+"H"+a+"L"+o+","+f+"L"+s+","+c+"L0,"+h+"L-"+s+","+c+"L-"+o+","+f+"L-"+a+","+u+"H-"+i+"L0,"+l+"Z")}},hexagram:{n:18,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.66,2),i=mr(e*.38,2),a=mr(e*.76,2);return Ln(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*f0*.8,2),i=mr(e*.8,2),a=mr(e*1.6,2),o=mr(e*4,2),s="A "+o+","+o+" 0 0 1 ";return Ln(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*f0*.8,2),i=mr(e*.8,2),a=mr(e*1.6,2),o=mr(e*4,2),s="A "+o+","+o+" 0 0 1 ";return Ln(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.1,2),i=mr(e*2,2),a="A "+i+","+i+" 0 0 1 ";return Ln(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.4,2),i=mr(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return Ln(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*.7,2),i=mr(e*1.4,2);return Ln(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.4,2),i=mr(e*.7,2);return Ln(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e/LJ,2);return Ln(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.3,2);return Ln(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.3,2),i=mr(e*.65,2);return Ln(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.4,2);return Ln(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.2,2),i=mr(e*.85,2);return Ln(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(En(t))return Cn;var n=mr(e/2,2),i=mr(e,2);return Ln(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.2,2),i=mr(e*1.6,2),a=mr(e*.8,2);return Ln(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.2,2),i=mr(e*1.6,2),a=mr(e*.8,2);return Ln(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.2,2),i=mr(e*1.6,2),a=mr(e*.8,2);return Ln(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.2,2),i=mr(e*1.6,2),a=mr(e*.8,2);return Ln(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.4,2);return Ln(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*1.4,2);return Ln(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2);return Ln(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e*2,2);return Ln(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e*2,2);return Ln(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2,2),i=mr(e,2);return Ln(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2,2),i=mr(e,2);return Ln(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e*2,2);return Ln(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(En(t))return Cn;var n=mr(e,2),i=mr(e*2,2);return Ln(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2,2),i=mr(e,2);return Ln(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(En(t))return Cn;var n=mr(e*2,2),i=mr(e,2);return Ln(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(En(t))return Cn;var n=EL/2.5,i=2*e*LL(n),a=2*e*DL(n);return Ln(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(En(t))return Cn;var n=EL/4,i=2*e*LL(n),a=2*e*DL(n);return Ln(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function En(e){return e===null}var DJ,RJ,PJ,IJ;function Ln(e,t,r){if((!e||e%360===0)&&!t)return r;if(PJ===e&&IJ===t&&DJ===r)return RJ;PJ=e,IJ=t,DJ=r;function n(b,g){var _=LL(b),T=DL(b),w=g[0],k=g[1]+(t||0);return[w*_-k*T,w*T+k*_]}for(var i=e/180*EL,a=0,o=0,s=tXe(r),l="",u=0;u{"use strict";var cs=Nr(),Yi=gt(),rXe=Yi.numberFormat,Qp=dn(),zL=ls(),oA=zr(),Ws=qr(),nXe=Qa(),a2=Yi.strTranslate,sA=ca(),iXe=Gh(),aXe=Vo(),oXe=aXe.LINE_SPACING,GJ=w1().DESELECTDIM,sXe=fs(),lXe=kL(),uXe=Qf().appendArrayPointValue,wr=r$.exports={};wr.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,f=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Ws.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),f&&e.style("text-transform",RL(cXe(f))),l&&e.style("text-shadow",l==="auto"?sA.makeTextShadow(Ws.contrast(a)):RL(l)),u&&e.style("text-decoration-line",RL(hXe(u)))};function RL(e){return e==="none"?void 0:e}var fXe={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function cXe(e){return fXe[e]}function hXe(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}wr.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};wr.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};wr.setRect=function(e,t,r,n,i){e.call(wr.setPosition,t,r).call(wr.setSize,n,i)};wr.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Qp(i)&&Qp(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",a2(i,a));else return!1;return!0};wr.translatePoints=function(e,t,r){e.each(function(n){var i=cs.select(this);wr.translatePoint(n,i,t,r)})};wr.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};wr.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,l=oA.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){wr.hideOutsideRangePoint(u,cs.select(this),r,n,o,s)})})}};wr.crispRound=function(e,t,r){return!t||!Qp(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};wr.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Ws.stroke(t,n||a.color),wr.dashLine(t,s,o)};wr.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";cs.select(this).call(Ws.stroke,r||a.color).call(wr.dashLine,s,o)})};wr.dashLine=function(e,t,r){r=+r||0,t=wr.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};wr.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function WJ(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=i&&wr.getPatternAttr(i.shape,0,"");if(o){var s=wr.getPatternAttr(i.bgcolor,0,null),l=wr.getPatternAttr(i.fgcolor,0,null),u=i.fgopacity,f=wr.getPatternAttr(i.size,0,8),c=wr.getPatternAttr(i.solidity,0,.3),h=t.uid;wr.pattern(e,"point",r,h,o,f,c,void 0,i.fillmode,s,l,u)}else if(a&&a.type!=="none"){var d=a.type,v="scatterfill-"+t.uid;if(n&&(v="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var m,b;d==="horizontal"?(m={x:a.start,y:0},b={x:a.stop,y:0}):d==="vertical"&&(m={x:0,y:a.start},b={x:0,y:a.stop}),m.x=t._xA.c2p(m.x===void 0?t._extremes.x.min[0].val:m.x,!0),m.y=t._yA.c2p(m.y===void 0?t._extremes.y.min[0].val:m.y,!0),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.max[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.max[0].val:b.y,!0),e.call(JJ,r,v,"linear",a.colorscale,"fill",m,b,!0,!1)}else d==="horizontal"&&(d=d+"reversed"),e.call(wr.gradient,r,v,d,a.colorscale,"fill")}else t.fillcolor&&e.call(Ws.fill,t.fillcolor)}wr.singleFillStyle=function(e,t){var r=cs.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};WJ(e,i,t,!1)};wr.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=cs.select(this);n[0].trace&&WJ(i,n[0].trace,t,r)})};var zJ=FJ();wr.symbolNames=[];wr.symbolFuncs=[];wr.symbolBackOffs=[];wr.symbolNeedLines={};wr.symbolNoDot={};wr.symbolNoFill={};wr.symbolList=[];Object.keys(zJ).forEach(function(e){var t=zJ[e],r=t.n;wr.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),wr.symbolNames[r]=e,wr.symbolFuncs[r]=t.f,wr.symbolBackOffs[r]=t.backoff||0,t.needLine&&(wr.symbolNeedLines[r]=!0),t.noDot?wr.symbolNoDot[r]=!0:wr.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(wr.symbolNoFill[r]=!0)});var vXe=wr.symbolNames.length,dXe="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";wr.symbolNumber=function(e){if(Qp(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=wr.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=vXe||e>=400?0:Math.floor(Math.max(e,0))};function XJ(e,t,r,n){var i=e%100;return wr.symbolFuncs[i](t,r,n)+(e>=200?dXe:"")}var NJ=rXe("~f"),ZJ={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};wr.gradient=function(e,t,r,n,i,a){var o=ZJ[n];return JJ(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function JJ(e,t,r,n,i,a,o,s,l,u){var f=i.length,c;n==="linear"?c={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:l?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(c={node:"radialGradient",reversed:u});for(var h=new Array(f),d=0;d=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var l;e.ms==="various"||o.size==="various"?l=3:l=n.ms2mrc(e.ms),e.mrc=l,n.selectedSizeFn&&(l=e.mrc=n.selectedSizeFn(e));var u=wr.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var f=BL(e,r),c=OL(e,r);t.attr("d",XJ(u,l,f,c))}var h=!1,d,v,m;if(e.so)m=s.outlierwidth,v=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;m=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?v=e.mlcc=n.lineScale(e.mlc):Yi.isArrayOrTypedArray(s.color)?v=Ws.defaultLine:v=s.color,Yi.isArrayOrTypedArray(o.color)&&(d=Ws.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Ws.stroke,d).style({"stroke-width":(m||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:m)+"px");var g=o.gradient,_=e.mgt;_?h=!0:_=g&&g.type,Yi.isArrayOrTypedArray(_)&&(_=_[0],ZJ[_]||(_=0));var T=o.pattern,w=T&&wr.getPatternAttr(T.shape,e.i,"");if(_&&_!=="none"){var k=e.mgc;k?h=!0:k=g.color;var x=r.uid;h&&(x+="-"+e.i),wr.gradient(t,i,x,_,[[0,k],[1,d]],"fill")}else if(w){var M=!1,A=T.fgcolor;!A&&a&&a.color&&(A=a.color,M=!0);var p=wr.getPatternAttr(A,e.i,a&&a.color||null),S=wr.getPatternAttr(T.bgcolor,e.i,null),y=T.fgopacity,E=wr.getPatternAttr(T.size,e.i,8),C=wr.getPatternAttr(T.solidity,e.i,.3);M=M||e.mcc||Yi.isArrayOrTypedArray(T.shape)||Yi.isArrayOrTypedArray(T.bgcolor)||Yi.isArrayOrTypedArray(T.fgcolor)||Yi.isArrayOrTypedArray(T.size)||Yi.isArrayOrTypedArray(T.solidity);var L=r.uid;M&&(L+="-"+e.i),wr.pattern(t,"point",i,L,w,E,C,e.mcc,T.fillmode,S,p,y)}else Yi.isArrayOrTypedArray(d)?Ws.fill(t,d[e.i]):Ws.fill(t,d);m&&Ws.stroke(t,v)}};wr.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=wr.tryColorscale(r,""),t.lineScale=wr.tryColorscale(r,"line"),oA.traceIs(e,"symbols")&&(t.ms2mrc=sXe.isBubble(e)?lXe(e):function(){return(r.size||6)/2}),e.selectedpoints&&Yi.extendFlat(t,wr.makeSelectedPointStyleFns(e)),t};wr.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,l=a.opacity,u=o.opacity,f=l!==void 0,c=u!==void 0;(Yi.isArrayOrTypedArray(s)||f||c)&&(t.selectedOpacityFn=function(w){var k=w.mo===void 0?i.opacity:w.mo;return w.selected?f?l:k:c?u:GJ*k});var h=i.color,d=a.color,v=o.color;(d||v)&&(t.selectedColorFn=function(w){var k=w.mcc||h;return w.selected?d||k:v||k});var m=i.size,b=a.size,g=o.size,_=b!==void 0,T=g!==void 0;return oA.traceIs(e,"symbols")&&(_||T)&&(t.selectedSizeFn=function(w){var k=w.mrc||m/2;return w.selected?_?b/2:k:T?g/2:k}),t};wr.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(f){var c=f.tc||s;return f.selected?l||c:u||(l?c:Ws.addOpacity(c,GJ))},t};wr.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=wr.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Ws.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",XJ(wr.symbolNumber(s),l,BL(o,t),OL(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=cs.select(this),s=0;s0?r:0}wr.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=wr.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=cs.select(this),u=a?Yi.extractOption(s,t,"txt","texttemplate"):Yi.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var f=t._module.formatLabels,c=f?f(s,t,o):{},h={};uXe(h,t,s.i);var d=t._meta||{};u=Yi.texttemplateString(u,c,o._d3locale,h,s,d)}var v=s.tp||t.textposition,m=KJ(s,t),b=n?n(s):s.tc||t.textfont.color;l.call(wr.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:m,color:b}).text(u).call(sA.convertToTspans,r).call($J,v,m,s.mrc)})}};wr.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=wr.makeSelectedTextStyleFns(t);e.each(function(n){var i=cs.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=KJ(n,t);Ws.fill(i,a);var l=oA.traceIs(t,"bar-like");$J(i,o,s,n.mrc2||n.mrc,l)})}};var OJ=.5;wr.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i=l||w>=f&&w<=l)&&(k<=c&&k>=u||k>=c&&k<=u)&&(e=[w,k])}return e}wr.applyBackoff=t$;wr.makeTester=function(){var e=Yi.ensureSingleById(cs.select("body"),"svg","js-plotly-tester",function(r){r.attr(iXe.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=Yi.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});wr.tester=e,wr.testref=t};wr.savedBBoxes={};var IL=0,mXe=1e4;wr.bBox=function(e,t,r){r||(r=BJ(e));var n;if(r){if(n=wr.savedBBoxes[r],n)return Yi.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=BJ(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=wr.bBox(i,!1,r);return a&&(l.left+=a,l.right+=a),o&&(l.top+=o,l.bottom+=o),l}if(r+="~"+a+"~"+o+"~"+s,n=wr.savedBBoxes[r],n)return Yi.extendFlat({},n)}}var u,f;t?u=e:(f=wr.tester.node(),u=e.cloneNode(!0),f.appendChild(u)),cs.select(u).attr("transform",null).call(sA.positionText,0,0);var c=u.getBoundingClientRect(),h=wr.testref.node().getBoundingClientRect();t||f.removeChild(u);var d={height:c.height,width:c.width,left:c.left-h.left,top:c.top-h.top,right:c.right-h.left,bottom:c.bottom-h.top};return IL>=mXe&&(wr.savedBBoxes={},IL=0),r&&(wr.savedBBoxes[r]=d),IL++,Yi.extendFlat({},d)};function BJ(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}wr.setClipUrl=function(e,t,r){e.attr("clip-path",NL(t,r))};function NL(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}wr.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};wr.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=a2(t,r),o=o.trim(),e[a]("transform",o),o};wr.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};wr.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var yXe=/\s*sc.*/;wr.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace(yXe,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var xXe=/translate\([^)]*\)\s*$/;wr.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=cs.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(xXe);t===1&&r===1?n=[]:n=[a2(o,s),"scale("+t+","+r+")",a2(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function OL(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}wr.getMarkerStandoff=OL;var i2=Math.atan2,Jp=Math.cos,U1=Math.sin;function UJ(e,t){var r=t[0],n=t[1];return[r*Jp(e)-n*U1(e),r*U1(e)+n*Jp(e)]}var HJ,jJ,VJ,YJ,qL,FL;function BL(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||Yi.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,l=t._yA;if(s&&l)n=s.c2p(e.x),i=l.c2p(e.y);else return 90}if(t._geo){var u=e.lonlat[0],f=e.lonlat[1],c=t._geo.project([u,f+1e-5]),h=t._geo.project([u+1e-5,f]),d=i2(h[1]-i,h[0]-n),v=i2(c[1]-i,c[0]-n),m;if(a==="north")m=r/180*Math.PI;else if(a==="previous"){var b=u/180*Math.PI,g=f/180*Math.PI,_=HJ/180*Math.PI,T=jJ/180*Math.PI,w=_-b,k=Jp(T)*U1(w),x=U1(T)*Jp(g)-Jp(T)*U1(g)*Jp(w);m=-i2(k,x)-Math.PI,HJ=u,jJ=f}var M=UJ(d,[Jp(m),0]),A=UJ(v,[U1(m),0]);r=i2(M[1]+A[1],M[0]+A[0])/Math.PI*180,a==="previous"&&!(FL===t.uid&&e.i===qL+1)&&(r=null)}if(a==="previous"&&!t._geo)if(FL===t.uid&&e.i===qL+1&&Qp(n)&&Qp(i)){var p=n-VJ,S=i-YJ,y=t.line&&t.line.shape||"",E=y.slice(y.length-1);E==="h"&&(S=0),E==="v"&&(p=0),r+=i2(S,p)/Math.PI*180+90}else r=null}return VJ=n,YJ=i,qL=e.i,FL=t.uid,r}wr.getMarkerAngle=BL});var tg=J((N8t,o$)=>{"use strict";var H1=Nr(),bXe=dn(),wXe=ea(),UL=zr(),eg=gt(),n$=eg.strTranslate,lA=ln(),uA=qr(),j1=ca(),i$=w1(),_Xe=Vo().OPPOSITE_SIDE,a$=/ [XY][0-9]* /,HL=1.6,jL=1.6;function TXe(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,l=r.avoid||{},u=r.attributes,f=r.transform,c=r.containerGroup,h=1,d=i.title,v=(d&&d.text?d.text:"").trim(),m=!1,b=d&&d.font?d.font:{},g=b.family,_=b.size,T=b.color,w=b.weight,k=b.style,x=b.variant,M=b.textcase,A=b.lineposition,p=b.shadow,S=r.subtitlePropName,y=!!S,E=r.subtitlePlaceholder,C=(i.title||{}).subtitle||{text:"",font:{}},L=C.text.trim(),R=!1,I=1,P=C.font,D=P.family,q=P.size,N=P.color,U=P.weight,G=P.style,ee=P.variant,Q=P.textcase,j=P.lineposition,O=P.shadow,Z;a==="title.text"?Z="titleText":a.indexOf("axis")!==-1?Z="axisTitleText":a.indexOf("colorbar"!==-1)&&(Z="colorbarTitleText");var K=e._context.edits[Z];function $(Re,ze){return Re===void 0||ze===void 0?!1:Re.replace(a$," % ")===ze.replace(a$," % ")}v===""?h=0:$(v,o)&&(K||(v=""),h=.2,m=!0),y&&(L===""?I=0:$(L,E)&&(K||(L=""),I=.2,R=!0)),r._meta?v=eg.templateString(v,r._meta):n._meta&&(v=eg.templateString(v,n._meta));var oe=v||L||K,te;c||(c=eg.ensureSingle(n._infolayer,"g","g-"+t),te=n._hColorbarMoveTitle);var V=c.selectAll("text."+t).data(oe?[0]:[]);V.enter().append("text"),V.text(v).attr("class",t),V.exit().remove();var ne=null,W=t+"-subtitle",fe=L||K;if(y&&fe&&(ne=c.selectAll("text."+W).data(fe?[0]:[]),ne.enter().append("text"),ne.text(L).attr("class",W),ne.exit().remove()),!oe)return c;function ge(Re,ze){eg.syncOrAsync([Ce,Ne],{title:Re,subtitle:ze})}function Ce(Re){var ze=Re.title,Be=Re.subtitle,tt;!f&&te&&(f={}),f?(tt="",f.rotate&&(tt+="rotate("+[f.rotate,u.x,u.y]+")"),(f.offset||te)&&(tt+=n$(0,(f.offset||0)-(te||0)))):tt=null,ze.attr("transform",tt);function rt(Fe){if(Fe){var ke=H1.select(Fe.node().parentNode).select("."+W);if(!ke.empty()){var Ue=Fe.node().getBBox();if(Ue.height){var Ge=Ue.y+Ue.height+HL*q;ke.attr("y",Ge)}}}}if(ze.style("opacity",h*uA.opacity(T)).call(lA.font,{color:uA.rgb(T),size:H1.round(_,2),family:g,weight:w,style:k,variant:x,textcase:M,shadow:p,lineposition:A}).attr(u).call(j1.convertToTspans,e,rt),Be){var ce=c.select("."+t+"-math-group"),Ee=ze.node().getBBox(),Ae=ce.node()?ce.node().getBBox():void 0,Pe=Ae?Ae.y+Ae.height+HL*q:Ee.y+Ee.height+jL*q,He=eg.extendFlat({},u,{y:Pe});Be.attr("transform",tt),Be.style("opacity",I*uA.opacity(N)).call(lA.font,{color:uA.rgb(N),size:H1.round(q,2),family:D,weight:U,style:G,variant:ee,textcase:Q,shadow:O,lineposition:j}).attr(He).call(j1.convertToTspans,e)}return wXe.previousPromises(e)}function Ne(Re){var ze=Re.title,Be=H1.select(ze.node().parentNode);if(l&&l.selection&&l.side&&v){Be.attr("transform",null);var tt=_Xe[l.side],rt=l.side==="left"||l.side==="top"?-1:1,ce=bXe(l.pad)?l.pad:2,Ee=lA.bBox(Be.node()),Ae={t:0,b:0,l:0,r:0},Pe=e._fullLayout._reservedMargin;for(var He in Pe)for(var Fe in Pe[He]){var ke=Pe[He][Fe];Ae[Fe]=Math.max(Ae[Fe],ke)}var Ue={left:Ae.l,top:Ae.t,right:n.width-Ae.r,bottom:n.height-Ae.b},Ge=l.maxShift||rt*(Ue[l.side]-Ee[l.side]),lt=0;if(Ge<0)lt=Ge;else{var it=l.offsetLeft||0,wt=l.offsetTop||0;Ee.left-=it,Ee.right-=it,Ee.top-=wt,Ee.bottom-=wt,l.selection.each(function(){var Tt=lA.bBox(this);eg.bBoxIntersect(Ee,Tt,ce)&&(lt=Math.max(lt,rt*(Tt[l.side]-Ee[tt])+ce))}),lt=Math.min(Ge,lt),i._titleScoot=Math.abs(lt)}if(lt>0||Ge<0){var _t={left:[-lt,0],right:[lt,0],top:[0,-lt],bottom:[0,lt]}[l.side];Be.attr("transform",n$(_t[0],_t[1]))}}}V.call(ge,ne);function pe(Re,ze){Re.text(ze).on("mouseover.opacity",function(){H1.select(this).transition().duration(i$.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){H1.select(this).transition().duration(i$.HIDE_PLACEHOLDER).style("opacity",0)})}if(K&&(v?V.on(".opacity",null):(pe(V,o),m=!0),V.call(j1.makeEditable,{gd:e}).on("edit",function(Re){s!==void 0?UL.call("_guiRestyle",e,a,Re,s):UL.call("_guiRelayout",e,a,Re)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ge)}).on("input",function(Re){this.text(Re||" ").call(j1.positionText,u.x,u.y)}),y)){if(y&&!v){var me=V.node().getBBox(),Ie=me.y+me.height+jL*q;ne.attr("y",Ie)}L?ne.on(".opacity",null):(pe(ne,E),R=!0),ne.call(j1.makeEditable,{gd:e}).on("edit",function(Re){UL.call("_guiRelayout",e,"title.subtitle.text",Re)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(ge)}).on("input",function(Re){this.text(Re||" ").call(j1.positionText,ne.attr("x"),ne.attr("y"))})}return V.classed("js-placeholder",m),ne&&ne.classed("js-placeholder",R),c}o$.exports={draw:TXe,SUBTITLE_PADDING_EM:jL,SUBTITLE_PADDING_MATHJAX_EM:HL}});var Zv=J((O8t,c$)=>{"use strict";var AXe=Nr(),MXe=m1().utcFormat,ta=gt(),kXe=ta.numberFormat,Xh=dn(),c0=ta.cleanNumber,SXe=ta.ms2DateTime,s$=ta.dateTime2ms,Zh=ta.ensureNumber,l$=ta.isArrayOrTypedArray,h0=oi(),fA=h0.FP_SAFE,eh=h0.BADNUM,CXe=h0.LOG_CLIP,EXe=h0.ONEWEEK,cA=h0.ONEDAY,hA=h0.ONEHOUR,u$=h0.ONEMIN,f$=h0.ONESEC,vA=jo(),gA=Eo(),dA=gA.HOUR_PATTERN,pA=gA.WEEKDAY_PATTERN;function o2(e){return Math.pow(10,e)}function VL(e){return e!=null}c$.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(w,k){if(w>0)return Math.log(w)/Math.LN10;if(w<=0&&k&&t.range&&t.range.length===2){var x=t.range[0],M=t.range[1];return .5*(x+M-2*CXe*Math.abs(x-M))}else return eh}function o(w,k,x,M){if((M||{}).msUTC&&Xh(w))return+w;var A=s$(w,x||t.calendar);if(A===eh)if(Xh(w)){w=+w;var p=Math.floor(ta.mod(w+.05,1)*10),S=Math.round(w-p/10);A=s$(new Date(S))+p/10}else return eh;return A}function s(w,k,x){return SXe(w,k,x||t.calendar)}function l(w){return t._categories[Math.round(w)]}function u(w){if(VL(w)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[w]!==void 0)return t._categoriesMap[w];t._categories.push(typeof w=="number"?String(w):w);var k=t._categories.length-1;return t._categoriesMap[w]=k,k}return eh}function f(w,k){for(var x=new Array(k),M=0;Mt.range[1]&&(x=!x);for(var M=x?-1:1,A=M*w,p=0,S=0;SE)p=S+1;else{p=A<(y+E)/2?S:S+1;break}}var C=t._B[p]||0;return isFinite(C)?v(w,t._m2,C):0},g=function(w){var k=t._rangebreaks.length;if(!k)return m(w,t._m,t._b);for(var x=0,M=0;Mt._rangebreaks[M].pmax&&(x=M+1);return m(w,t._m2,t._B[x])}}t.c2l=t.type==="log"?a:Zh,t.l2c=t.type==="log"?o2:Zh,t.l2p=b,t.p2l=g,t.c2p=t.type==="log"?function(w,k){return b(a(w,k))}:b,t.p2c=t.type==="log"?function(w){return o2(g(w))}:g,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=c0,t.c2d=t.c2r=t.l2d=t.l2r=Zh,t.d2p=t.r2p=function(w){return t.l2p(c0(w))},t.p2d=t.p2r=g,t.cleanPos=Zh):t.type==="log"?(t.d2r=t.d2l=function(w,k){return a(c0(w),k)},t.r2d=t.r2c=function(w){return o2(c0(w))},t.d2c=t.r2l=c0,t.c2d=t.l2r=Zh,t.c2r=a,t.l2d=o2,t.d2p=function(w,k){return t.l2p(t.d2r(w,k))},t.p2d=function(w){return o2(g(w))},t.r2p=function(w){return t.l2p(c0(w))},t.p2r=g,t.cleanPos=Zh):t.type==="date"?(t.d2r=t.r2d=ta.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(w,k,x){return t.l2p(o(w,0,x))},t.p2d=t.p2r=function(w,k,x){return s(g(w),k,x)},t.cleanPos=function(w){return ta.cleanDate(w,eh,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=u,t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(w){var k=d(w);return k!==void 0?k:t.fraction2r(.5)},t.l2r=t.c2r=Zh,t.r2l=d,t.d2p=function(w){return t.l2p(t.r2c(w))},t.p2d=function(w){return l(g(w))},t.r2p=t.d2p,t.p2r=g,t.cleanPos=function(w){return typeof w=="string"&&w!==""?w:Zh(w)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(w){var k=h(w);return k!==void 0?k:t.fraction2r(.5)},t.r2c_just_indices=c,t.l2r=t.c2r=Zh,t.r2l=h,t.d2p=function(w){return t.l2p(t.r2c(w))},t.p2d=function(w){return l(g(w))},t.r2p=t.d2p,t.p2r=g,t.cleanPos=function(w){return Array.isArray(w)||typeof w=="string"&&w!==""?w:Zh(w)},t.setupMultiCategory=function(w){var k=t._traceIndices,x,M,A=t._matchGroup;if(A&&t._categories.length===0){for(var p in A)if(p!==n){var S=r[vA.id2name(p)];k=k.concat(S._traceIndices)}}var y=[[0,{}],[0,{}]],E=[];for(x=0;xS[1]&&(M[p?0:1]=x),M[0]===M[1]){var y=t.l2r(k),E=t.l2r(x);if(k!==void 0){var C=y+1;x!==void 0&&(C=Math.min(C,E)),M[p?1:0]=C}if(x!==void 0){var L=E+1;k!==void 0&&(L=Math.max(L,y)),M[p?0:1]=L}}}},t.cleanRange=function(w,k){t._cleanRange(w,k),t.limitRange(w)},t._cleanRange=function(w,k){k||(k={}),w||(w="range");var x=ta.nestedProperty(t,w).get(),M,A;if(t.type==="date"?A=ta.dfltRange(t.calendar):i==="y"?A=gA.DFLTRANGEY:t._name==="realaxis"?A=[0,1]:A=k.dfltRange||gA.DFLTRANGEX,A=A.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(A[0]=0),!x||x.length!==2){ta.nestedProperty(t,w).set(A);return}var p=x[0]===null,S=x[1]===null;for(t.type==="date"&&!t.autorange&&(x[0]=ta.cleanDate(x[0],eh,t.calendar),x[1]=ta.cleanDate(x[1],eh,t.calendar)),M=0;M<2;M++)if(t.type==="date"){if(!ta.isDateTime(x[M],t.calendar)){t[w]=A;break}if(t.r2l(x[0])===t.r2l(x[1])){var y=ta.constrain(t.r2l(x[0]),ta.MIN_MS+1e3,ta.MAX_MS-1e3);x[0]=t.l2r(y-1e3),x[1]=t.l2r(y+1e3);break}}else{if(!Xh(x[M]))if(!(p||S)&&Xh(x[1-M]))x[M]=x[1-M]*(M?10:.1);else{t[w]=A;break}if(x[M]<-fA?x[M]=-fA:x[M]>fA&&(x[M]=fA),x[0]===x[1]){var E=Math.max(1,Math.abs(x[0]*1e-6));x[0]-=E,x[1]+=E}}},t.setScale=function(w){var k=r._size;if(t.overlaying){var x=vA.getFromId({_fullLayout:r},t.overlaying);t.domain=x.domain}var M=w&&t._r?"_r":"range",A=t.calendar;t.cleanRange(M);var p=t.r2l(t[M][0],A),S=t.r2l(t[M][1],A),y=i==="y";if(y?(t._offset=k.t+(1-t.domain[1])*k.h,t._length=k.h*(t.domain[1]-t.domain[0]),t._m=t._length/(p-S),t._b=-t._m*S):(t._offset=k.l+t.domain[0]*k.w,t._length=k.w*(t.domain[1]-t.domain[0]),t._m=t._length/(S-p),t._b=-t._m*p),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var E,C;if(t._rangebreaks=t.locateBreaks(Math.min(p,S),Math.max(p,S)),t._rangebreaks.length){for(E=0;ES&&(L=!L),L&&t._rangebreaks.reverse();var R=L?-1:1;for(t._m2=R*t._length/(Math.abs(S-p)-t._lBreaks),t._B.push(-t._m2*(y?S:p)),E=0;EA&&(A+=7,pA&&(A+=24,p=M&&p=M&&w=O.min&&(GO.max&&(O.max=ee),Q=!1)}Q&&S.push({min:G,max:ee})}};for(x=0;x{"use strict";var h$=dn(),YL=gt(),LXe=oi().BADNUM,mA=YL.isArrayOrTypedArray,DXe=YL.isDateTime,RXe=YL.cleanNumber,v$=Math.round;p$.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(mA(i)&&!i.length)return"-";if(!a&&zXe(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;sa*2}function d$(e){return Math.max(1,(e-1)/1e3)}function FXe(e,t){for(var r=e.length,n=d$(r),i=0,a=0,o={},s=0;si*2}function zXe(e){return mA(e[0])&&mA(e[1])}});var ec=J((U8t,T$)=>{"use strict";var NXe=Nr(),x$=dn(),v0=gt(),yA=oi().FP_SAFE,OXe=zr(),BXe=ln(),b$=jo(),UXe=b$.getFromId,HXe=b$.isLinked;T$.exports={applyAutorangeOptions:_$,getAutoRange:GL,makePadFn:WL,doAutoRange:VXe,findExtremes:YXe,concatExtremes:JL};function GL(e,t){var r,n,i=[],a=e._fullLayout,o=WL(a,t,0),s=WL(a,t,1),l=JL(e,t),u=l.min,f=l.max;if(u.length===0||f.length===0)return v0.simpleMap(t.range,t.r2l);var c=u[0].val,h=f[0].val;for(r=1;r0&&(S=T-o(x)-s(M),S>w?y/S>k&&(A=x,p=M,k=y/S):y/T>k&&(A={val:x.val,nopad:1},p={val:M.val,nopad:1},k=y/T));function E(P,D){return Math.max(P,s(D))}if(c===h){var C=c-1,L=c+1;if(g)if(c===0)i=[0,1];else{var R=(c>0?f:u).reduce(E,0),I=c/(1-Math.min(.5,R/T));i=c>0?[0,I]:[I,0]}else _?i=[Math.max(0,C),Math.max(1,L)]:i=[C,L]}else g?(A.val>=0&&(A={val:0,nopad:1}),p.val<=0&&(p={val:0,nopad:1})):_&&(A.val-k*o(A)<0&&(A={val:0,nopad:1}),p.val<=0&&(p={val:1,nopad:1})),k=(p.val-A.val-g$(t,x.val,M.val))/(T-o(A)-s(p)),i=[A.val-k*o(A),p.val+k*s(p)];return i=_$(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),v0.simpleMap(i,t.l2r||Number)}function g$(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a0?r.ppadplus:r.ppadminus)||r.ppad||0),x=w((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),M=w(r.vpadplus||r.vpad),A=w(r.vpadminus||r.vpad);if(!u){if(_=1/0,T=-1/0,l)for(c=0;c0&&(_=h),h>T&&h-yA&&(_=h),h>T&&h=y;c--)S(c);return{min:n,max:i,opts:r}}function XL(e,t,r,n){w$(e,t,r,n,GXe)}function ZL(e,t,r,n){w$(e,t,r,n,WXe)}function w$(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l=r&&(u.extrapad||!o)){s=!1;break}else i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var f=a&&t===0;e.push({val:t,pad:f?0:r,extrapad:f?!1:o})}}function y$(e){return x$(e)&&Math.abs(e)=t}function XXe(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&xA(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&xA(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function ZXe(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&xA(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&xA(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function xA(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t=l&&(a=l,r=l),o<=l&&(o=l,n=l)}}return r=XXe(r,t),n=ZXe(n,t),[r,n]}});var nn=J((H8t,Y$)=>{"use strict";var tc=Nr(),Do=dn(),Y1=ea(),l2=zr(),pn=gt(),G1=pn.strTranslate,rg=ca(),JXe=tg(),u2=qr(),Mf=ln(),$Xe=hl(),A$=yL(),Xs=oi(),KXe=Xs.ONEMAXYEAR,_A=Xs.ONEAVGYEAR,TA=Xs.ONEMINYEAR,QXe=Xs.ONEMAXQUARTER,eD=Xs.ONEAVGQUARTER,AA=Xs.ONEMINQUARTER,eZe=Xs.ONEMAXMONTH,W1=Xs.ONEAVGMONTH,MA=Xs.ONEMINMONTH,kf=Xs.ONEWEEK,ql=Xs.ONEDAY,d0=ql/2,$h=Xs.ONEHOUR,f2=Xs.ONEMIN,kA=Xs.ONESEC,tZe=Xs.ONEMILLI,rZe=Xs.ONEMICROSEC,ng=Xs.MINUS_SIGN,EA=Xs.BADNUM,tD={K:"zeroline"},rD={K:"gridline",L:"path"},nD={K:"minor-gridline",L:"path"},q$={K:"tick",L:"path"},M$={K:"tick",L:"text"},k$={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},LA=Vo(),s2=LA.MID_SHIFT,ig=LA.CAP_SHIFT,c2=LA.LINE_SPACING,nZe=LA.OPPOSITE_SIDE,SA=3,hr=Y$.exports={};hr.setConvert=Zv();var iZe=V1(),Jv=jo(),aZe=Jv.idSort,oZe=Jv.isLinked;hr.id2name=Jv.id2name;hr.name2id=Jv.name2id;hr.cleanId=Jv.cleanId;hr.list=Jv.list;hr.listIds=Jv.listIds;hr.getFromId=Jv.getFromId;hr.getFromTrace=Jv.getFromTrace;var F$=ec();hr.getAutoRange=F$.getAutoRange;hr.findExtremes=F$.findExtremes;var sZe=1e-4;function sD(e){var t=(e[1]-e[0])*sZe;return[e[0]-t,e[1]+t]}hr.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(f){return f+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},pn.coerce(e,t,u,l)};hr.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};hr.coercePosition=function(e,t,r,n,i,a){var o,s,l=hr.getRefType(n);if(l!=="range")o=pn.ensureNumber,s=r(i,a);else{var u=hr.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};hr.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?pn.ensureNumber:hr.getFromId(t,r).cleanPos;return n(e)};hr.redrawComponents=function(e,t){t=t||hr.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=l2.getComponentMethod(i,a),u={},f=0;f2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};hr.saveRangeInitial=function(e,t){for(var r=hr.list(e,"",!0),n=!1,i=0;ic*.3||u(n)||u(i))){var h=r.dtick/2;e+=e+ho){var s=Number(r.substr(1));a.exactYears>o&&s%12===0?e=hr.tickIncrement(e,"M6","reverse")+ql*1.5:a.exactMonths>o?e=hr.tickIncrement(e,"M1","reverse")+ql*15.5:e-=d0;var l=hr.tickIncrement(e,r);if(l<=n)return l}return e}hr.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&Do(t._tmin),i;if(n){var a=hr.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=pn.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=pn.simpleMap(i,t.l2r),e._isMinor=!0,hr.prepTicks(e,r),n){var s=Do(t.dtick),l=Do(e.dtick),u=s?t.dtick:+t.dtick.substring(1),f=l?e.dtick:+e.dtick.substring(1);s&&l?$L(u,f)?u===2*kf&&f===2*ql&&(e.dtick=kf):u===2*kf&&f===3*ql?e.dtick=kf:u===kf&&!(t._input.minor||{}).nticks?e.dtick=ql:E$(u/f,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":$L(u,f)?u>=12&&f===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?$L(u,f)||(e.dtick=E$(u/f,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function $L(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function E$(e,t){return Math.abs(e/t-1)<.001}hr.prepTicks=function(e,t){var r=pn.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?pn.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=pn.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,hr.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,l=e[o].value,u=Math.abs(l-s),f=r||u,c=0;f>=TA?u>=TA&&u<=KXe?c=u:c=_A:r===eD&&f>=AA?u>=AA&&u<=QXe?c=u:c=eD:f>=MA?u>=MA&&u<=eZe?c=u:c=W1:r===kf&&f>=kf?c=kf:f>=ql?c=ql:r===d0&&f>=d0?c=d0:r===$h&&f>=$h&&(c=$h);var h;c>=u&&(c=u,h=!0);var d=i+c;if(t.rangebreaks&&c>0){for(var v=84,m=0,b=0;bkf&&(c=u)}(c>0||n===0)&&(e[n].periodX=i+c/2)}}hr.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],l=!t.ticklabelindex||pn.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=pn.simpleMap(t.range,t.r2l,void 0,void 0,r),f=u[1]=(T?0:1);w--){var k=!w;w?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var x=w?t:pn.extendFlat({},t,t.minor);if(k?hr.prepMinorTicks(x,t,r):hr.prepTicks(x,r),x.tickmode==="array"){w?(b=[],v=L$(t,!k)):(g=[],m=L$(t,!k));continue}if(x.tickmode==="sync"){b=[],v=vZe(t);continue}var M=sD(u),A=M[0],p=M[1],S=Do(x.dtick),y=n==="log"&&!(S||x.dtick.charAt(0)==="L"),E=hr.tickFirst(x,r);if(w){if(t._tmin=E,E=p:L<=p;L=hr.tickIncrement(L,P,f,i)){if(w&&R++,x.rangebreaks&&!f){if(L=h)break}if(b.length>d||L===C)break;C=L;var D={value:L};w?(y&&L!==(L|0)&&(D.simpleLabel=!0),a>1&&R%a&&(D.skipLabel=!0),b.push(D)):(D.minor=!0,g.push(D))}}if(!g||g.length<2)l=!1;else{var q=(g[1].value-g[0].value)*(s?-1:1);zZe(q,t.tickformat)||(l=!1)}if(!l)_=b;else{var N=b.concat(g);o&&b.length&&(N=N.slice(1)),N=N.sort(function(Ie,Re){return Ie.value-Re.value}).filter(function(Ie,Re,ze){return Re===0||Ie.value!==ze[Re-1].value});var U=N.map(function(Ie,Re){return Ie.minor===void 0&&!Ie.skipLabel?Re:null}).filter(function(Ie){return Ie!==null});U.forEach(function(Ie){l.map(function(Re){var ze=Ie+Re;ze>=0&&ze-1;oe--){if(b[oe].drop){b.splice(oe,1);continue}b[oe].value=QL(b[oe].value,t);var W=t.c2p(b[oe].value);(te?ne>W-V:neh||Beh&&(ze.periodX=h),Bei&&h_A)t/=_A,n=i(10),e.dtick="M"+12*Jh(t,n,bA);else if(a>W1)t/=W1,e.dtick="M"+Jh(t,1,D$);else if(a>ql){if(e.dtick=Jh(t,ql,e._hasDayOfWeekBreaks?[1,2,7,14]:dZe),!r){var o=hr.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=pn.dateTick0(e.calendar,2):e.tick0=pn.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>$h?e.dtick=Jh(t,$h,D$):a>f2?e.dtick=Jh(t,f2,R$):a>kA?e.dtick=Jh(t,kA,R$):(n=i(10),e.dtick=Jh(t,n,bA))}else if(e.type==="log"){e.tick0=0;var l=pn.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+Jh(t,n,bA)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):fD(e)?(e.tick0=0,n=1,e.dtick=Jh(t,n,pZe)):(e.tick0=0,n=i(10),e.dtick=Jh(t,n,bA));if(e.dtick===0&&(e.dtick=1),!Do(e.dtick)&&typeof e.dtick!="string"){var f=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(f)}};function B$(e){var t=e.dtick;if(e._tickexponent=0,!Do(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=ql&&i<=10||t>=ql*15)e._tickround="d";else if(t>=f2&&i<=16||t>=$h)e._tickround="M";else if(t>=kA&&i<=19||t>=f2)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(Do(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);Do(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),l=Math.floor(Math.log(s)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(l)>u&&(CA(e.exponentformat)&&!lD(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}hr.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(Do(t))return pn.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.substr(1));if(a==="M")return pn.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?O$:N$,l=e+i*.01,u=pn.roundUp(pn.mod(l,1),s,r);return Math.floor(l)+Math.log(tc.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(t)};hr.tickFirst=function(e,t){var r=e.r2l||Number,n=pn.simpleMap(e.range,r,void 0,void 0,t),i=n[1]=0&&g<=e._length?b:null};if(a&&pn.isArrayOrTypedArray(e.ticktext)){var c=pn.simpleMap(e.range,e.r2l),h=(Math.abs(c[1]-c[0])-(e._lBreaks||0))/1e4;for(u=0;u"+s;else{var u=v2(e),f=e._trueSide||e.side;(!u&&f==="top"||u&&f==="bottom")&&(o+="
")}t.text=o}function mZe(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,l=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&l!=="L"&&(a="L3",l="L"),s||l==="L")t.text=h2(Math.pow(10,o),e,i,n);else if(Do(a)||l==="D"&&pn.mod(o+.01,1)<.1){var u=Math.round(o),f=Math.abs(u),c=e.exponentformat;c==="power"||CA(c)&&lD(u)?(u===0?t.text=1:u===1?t.text="10":t.text="10"+(u>1?"":ng)+f+"",t.fontSize*=1.25):(c==="e"||c==="E")&&f>2?t.text="1"+c+(u>0?"+":ng)+f:(t.text=h2(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=String(Math.round(Math.pow(10,pn.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var h=String(t.text).charAt(0);(h==="0"||h==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function yZe(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function xZe(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function bZe(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=h2(t.x,e,i,n)}function wZe(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=_Ze(a);if(o[1]>=100)t.text=h2(pn.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["",o[0],"","\u2044","",o[1],"","\u03C0"].join(""),s&&(t.text=ng+t.text)}}}else t.text=h2(t.x,e,i,n)}function _Ze(e){function t(s,l){return Math.abs(s-l)<=1e-6}function r(s,l){return t(l,0)?s:r(l,s%l)}function n(s){for(var l=1;!t(Math.round(s*l)/l,s);)l*=10;return l}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var TZe=["f","p","n","\u03BC","m","","k","M","G","T"];function CA(e){return e==="SI"||e==="B"}function lD(e){return e>14||e<-15}function h2(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=hr.getTickFormat(t),u=t.separatethousands;if(n){var f={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:Do(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};B$(f),a=(Number(f._tickround)||0)+4,s=f._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,ng);var c=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e"+v+"":o==="B"&&s===9?e+="B":CA(o)&&(e+=TZe[s/3+5])}return i?ng+e:e}hr.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*W1}function n(l,u){var f=["L","D"];if(typeof l==typeof u){if(typeof l=="number")return l-u;var c=f.indexOf(l.charAt(0)),h=f.indexOf(u.charAt(0));return c===h?Number(l.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):c-h}else return typeof l=="number"?1:-1}function i(l,u,f){var c=f||function(v){return v},h=u[0],d=u[1];return(!h&&typeof h!="number"||c(h)<=c(l))&&(!d&&typeof d!="number"||c(d)>=c(l))}function a(l,u){var f=u[0]===null,c=u[1]===null,h=n(l,u[0])>=0,d=n(l,u[1])<=0;return(f||h)&&(c||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t=0&&i.unshift(i.splice(f,1).shift())}});var s={false:{left:0,right:0}};return pn.syncOrAsync(i.map(function(l){return function(){if(l){var u=hr.getFromId(e,l);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var f=hr.drawOne(e,u,r);return u._shiftPusher&&oD(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=pn.simpleMap(u._r,u.r2l),f}}}))};hr.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,f=u.charAt(0),c=hr.counterLetter(u),h=l._plots[t._mainSubplot];if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var d=t.linewidth/2||0;t.ticks==="inside"&&(d+=t.ticklen),oD(t,d,n,!0),oD(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=FZe(t,n));var v=h[f+"axislayer"],m=t._mainLinePosition,b=m+=t._shift,g=t._mainMirrorPosition,_=t._vals=hr.calcTicks(t),T=[t.mirror,b,g].join("_");for(a=0;a<_.length;a++)_[a].axInfo=T;t._selections={},t._tickAngles&&(t._prevTickAngles=t._tickAngles),t._tickAngles={},t._depth=null;var w={};function k(pe){var me=u+(pe||"tick");return w[me]||(w[me]=SZe(t,me,b)),w[me]}if(t.visible){var x=hr.makeTransTickFn(t),M=hr.makeTransTickLabelFn(t),A,p,S=t.ticks==="inside",y=t.ticks==="outside";if(t.tickson==="boundaries"){var E=AZe(t,_);p=hr.clipEnds(t,E),A=S?p:E}else p=hr.clipEnds(t,_),A=S&&t.ticklabelmode!=="period"?p:_;var C=t._gridVals=p,L=kZe(t,_);if(!l._hasOnlyLargeSploms){var R=t._subplotsWith,I={};for(a=0;a0?ze.bottom-Ie:0,Re))));var ce=0,Ee=0;if(t._shiftPusher&&(ce=Math.max(Re,ze.height>0?pe==="l"?Ie-ze.left:ze.right-Ie:0),t.title.text!==l._dfltTitle[f]&&(Ee=(t._titleStandoff||0)+(t._titleScoot||0),pe==="l"&&(Ee+=I$(t))),t._fullDepth=Math.max(ce,Ee)),t.automargin){Be={x:0,y:0,r:0,l:0,t:0,b:0};var Ae=[0,1],Pe=typeof t._shift=="number"?t._shift:0;if(f==="x"){if(pe==="b"?Be[pe]=t._depth:(Be[pe]=t._depth=Math.max(ze.width>0?Ie-ze.top:0,Re),Ae.reverse()),ze.width>0){var He=ze.right-(t._offset+t._length);He>0&&(Be.xr=1,Be.r=He);var Fe=t._offset-ze.left;Fe>0&&(Be.xl=0,Be.l=Fe)}}else if(pe==="l"?(t._depth=Math.max(ze.height>0?Ie-ze.left:0,Re),Be[pe]=t._depth-Pe):(t._depth=Math.max(ze.height>0?ze.right-Ie:0,Re),Be[pe]=t._depth+Pe,Ae.reverse()),ze.height>0){var ke=ze.bottom-(t._offset+t._length);ke>0&&(Be.yb=0,Be.b=ke);var Ue=t._offset-ze.top;Ue>0&&(Be.yt=1,Be.t=Ue)}Be[c]=t.anchor==="free"?t.position:t._anchorAxis.domain[Ae[0]],t.title.text!==l._dfltTitle[f]&&(Be[pe]+=I$(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(tt={x:0,y:0,r:0,l:0,t:0,b:0},tt[me]=t.linewidth,t.mirror&&t.mirror!==!0&&(tt[me]+=Re),t.mirror===!0||t.mirror==="ticks"?tt[c]=t._anchorAxis.domain[Ae[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(tt[c]=[t._counterDomainMin,t._counterDomainMax][Ae[1]]))}Ne&&(rt=l2.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(P$(Be,t.automargin),P$(tt,t.automargin)),Y1.autoMargin(e,uD(t),Be),Y1.autoMargin(e,j$(t),tt),Y1.autoMargin(e,V$(t),rt)}),pn.syncOrAsync(ge)}};function P$(e,t){if(e){var r=Object.keys(k$).reduce(function(n,i){return t.indexOf(i)!==-1&&k$[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function AZe(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(pn.extendFlat({},a,{x:s}))};if(t.length){for(n=0;ne.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,l=!s;if(r){var u=o?-1:1;r=r*u}if(n){var f=e.side,c=s&&(f==="top"||f==="left")||l&&(f==="bottom"||f==="right")?1:-1;n=n*c}return e._id.charAt(0)==="x"?function(h){return G1(i+e._offset+e.l2p(iD(h))+r,a+n)}:function(h){return G1(a+n,i+e._offset+e.l2p(iD(h))+r)}};function iD(e){return e.periodX!==void 0?e.periodX:e.x}function CZe(e){var t=e.ticklabelposition||"",r=function(d){return t.indexOf(d)!==-1},n=r("top"),i=r("left"),a=r("right"),o=r("bottom"),s=r("inside"),l=o||i||n||a;if(!l&&!s)return[0,0];var u=e.side,f=l?(e.tickwidth||0)/2:0,c=SA,h=e.tickfont?e.tickfont.size:12;return(o||n)&&(f+=h*ig,c+=(e.linewidth||0)/2),(i||a)&&(f+=(e.linewidth||0)/2,c+=SA),s&&u==="top"&&(c-=h*(1-ig)),(i||n)&&(f=-f),(u==="bottom"||u==="right")&&(c=-c),[l?f:0,s?c:0]}hr.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};hr.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=function(E){return n.indexOf(E)!==-1},a=i("top"),o=i("left"),s=i("right"),l=i("bottom"),u=l||o||a||s,f=i("inside"),c=n==="inside"&&e.ticks==="inside"||!f&&e.ticks==="outside"&&e.tickson!=="boundaries",h=0,d=0,v=c?e.ticklen:0;if(f?v*=-1:u&&(v=0),c&&(h+=v,r)){var m=pn.deg2rad(r);h=v*Math.cos(m)+1,d=v*Math.sin(m)}e.showticklabels&&(c||e.showline)&&(h+=.2*e.tickfont.size),h+=(e.linewidth||1)/2*(f?-1:1);var b={labelStandoff:h,labelShift:d},g,_,T,w,k=0,x=e.side,M=e._id.charAt(0),A=e.tickangle,p;if(M==="x")p=!f&&x==="bottom"||f&&x==="top",w=p?1:-1,f&&(w*=-1),g=d*w,_=t+h*w,T=p?1:-.2,Math.abs(A)===90&&(f?T+=s2:A===-90&&x==="bottom"?T=ig:A===90&&x==="top"?T=s2:T=.5,k=s2/2*(A/90)),b.xFn=function(E){return E.dx+g+k*E.fontSize},b.yFn=function(E){return E.dy+_+E.fontSize*T},b.anchorFn=function(E,C){if(u){if(o)return"end";if(s)return"start"}return!Do(C)||C===0||C===180?"middle":C*w<0!==f?"end":"start"},b.heightFn=function(E,C,L){return C<-60||C>60?-.5*L:e.side==="top"!==f?-L:0};else if(M==="y"){if(p=!f&&x==="left"||f&&x==="right",w=p?1:-1,f&&(w*=-1),g=h,_=d*w,T=0,!f&&Math.abs(A)===90&&(A===-90&&x==="left"||A===90&&x==="right"?T=ig:T=.5),f){var S=Do(A)?+A:0;if(S!==0){var y=pn.deg2rad(S);k=Math.abs(Math.sin(y))*ig*w,T=0}}b.xFn=function(E){return E.dx+t-(g+E.fontSize*T)*w+k*E.fontSize},b.yFn=function(E){return E.dy+_+E.fontSize*s2},b.anchorFn=function(E,C){return Do(C)&&Math.abs(C)===90?"middle":p?"end":"start"},b.heightFn=function(E,C,L){return e.side==="right"&&(C*=-1),C<-30?-L:C<30?-.5*L:0}}return b};function DA(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}hr.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,DA);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return u2.stroke(tc.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Mf.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),RA(t,[q$]),a.attr("transform",r.transFn)};hr.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(g){return g.minor}):[],o=t.showgrid?r.vals.filter(function(g){return!g.minor}):[],s=r.counterAxis;if(s&&hr.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u=0;v--){var m=v?h:d;if(m){var b=m.selectAll("path."+n).data(v?o:a,DA);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(g){return u2.stroke(tc.select(this),g.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(g){return Mf.dashStyle(g.minor?t.minor.griddash:t.griddash,g.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(g){return(g.minor?c:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}RA(t,[rD,nD])}};hr.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=hr.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return aZe(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(u2.stroke,t.zerolinecolor||u2.defaultLine).style("stroke-width",Mf.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),RA(t,[tD])};hr.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=r.cls||i+"tick",o=r.vals.filter(function(D){return D.text}),s=r.labelFns,l=r.secondary?0:t.tickangle,u=(t._prevTickAngles||{})[a],f=r.layer.selectAll("g."+a).data(t.showticklabels?o:[],DA),c=[];f.enter().append("g").classed(a,1).append("text").attr("text-anchor","middle").each(function(D){var q=tc.select(this),N=e._promises.length;q.call(rg.positionText,s.xFn(D),s.yFn(D)).call(Mf.font,{family:D.font,size:D.fontSize,color:D.fontColor,weight:D.fontWeight,style:D.fontStyle,variant:D.fontVariant,textcase:D.fontTextcase,lineposition:D.fontLineposition,shadow:D.fontShadow}).text(D.text).call(rg.convertToTspans,e),e._promises[N]?c.push(e._promises.pop().then(function(){h(q,l)})):h(q,l)}),RA(t,[M$]),f.exit().remove(),r.repositionOnUpdate&&f.each(function(D){tc.select(this).select("text").call(rg.positionText,s.xFn(D),s.yFn(D))});function h(D,q){D.each(function(N){var U=tc.select(this),G=U.select(".text-math-group"),ee=s.anchorFn(N,q),Q=r.transFn.call(U.node(),N)+(Do(q)&&+q!=0?" rotate("+q+","+s.xFn(N)+","+(s.yFn(N)-N.fontSize/2)+")":""),j=rg.lineCount(U),O=c2*N.fontSize,Z=s.heightFn(N,Do(q)?+q:0,(j-1)*O);if(Z&&(Q+=G1(0,Z)),G.empty()){var K=U.select("text");K.attr({transform:Q,"text-anchor":ee}),K.style("opacity",1),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var $=Mf.bBox(G.node()).width,oe=$*{end:-.5,start:.5}[ee];G.attr("transform",Q+G1(oe,0))}})}t._adjustTickLabelsOverflow=function(){var D=t.ticklabeloverflow;if(!(!D||D==="allow")){var q=D.indexOf("hide")!==-1,N=t._id.charAt(0)==="x",U=0,G=N?e._fullLayout.width:e._fullLayout.height;if(D.indexOf("domain")!==-1){var ee=pn.simpleMap(t.range,t.r2l);U=t.l2p(ee[0])+t._offset,G=t.l2p(ee[1])+t._offset}var Q=Math.min(U,G),j=Math.max(U,G),O=t.side,Z=1/0,K=-1/0;f.each(function(V){var ne=tc.select(this),W=ne.select(".text-math-group");if(W.empty()){var fe=Mf.bBox(ne.node()),ge=0;N?(fe.right>j||fe.leftj||fe.top+(t.tickangle?0:V.fontSize/4)t["_visibleLabelMin_"+ee._id]?V.style("display","none"):j.K==="tick"&&!Q&&V.style("display",null)})})})})},h(f,u+1?u:l);function d(){return c.length&&Promise.all(c)}var v=null;function m(){if(h(f,l),o.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){v=t.autotickangles[0];var D=0,q=[],N,U=1;f.each(function(ze){D=Math.max(D,ze.fontSize);var Be=t.l2p(ze.x),tt=aD(this),rt=Mf.bBox(tt.node());U=Math.max(U,rg.lineCount(tt)),q.push({top:0,bottom:10,height:10,left:Be-rt.width/2,right:Be+rt.width/2+2,width:rt.width+2})});var G=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,ee=o.length,Q=Math.abs((o[ee-1].x-o[0].x)*t._m)/(ee-1),j=G?Q/2:Q,O=G?t.ticklen:D*1.25*U,Z=Math.sqrt(Math.pow(j,2)+Math.pow(O,2)),K=j/Z,$=t.autotickangles.map(function(ze){return ze*Math.PI/180}),oe=$.find(function(ze){return Math.abs(Math.cos(ze))<=K});oe===void 0&&(oe=$.reduce(function(ze,Be){return Math.abs(Math.cos(ze))R*L&&(y=L,A[M]=p[M]=E[M])}var I=Math.abs(y-S);I-w>0?(I-=w,w*=1+w/I):w=0,t._id.charAt(0)!=="y"&&(w=-w),A[x]=_.p2r(_.r2p(p[x])+k*w),_.autorange==="min"||_.autorange==="max reversed"?(A[0]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0):(_.autorange==="max"||_.autorange==="min reversed")&&(A[1]=null,_._rangeInitial0=void 0,_._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[_._name+".range"]=A}var P=pn.syncOrAsync(b);return P&&P.then&&e._promises.push(P),P};function EZe(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,DA);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(u2.stroke,t.dividercolor).style("stroke-width",Mf.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}hr.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function I$(e){var t=e.title.font.size,r=(e.title.text.match(rg.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(ig+r*c2):r?t*(r+1)*c2:t}function LZe(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(rg.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*ig:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*(s2+s*c2));else{var l=v2(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var f=hr.getPxPosition(e,t),c,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?f-o:f+o):(d=t._offset+t._length/2,h=t.side==="right"?f+o:f-o,c={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var m=t._selections[t._id+"tick"];if(v={selection:m,side:t.side},m&&m.node()&&m.node().parentNode){var b=Mf.getTranslate(m.node().parentNode);v.offsetLeft=b.x,v.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(v.pad=0)}return t._titleStandoff=o,JXe.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:c,attributes:{x:h,y:d,"text-anchor":"middle"}})}hr.shouldShowZeroLine=function(e,t,r){var n=pn.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===EA)&&(H$(t,0)||!DZe(e,t,r,n)||RZe(e,t))};hr.clipEnds=function(e,t){return t.filter(function(r){return H$(e,r.x)})};function H$(e,t){var r=e.l2p(t);return r>1&&r1)for(i=1;i=i.min&&e=rZe:/%L/.test(t)?e>=tZe:/%[SX]/.test(t)?e>=kA:/%M/.test(t)?e>=f2:/%[HI]/.test(t)?e>=$h:/%p/.test(t)?e>=d0:/%[Aadejuwx]/.test(t)?e>=ql:/%[UVW]/.test(t)?e>=kf:/%[Bbm]/.test(t)?e>=MA:/%[q]/.test(t)?e>=AA:/%[Yy]/.test(t)?e>=TA:!0}});var cD=J((j8t,G$)=>{"use strict";G$.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),l=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),l===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var hD=J((V8t,W$)=>{"use strict";var NZe=cD();W$.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var l;!i.noInsiderange&&o!=="log"&&(l=n("insiderange"),l&&(l[0]===null||l[1]===null)&&(r.insiderange=!1,l=void 0),l&&(s=n("range",l)))}var u=r.getAutorangeDflt(s,i),f=n("autorange",u),c;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(f==="reversed"||f===!0)||s[0]!==null&&(f==="min"||f==="max reversed")||s[1]!==null&&(f==="max"||f==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,c=!0),c||(u=r.getAutorangeDflt(s,i),f=n("autorange",u)),f&&(NZe(n,f,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var vD=J((Y8t,X$)=>{var OZe={left:0,top:0};X$.exports=BZe;function BZe(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=UZe(t);return r[0]=n-a.left,r[1]=i-a.top,r}function UZe(e){return e===window||e===document||e===document.body?OZe:e.getBoundingClientRect()}});var d2=J((G8t,Z$)=>{"use strict";var HZe=HE();function jZe(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch{e=!1}return e}Z$.exports=HZe&&jZe()});var $$=J((W8t,J$)=>{"use strict";J$.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),l=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?l:a==="right"||a==="top"?s:o<2/3-l?o:s>4/3-l?s:l}});var eK=J((X8t,Q$)=>{"use strict";var K$=gt(),VZe=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Q$.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=K$.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=K$.constrain(Math.floor(r*3),0,2),VZe[r][t]}});var rK=J((Z8t,tK)=>{"use strict";var YZe=P1(),GZe=zT(),WZe=Ob().getGraphDiv,XZe=zb(),dD=tK.exports={};dD.wrapped=function(e,t,r){e=WZe(e),e._fullLayout&&GZe.clear(e._fullLayout._uid+XZe.HOVERID),dD.raw(e,t,r)};dD.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&YZe.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var iu=J((J8t,aK)=>{"use strict";var ZZe=vD(),pD=VE(),JZe=d2(),$Ze=gt().removeElement,KZe=Eo(),ag=aK.exports={};ag.align=$$();ag.getCursor=eK();var nK=rK();ag.unhover=nK.wrapped;ag.unhoverRaw=nK.raw;ag.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,l,u,f,c,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,JZe?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(T,w,k){return Math.abs(T)"u"&&typeof T.clientY>"u"&&(T.clientX=o,T.clientY=s),l=new Date().getTime(),l-r._mouseDownTimei&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(n,c),!d){var w;try{w=new MouseEvent("click",T)}catch{var k=gD(T);w=document.createEvent("MouseEvents"),w.initMouseEvent("click",T.bubbles,T.cancelable,T.view,T.detail,T.screenX,T.screenY,k[0],k[1],T.ctrlKey,T.altKey,T.shiftKey,T.metaKey,T.button,T.relatedTarget)}h.dispatchEvent(w)}r._dragging=!1,r._dragged=!1}};function iK(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}ag.coverSlip=iK;function gD(e){return ZZe(e.changedTouches?e.changedTouches[0]:e,document.body)}});var th=J(($8t,oK)=>{"use strict";oK.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var uK=J((K8t,lK)=>{"use strict";var mD=th(),p2="data-savedcursor",sK="!!";lK.exports=function(t,r){var n=t.attr(p2);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a{"use strict";var yD=xa(),QZe=Ho();fK.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend",description:["Determines whether or not this legend is visible."].join(" ")},bgcolor:{valType:"color",editType:"legend",description:["Sets the legend background color.","Defaults to `layout.paper_bgcolor`."].join(" ")},bordercolor:{valType:"color",dflt:QZe.defaultLine,editType:"legend",description:"Sets the color of the border enclosing the legend."},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend",description:"Sets the width (in px) of the border enclosing the legend."},font:yD({editType:"legend",description:"Sets the font used to text the legend items."}),grouptitlefont:yD({editType:"legend",description:["Sets the font for group titles in legend.","Defaults to `legend.font` with its size increased about 10%."].join(" ")}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend",description:"Sets the orientation of the legend."},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend",description:["Determines the order at which the legend items are displayed.","If *normal*, the items are displayed top-to-bottom in the same","order as the input data.","If *reversed*, the items are displayed in the opposite order","as *normal*.","If *grouped*, the items are displayed in groups","(when a trace `legendgroup` is provided).","if *grouped+reversed*, the items are displayed in the opposite order","as *grouped*."].join(" ")},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend",description:["Sets the amount of vertical space (in px) between legend groups."].join(" ")},entrywidth:{valType:"number",min:0,editType:"legend",description:["Sets the width (in px or fraction) of the legend.","Use 0 to size the entry based on the text width,","when `entrywidthmode` is set to *pixels*."].join(" ")},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend",description:"Determines what entrywidth means."},indentation:{valType:"number",min:-15,dflt:0,editType:"legend",description:"Sets the indentation (in px) of the legend entries."},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend",description:["Determines if the legend items symbols scale with their corresponding *trace* attributes","or remain *constant* independent of the symbol size on the graph."].join(" ")},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend",description:"Sets the width (in px) of the legend item symbols (the part other than the title.text)."},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend",description:["Determines the behavior on legend item click.","*toggle* toggles the visibility of the item clicked on the graph.","*toggleothers* makes the clicked item the sole visible item on the graph.","*false* disables legend item click interactions."].join(" ")},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend",description:["Determines the behavior on legend item double-click.","*toggle* toggles the visibility of the item clicked on the graph.","*toggleothers* makes the clicked item the sole visible item on the graph.","*false* disables legend item double-click interactions."].join(" ")},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend",description:["Determines the behavior on legend group item click.","*toggleitem* toggles the visibility of the individual item clicked on the graph.","*togglegroup* toggles the visibility of all items in the same legendgroup as the item clicked on the graph."].join(" ")},x:{valType:"number",editType:"legend",description:["Sets the x position with respect to `xref` (in normalized coordinates) of the legend.","When `xref` is *paper*, defaults to *1.02* for vertical legends and","defaults to *0* for horizontal legends.","When `xref` is *container*, defaults to *1* for vertical legends and","defaults to *0* for horizontal legends.","Must be between *0* and *1* if `xref` is *container*.","and between *-2* and *3* if `xref` is *paper*."].join(" ")},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `x` refers to.","*container* spans the entire `width` of the plot.","*paper* refers to the width of the plotting area only."].join(" ")},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend",description:["Sets the legend's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the legend.","Value *auto* anchors legends to the right for `x` values greater than or equal to 2/3,","anchors legends to the left for `x` values less than or equal to 1/3 and","anchors legends with respect to their center otherwise."].join(" ")},y:{valType:"number",editType:"legend",description:["Sets the y position with respect to `yref` (in normalized coordinates) of the legend.","When `yref` is *paper*, defaults to *1* for vertical legends,","defaults to *-0.1* for horizontal legends on graphs w/o range sliders and","defaults to *1.1* for horizontal legends on graph with one or multiple range sliders.","When `yref` is *container*, defaults to *1*.","Must be between *0* and *1* if `yref` is *container*","and between *-2* and *3* if `yref` is *paper*."].join(" ")},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle",description:["Sets the container `y` refers to.","*container* spans the entire `height` of the plot.","*paper* refers to the height of the plotting area only."].join(" ")},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend",description:["Sets the legend's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the legend.","Value *auto* anchors legends at their bottom for `y` values less than or equal to 1/3,","anchors legends to at their top for `y` values greater than or equal to 2/3 and","anchors legends with respect to their middle otherwise."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Controls persistence of legend-driven changes in trace and pie label","visibility. Defaults to `layout.uirevision`."].join(" ")},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend",description:["Sets the vertical alignment of the symbols with respect to their associated text."].join(" ")},title:{text:{valType:"string",dflt:"",editType:"legend",description:["Sets the title of the legend."].join(" ")},font:yD({editType:"legend",description:["Sets this legend's title font.","Defaults to `legend.font` with its size increased about 20%."].join(" ")}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend",description:["Determines the location of legend's title","with respect to the legend items.","Defaulted to *top* with `orientation` is *h*.","Defaulted to *left* with `orientation` is *v*.","The *top left* options could be used to expand","top center and top right are for horizontal alignment","legend area in both x and y sides."].join(" ")},editType:"legend"},editType:"legend"}});var IA=J(PA=>{"use strict";PA.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};PA.isVertical=function(t){return t.orientation!=="h"};PA.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var _D=J((tRt,cK)=>{"use strict";var bD=zr(),Sf=gt(),eJe=ki(),tJe=Qi(),rJe=xD(),nJe=zp(),wD=IA();function iJe(e,t,r,n){var i=t[e]||{},a=eJe.newContainer(r,e);function o(P,D){return Sf.coerce(i,a,rJe,P,D)}var s=Sf.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(l){for(var u,f=function(P,D){var q=u._input,N=u;return Sf.coerce(q,N,tJe,P,D)},c=r.font||{},h=Sf.coerceFont(o,"grouptitlefont",c,{overrideDflt:{size:Math.round(c.size*1.1)}}),d=0,v=!1,m="normal",b=(r.shapes||[]).filter(function(P){return P.showlegend}),g=n.concat(b).filter(function(P){return e===(P.legend||"legend")}),_=0;_(e==="legend"?1:0));if(w===!1&&(r[e]=void 0),!(w===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),w!==!1)){o("borderwidth");var k=o("orientation"),x=o("yref"),M=o("xref"),A=k==="h",p=x==="paper",S=M==="paper",y,E,C,L="left";A?(y=0,bD.getComponentMethod("rangeslider","isVisible")(t.xaxis)?p?(E=1.1,C="bottom"):(E=1,C="top"):p?(E=-.1,C="top"):(E=0,C="bottom")):(E=1,C="auto",S?y=1.02:(y=1,L="right")),Sf.coerce(i,a,{x:{valType:"number",editType:"legend",min:S?-2:0,max:S?3:1,dflt:y}},"x"),Sf.coerce(i,a,{y:{valType:"number",editType:"legend",min:p?-2:0,max:p?3:1,dflt:E}},"y"),o("traceorder",m),wD.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",L),o("yanchor",C),o("valign"),Sf.noneOrAll(i,a,["x","y"]);var R=o("title.text");if(R){o("title.side",A?"left":"top");var I=Sf.extendFlat({},s,{size:Sf.bigFont(s.size)});Sf.coerceFont(o,"title.font",I)}}}}cK.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i{"use strict";var p0=zr(),qA=gt(),aJe=qA.pushUnique,TD=!0;hK.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&TD&&r.data&&r._context.showTips&&qA.notifier(qA._(r,"Double-click on legend to isolate one trace"),"long"),TD=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",f=i.hiddenlabels?i.hiddenlabels.slice():[],c=t.data()[0][0];if(c.groupTitle&&c.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Ie){return Ie.showlegend}),v=h.concat(d),m=c.trace;m._isShape&&(m=m._fullInput);var b=m.legendgroup,g,_,T,w,k,x,M={},A=[],p=[],S=[];function y(Ie,Re){var ze=A.indexOf(Ie),Be=M.visible;return Be||(Be=M.visible=[]),A.indexOf(Ie)===-1&&(A.push(Ie),ze=A.length-1),Be[ze]=Re,ze}var E=(i.shapes||[]).map(function(Ie){return Ie._input}),C=!1;function L(Ie,Re){E[Ie].visible=Re,C=!0}function R(Ie,Re){if(!(c.groupTitle&&!u)){var ze=Ie._fullInput||Ie,Be=ze._isShape,tt=ze.index;if(tt===void 0&&(tt=ze._index),p0.hasTransform(ze,"groupby")){var rt=p[tt];if(!rt){var ce=p0.getTransformIndices(ze,"groupby"),Ee=ce[ce.length-1];rt=qA.keyedContainer(ze,"transforms["+Ee+"].styles","target","value.visible"),p[tt]=rt}var Ae=rt.get(Ie._group);Ae===void 0&&(Ae=!0),Ae!==!1&&rt.set(Ie._group,Re),S[tt]=y(tt,ze.visible!==!1)}else{var Pe=ze.visible===!1?!1:Re;Be?L(tt,Pe):y(tt,Pe)}}}var I=m.legend,P=m._fullInput,D=P&&P._isShape;if(!D&&p0.traceIs(m,"pie-like")){var q=c.label,N=f.indexOf(q);if(l==="toggle")N===-1?f.push(q):f.splice(N,1);else if(l==="toggleothers"){var U=N!==-1,G=[];for(g=0;g{"use strict";dK.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var mK=J((iRt,gK)=>{"use strict";var pK=zr(),MD=IA();gK.exports=function(t,r,n){var i=r._inHover,a=MD.isGrouped(r),o=MD.isReversed(r),s={},l=[],u=!1,f={},c=0,h=0,d,v;function m(P,D,q){if(r.visible!==!1&&!(n&&P!==r._id))if(D===""||!MD.isGrouped(r)){var N="~~i"+c;l.push(N),s[N]=[q],c++}else l.indexOf(D)===-1?(l.push(D),u=!0,s[D]=[q]):s[D].push(q)}for(d=0;dS&&(p=S)}M[d][0]._groupMinRank=p,M[d][0]._preGroupSort=d}var y=function(P,D){return P[0]._groupMinRank-D[0]._groupMinRank||P[0]._preGroupSort-D[0]._preGroupSort},E=function(P,D){return P.trace.legendrank-D.trace.legendrank||P._preSort-D._preSort};for(M.forEach(function(P,D){P[0]._preGroupSort=D}),M.sort(y),d=0;d{"use strict";var FA=gt();function yK(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}og.formatPiePercent=function(t,r){var n=yK((t*100).toPrecision(3));return FA.numSeparate(n,r)+"%"};og.formatPieValue=function(t,r){var n=yK(t.toPrecision(10));return FA.numSeparate(n,r)};og.getFirstFilled=function(t,r){if(FA.isArrayOrTypedArray(t))for(var n=0;n{"use strict";var oJe=ln(),sJe=qr();xK.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?oJe.pointStyle(t,n,i,r):sJe.fill(t,r.color)}});var X1=J((sRt,TK)=>{"use strict";var wK=qr(),_K=g0().castOption,lJe=bK();TK.exports=function(t,r,n,i){var a=n.marker.line,o=_K(a.color,r.pts)||wK.defaultLine,s=_K(a.width,r.pts)||0;t.call(lJe,r,n,i).style("stroke-width",s).call(wK.stroke,o)}});var ED=J((lRt,EK)=>{"use strict";var Fl=Nr(),kD=zr(),pl=gt(),AK=pl.strTranslate,au=ln(),rc=qr(),SD=nu().extractOpts,zA=fs(),uJe=X1(),fJe=g0().castOption,cJe=AD(),MK=12,kK=5,sg=2,hJe=10,Z1=5;EK.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+cJe.itemGap*2)/2,l=AK(s,0),u=function(M,A,p,S){var y;if(M+1)y=M;else if(A&&A.width>0)y=A.width;else return 0;return a?S:Math.min(y,p)};t.each(function(M){var A=Fl.select(this),p=pl.ensureSingle(A,"g","layers");p.style("opacity",M[0].trace.opacity);var S=n.indentation,y=n.valign,E=M[0].lineHeight,C=M[0].height;if(y==="middle"&&S===0||!E||!C)p.attr("transform",null);else{var L={top:1,bottom:-1}[y],R=L*(.5*(E-C+3))||0,I=n.indentation;p.attr("transform",AK(I,R))}var P=p.selectAll("g.legendfill").data([M]);P.enter().append("g").classed("legendfill",!0);var D=p.selectAll("g.legendlines").data([M]);D.enter().append("g").classed("legendlines",!0);var q=p.selectAll("g.legendsymbols").data([M]);q.enter().append("g").classed("legendsymbols",!0),q.selectAll("g.legendpoints").data([M]).enter().append("g").classed("legendpoints",!0)}).each(x).each(h).each(v).each(d).each(b).each(w).each(T).each(f).each(c).each(g).each(_);function f(M){var A=SK(M),p=A.showFill,S=A.showLine,y=A.showGradientLine,E=A.showGradientFill,C=A.anyFill,L=A.anyLine,R=M[0],I=R.trace,P,D,q=SD(I),N=q.colorscale,U=q.reversescale,G=function($){if($.size())if(p)au.fillGroupStyle($,r,!0);else{var oe="legendfill-"+I.uid;au.gradient($,r,oe,CD(U),N,"fill")}},ee=function($){if($.size()){var oe="legendline-"+I.uid;au.lineGroupStyle($),au.gradient($,r,oe,CD(U),N,"stroke")}},Q=zA.hasMarkers(I)||!C?"M5,0":L?"M5,-2":"M5,-3",j=Fl.select(this),O=j.select(".legendfill").selectAll("path").data(p||E?[M]:[]);if(O.enter().append("path").classed("js-fill",!0),O.exit().remove(),O.attr("d",Q+"h"+o+"v6h-"+o+"z").call(G),S||y){var Z=u(void 0,I.line,hJe,kK);D=pl.minExtend(I,{line:{width:Z}}),P=[pl.minExtend(R,{trace:D})]}var K=j.select(".legendlines").selectAll("path").data(S||y?[P]:[]);K.enter().append("path").classed("js-line",!0),K.exit().remove(),K.attr("d",Q+(y?"l"+o+",0.0001":"h"+o)).call(S?au.lineGroupStyle:ee)}function c(M){var A=SK(M),p=A.anyFill,S=A.anyLine,y=A.showLine,E=A.showMarker,C=M[0],L=C.trace,R=!E&&!S&&!p&&zA.hasText(L),I,P;function D(O,Z,K,$){var oe=pl.nestedProperty(L,O).get(),te=pl.isArrayOrTypedArray(oe)&&Z?Z(oe):oe;if(a&&te&&$!==void 0&&(te=$),K){if(teK[1])return K[1]}return te}function q(O){return C._distinct&&C.index&&O[C.index]?O[C.index]:O[0]}if(E||R||y){var N={},U={};if(E){N.mc=D("marker.color",q),N.mx=D("marker.symbol",q),N.mo=D("marker.opacity",pl.mean,[.2,1]),N.mlc=D("marker.line.color",q),N.mlw=D("marker.line.width",pl.mean,[0,5],sg),U.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var G=D("marker.size",pl.mean,[2,16],MK);N.ms=G,U.marker.size=G}y&&(U.line={width:D("line.width",q,[0,10],kK)}),R&&(N.tx="Aa",N.tp=D("textposition",q),N.ts=10,N.tc=D("textfont.color",q),N.tf=D("textfont.family",q),N.tw=D("textfont.weight",q),N.ty=D("textfont.style",q),N.tv=D("textfont.variant",q),N.tC=D("textfont.textcase",q),N.tE=D("textfont.lineposition",q),N.tS=D("textfont.shadow",q)),I=[pl.minExtend(C,N)],P=pl.minExtend(L,U),P.selectedpoints=null,P.texttemplate=null}var ee=Fl.select(this).select("g.legendpoints"),Q=ee.selectAll("path.scatterpts").data(E?I:[]);Q.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),Q.exit().remove(),Q.call(au.pointStyle,P,r),E&&(I[0].mrc=3);var j=ee.selectAll("g.pointtext").data(R?I:[]);j.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),j.exit().remove(),j.selectAll("text").call(au.textPointStyle,P,r)}function h(M){var A=M[0].trace,p=A.type==="waterfall";if(M[0]._distinct&&p){var S=M[0].trace[M[0].dir].marker;return M[0].mc=S.color,M[0].mlw=S.line.width,M[0].mlc=S.line.color,m(M,this,"waterfall")}var y=[];A.visible&&p&&(y=M[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var E=Fl.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(y);E.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),E.exit().remove(),E.each(function(C){var L=Fl.select(this),R=A[C[0]].marker,I=u(void 0,R.line,Z1,sg);L.attr("d",C[1]).style("stroke-width",I+"px").call(rc.fill,R.color),I&&L.call(rc.stroke,R.line.color)})}function d(M){m(M,this)}function v(M){m(M,this,"funnel")}function m(M,A,p){var S=M[0].trace,y=S.marker||{},E=y.line||{},C=y.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",L=p?S.visible&&S.type===p:kD.traceIs(S,"bar"),R=Fl.select(A).select("g.legendpoints").selectAll("path.legend"+p).data(L?[M]:[]);R.enter().append("path").classed("legend"+p,!0).attr("d",C).attr("transform",l),R.exit().remove(),R.each(function(I){var P=Fl.select(this),D=I[0],q=u(D.mlw,y.line,Z1,sg);P.style("stroke-width",q+"px");var N=D.mcc;if(!n._inHover&&"mc"in D){var U=SD(y),G=U.mid;G===void 0&&(G=(U.max+U.min)/2),N=au.tryColorscale(y,"")(G)}var ee=N||D.mc||y.color,Q=y.pattern,j=Q&&au.getPatternAttr(Q.shape,0,"");if(j){var O=au.getPatternAttr(Q.bgcolor,0,null),Z=au.getPatternAttr(Q.fgcolor,0,null),K=Q.fgopacity,$=CK(Q.size,8,10),oe=CK(Q.solidity,.5,1),te="legend-"+S.uid;P.call(au.pattern,"legend",r,te,j,$,oe,N,Q.fillmode,O,Z,K)}else P.call(rc.fill,ee);q&&rc.stroke(P,D.mlc||E.color)})}function b(M){var A=M[0].trace,p=Fl.select(this).select("g.legendpoints").selectAll("path.legendbox").data(A.visible&&kD.traceIs(A,"box-violin")?[M]:[]);p.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),p.exit().remove(),p.each(function(){var S=Fl.select(this);if((A.boxpoints==="all"||A.points==="all")&&rc.opacity(A.fillcolor)===0&&rc.opacity((A.line||{}).color)===0){var y=pl.minExtend(A,{marker:{size:a?MK:pl.constrain(A.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});p.call(au.pointStyle,y,r)}else{var E=u(void 0,A.line,Z1,sg);S.style("stroke-width",E+"px").call(rc.fill,A.fillcolor),E&&rc.stroke(S,A.line.color)}})}function g(M){var A=M[0].trace,p=Fl.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(A.visible&&A.type==="candlestick"?[M,M]:[]);p.enter().append("path").classed("legendcandle",!0).attr("d",function(S,y){return y?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),p.exit().remove(),p.each(function(S,y){var E=Fl.select(this),C=A[y?"increasing":"decreasing"],L=u(void 0,C.line,Z1,sg);E.style("stroke-width",L+"px").call(rc.fill,C.fillcolor),L&&rc.stroke(E,C.line.color)})}function _(M){var A=M[0].trace,p=Fl.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(A.visible&&A.type==="ohlc"?[M,M]:[]);p.enter().append("path").classed("legendohlc",!0).attr("d",function(S,y){return y?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),p.exit().remove(),p.each(function(S,y){var E=Fl.select(this),C=A[y?"increasing":"decreasing"],L=u(void 0,C.line,Z1,sg);E.style("fill","none").call(au.dashLine,C.line.dash,L),L&&rc.stroke(E,C.line.color)})}function T(M){k(M,this,"pie")}function w(M){k(M,this,"funnelarea")}function k(M,A,p){var S=M[0],y=S.trace,E=p?y.visible&&y.type===p:kD.traceIs(y,p),C=Fl.select(A).select("g.legendpoints").selectAll("path.legend"+p).data(E?[M]:[]);if(C.enter().append("path").classed("legend"+p,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),C.exit().remove(),C.size()){var L=y.marker||{},R=u(fJe(L.line.width,S.pts),L.line,Z1,sg),I="pieLike",P=pl.minExtend(y,{marker:{line:{width:R}}},I),D=pl.minExtend(S,{trace:P},I);uJe(C,D,P,r)}}function x(M){var A=M[0].trace,p,S=[];if(A.visible)switch(A.type){case"histogram2d":case"heatmap":S=[["M-15,-2V4H15V-2Z"]],p=!0;break;case"choropleth":case"choroplethmapbox":S=[["M-6,-6V6H6V-6Z"]],p=!0;break;case"densitymapbox":S=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],p="radial";break;case"cone":S=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],p=!1;break;case"streamtube":S=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],p=!1;break;case"surface":S=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],p=!0;break;case"mesh3d":S=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],p=!1;break;case"volume":S=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],p=!0;break;case"isosurface":S=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],p=!1;break}var y=Fl.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(S);y.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),y.exit().remove(),y.each(function(E,C){var L=Fl.select(this),R=SD(A),I=R.colorscale,P=R.reversescale,D=function(G){if(G.size()){var ee="legendfill-"+A.uid;au.gradient(G,r,ee,CD(P,p==="radial"),I,"fill")}},q;if(I){if(!p){var U=I.length;q=C===0?I[P?U-1:0][1]:C===1?I[P?0:U-1][1]:I[Math.floor((U-1)/2)][1]}}else{var N=A.vertexcolor||A.facecolor||A.color;q=pl.isArrayOrTypedArray(N)?N[C]||N[0]:N}L.attr("d",E[0]),q?L.call(rc.fill,q):L.call(D)})}};function CD(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function SK(e){var t=e[0].trace,r=t.contours,n=zA.hasLines(t),i=zA.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var l=r.coloring;l==="lines"?o=!0:n=l==="none"||l==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(l==="fill"||l==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function CK(e,t,r){return e&&pl.isArrayOrTypedArray(e)?t:e>r?r:e}});var PD=J((uRt,OK)=>{"use strict";var Hu=Nr(),po=gt(),DD=ea(),m0=zr(),LK=P1(),LD=iu(),Ro=ln(),OA=qr(),lg=ca(),DK=vK(),Yo=AD(),RD=Vo(),zK=RD.LINE_SPACING,$1=RD.FROM_TL,RK=RD.FROM_BR,PK=mK(),vJe=ED(),IK=IA(),J1=1,dJe=/^legend[0-9]*$/;OK.exports=function(t,r){if(r)qK(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Hu.select(this),f=u.attr("class"),c=f.split(" ")[0];c.match(dJe)&&i.indexOf(c)===-1&&u.remove()});for(var o=0;o1)}var v=n.hiddenlabels||[];if(!s&&(!n.showlegend||!l.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),DD.autoMargin(e,i);var m=po.ensureSingle(o,"g",i,function(A){s||A.attr("pointer-events","all")}),b=po.ensureSingleById(n._topdefs,"clipPath",a,function(A){A.append("rect")}),g=po.ensureSingle(m,"rect","bg",function(A){A.attr("shape-rendering","crispEdges")});g.call(OA.stroke,r.bordercolor).call(OA.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var _=po.ensureSingle(m,"g","scrollbox"),T=r.title;r._titleWidth=0,r._titleHeight=0;var w;T.text?(w=po.ensureSingle(_,"text",i+"titletext"),w.attr("text-anchor","start").call(Ro.font,T.font).text(T.text),BA(w,_,e,r,J1)):_.selectAll("."+i+"titletext").remove();var k=po.ensureSingle(m,"rect","scrollbar",function(A){A.attr(Yo.scrollBarEnterAttrs).call(OA.fill,Yo.scrollBarColor)}),x=_.selectAll("g.groups").data(l);x.enter().append("g").attr("class","groups"),x.exit().remove();var M=x.selectAll("g.traces").data(po.identity);M.enter().append("g").attr("class","traces"),M.exit().remove(),M.style("opacity",function(A){var p=A[0].trace;return m0.traceIs(p,"pie-like")?v.indexOf(A[0].label)!==-1?.5:1:p.visible==="legendonly"?.5:1}).each(function(){Hu.select(this).call(gJe,e,r)}).call(vJe,e,r).each(function(){s||Hu.select(this).call(mJe,e,i)}),po.syncOrAsync([DD.previousPromises,function(){return bJe(e,x,M,r)},function(){var A=n._size,p=r.borderwidth,S=r.xref==="paper",y=r.yref==="paper";if(T.text&&pJe(w,r,p),!s){var E,C;S?E=A.l+A.w*r.x-$1[UA(r)]*r._width:E=n.width*r.x-$1[UA(r)]*r._width,y?C=A.t+A.h*(1-r.y)-$1[HA(r)]*r._effHeight:C=n.height*(1-r.y)-$1[HA(r)]*r._effHeight;var L=wJe(e,i,E,C);if(L)return;if(n.margin.autoexpand){var R=E,I=C;E=S?po.constrain(E,0,n.width-r._width):R,C=y?po.constrain(C,0,n.height-r._effHeight):I,E!==R&&po.log("Constrain "+i+".x to make legend fit inside graph"),C!==I&&po.log("Constrain "+i+".y to make legend fit inside graph")}Ro.setTranslate(m,E,C)}if(k.on(".drag",null),m.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var P=r._effHeight;s&&(P=r._height),g.attr({width:r._width-p,height:P-p,x:p/2,y:p/2}),Ro.setTranslate(_,0,0),b.select("rect").attr({width:r._width-2*p,height:P-2*p,x:p,y:p}),Ro.setClipUrl(_,a,e),Ro.setRect(k,0,0,0,0),delete r._scrollY}else{var D=Math.max(Yo.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),q=r._effHeight-D-2*Yo.scrollBarMargin,N=r._height-r._effHeight,U=q/N,G=Math.min(r._scrollY||0,N);g.attr({width:r._width-2*p+Yo.scrollBarWidth+Yo.scrollBarMargin,height:r._effHeight-p,x:p/2,y:p/2}),b.select("rect").attr({width:r._width-2*p+Yo.scrollBarWidth+Yo.scrollBarMargin,height:r._effHeight-2*p,x:p,y:p+G}),Ro.setClipUrl(_,a,e),oe(G,D,U),m.on("wheel",function(){G=po.constrain(r._scrollY+Hu.event.deltaY/q*N,0,N),oe(G,D,U),G!==0&&G!==N&&Hu.event.preventDefault()});var ee,Q,j,O=function(fe,ge,Ce){var Ne=(Ce-ge)/U+fe;return po.constrain(Ne,0,N)},Z=function(fe,ge,Ce){var Ne=(ge-Ce)/U+fe;return po.constrain(Ne,0,N)},K=Hu.behavior.drag().on("dragstart",function(){var fe=Hu.event.sourceEvent;fe.type==="touchstart"?ee=fe.changedTouches[0].clientY:ee=fe.clientY,j=G}).on("drag",function(){var fe=Hu.event.sourceEvent;fe.buttons===2||fe.ctrlKey||(fe.type==="touchmove"?Q=fe.changedTouches[0].clientY:Q=fe.clientY,G=O(j,ee,Q),oe(G,D,U))});k.call(K);var $=Hu.behavior.drag().on("dragstart",function(){var fe=Hu.event.sourceEvent;fe.type==="touchstart"&&(ee=fe.changedTouches[0].clientY,j=G)}).on("drag",function(){var fe=Hu.event.sourceEvent;fe.type==="touchmove"&&(Q=fe.changedTouches[0].clientY,G=Z(j,ee,Q),oe(G,D,U))});_.call($)}function oe(fe,ge,Ce){r._scrollY=e._fullLayout[i]._scrollY=fe,Ro.setTranslate(_,0,-fe),Ro.setRect(k,r._width,Yo.scrollBarMargin+fe*Ce,Yo.scrollBarWidth,ge),b.select("rect").attr("y",p+fe)}if(e._context.edits.legendPosition){var te,V,ne,W;m.classed("cursor-move",!0),LD.init({element:m.node(),gd:e,prepFn:function(fe){if(fe.target!==k.node()){var ge=Ro.getTranslate(m);ne=ge.x,W=ge.y}},moveFn:function(fe,ge){if(ne!==void 0&&W!==void 0){var Ce=ne+fe,Ne=W+ge;Ro.setTranslate(m,Ce,Ne),te=LD.align(Ce,r._width,A.l,A.l+A.w,r.xanchor),V=LD.align(Ne+r._height,-r._height,A.t+A.h,A.t,r.yanchor)}},doneFn:function(){if(te!==void 0&&V!==void 0){var fe={};fe[i+".x"]=te,fe[i+".y"]=V,m0.call("_guiRelayout",e,fe)}},clickFn:function(fe,ge){var Ce=o.selectAll("g.traces").filter(function(){var Ne=this.getBoundingClientRect();return ge.clientX>=Ne.left&&ge.clientX<=Ne.right&&ge.clientY>=Ne.top&&ge.clientY<=Ne.bottom});Ce.size()>0&&NK(e,m,Ce,fe,ge)}})}}],e)}}function NA(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function NK(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a._expandedIndex,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),m0.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=LK.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&DK(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=LK.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&DK(r,e,n)}}function gJe(e,t,r){var n=jA(r),i=e.data()[0][0],a=i.trace,o=m0.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,l=r._maxNameLength,u,f;i.groupTitle?(u=i.groupTitle.text,f=i.groupTitle.font):(f=r.font,r.entries?u=i.text:(u=o?i.label:a.name,a._meta&&(u=po.templateString(u,a._meta))));var c=po.ensureSingle(e,"text",n+"text");c.attr("text-anchor","start").call(Ro.font,f).text(s?FK(u,l):u);var h=r.indentation+r.itemwidth+Yo.itemGap*2;lg.positionText(c,h,0),s?c.call(lg.makeEditable,{gd:t,text:u}).call(BA,e,t,r).on("edit",function(d){this.text(FK(d,l)).call(BA,e,t,r);var v=i.trace._fullInput||{},m={};if(m0.hasTransform(v,"groupby")){var b=m0.getTransformIndices(v,"groupby"),g=b[b.length-1],_=po.keyedContainer(v,"transforms["+g+"].styles","target","value.name");_.set(i.trace._group,d),m=_.constructUpdate()}else m.name=d;return v._isShape?m0.call("_guiRelayout",t,"shapes["+a.index+"].name",m.name):m0.call("_guiRestyle",t,m,a.index)}):BA(c,e,t,r)}function FK(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function mJe(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=po.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(OA.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTimen&&(a=Math.max(a-1,1)),NK(t,s,e,a,Hu.event)}}))}function BA(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),lg.convertToTspans(e,r,function(){yJe(t,r,n,i)})}function yJe(e,t,r,n){var i=e.data()[0][0];if(!r._inHover&&i&&!i.trace.showlegend){e.remove();return}var a=e.select("g[class*=math-group]"),o=a.node(),s=jA(r);r||(r=t._fullLayout[s]);var l=r.borderwidth,u;n===J1?u=r.title.font:i.groupTitle?u=i.groupTitle.font:u=r.font;var f=u.size*zK,c,h;if(o){var d=Ro.bBox(o);c=d.height,h=d.width,n===J1?Ro.setTranslate(a,l,l+c*.75):Ro.setTranslate(a,0,c*.25)}else{var v="."+s+(n===J1?"title":"")+"text",m=e.select(v),b=lg.lineCount(m),g=m.node();if(c=f*b,h=g?Ro.bBox(g).width:0,n===J1)r.title.side==="left"&&(h+=Yo.itemGap*2),lg.positionText(m,l+Yo.titlePad,l+f);else{var _=Yo.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(_=Yo.itemGap,h-=r.indentation+r.itemwidth),lg.positionText(m,_,-f*((b-1)/2-.3))}}n===J1?(r._titleWidth=h,r._titleHeight=c):(i.lineHeight=f,i.height=Math.max(c,16)+3,i.width=h)}function xJe(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function bJe(e,t,r,n){var i=e._fullLayout,a=jA(n);n||(n=i[a]);var o=i._size,s=IK.isVertical(n),l=IK.isGrouped(n),u=n.entrywidthmode==="fraction",f=n.borderwidth,c=2*f,h=Yo.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(f+h),m=HA(n),b=n.y<0||n.y===0&&m==="top",g=n.y>1||n.y===1&&m==="bottom",_=n.tracegroupgap,T={};n._maxHeight=Math.max(b||g?i.height/2:o.h,30);var w=0;n._width=0,n._height=0;var k=xJe(n);if(s)r.each(function(j){var O=j[0].height;Ro.setTranslate(this,f+k[0],f+k[1]+n._height+O/2+h),n._height+=O,n._width=Math.max(n._width,j[0].width)}),w=d+n._width,n._width+=h+d+c,n._height+=v,l&&(t.each(function(j,O){Ro.setTranslate(this,0,O*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var x=UA(n),M=n.x<0||n.x===0&&x==="right",A=n.x>1||n.x===1&&x==="left",p=g||b,S=i.width/2;n._maxWidth=Math.max(M?p&&x==="left"?o.l+o.w:S:A?p&&x==="right"?o.r+o.w:S:o.w,2*d);var y=0,E=0;r.each(function(j){var O=NA(j,n,d);y=Math.max(y,O),E+=O}),w=null;var C=0;if(l){var L=0,R=0,I=0;t.each(function(){var j=0,O=0;Hu.select(this).selectAll("g.traces").each(function(K){var $=NA(K,n,d),oe=K[0].height;Ro.setTranslate(this,k[0],k[1]+f+h+oe/2+O),O+=oe,j=Math.max(j,$),T[K[0].trace.legendgroup]=j});var Z=j+h;R>0&&Z+f+R>n._maxWidth?(C=Math.max(C,R),R=0,I+=L+_,L=O):L=Math.max(L,O),Ro.setTranslate(this,R,I),R+=Z}),n._width=Math.max(C,R)+f,n._height=I+L+v}else{var P=r.size(),D=E+c+(P-1)*h=n._maxWidth&&(C=Math.max(C,G),N=0,U+=q,n._height+=q,q=0),Ro.setTranslate(this,k[0]+f+N,k[1]+f+U+O/2+h),G=N+Z+h,N+=K,q=Math.max(q,O)}),D?(n._width=N+c,n._height=q+v):(n._width=Math.max(C,G)+c,n._height+=q+v)}}n._width=Math.ceil(Math.max(n._width+k[0],n._titleWidth+2*(f+Yo.titlePad))),n._height=Math.ceil(Math.max(n._height+k[1],n._titleHeight+2*(f+Yo.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var ee=e._context.edits,Q=ee.legendText||ee.legendPosition;r.each(function(j){var O=Hu.select(this).select("."+a+"toggle"),Z=j[0].height,K=j[0].trace.legendgroup,$=NA(j,n,d);l&&K!==""&&($=T[K]);var oe=Q?d:w||$;!s&&!u&&(oe+=h/2),Ro.setRect(O,0,-Z/2,oe,Z)})}function wJe(e,t,r,n){var i=e._fullLayout,a=i[t],o=UA(a),s=HA(a),l=a.xref==="paper",u=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var f=a.y<.5?"b":"t",c=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(l&&u)return DD.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*$1[o],r:a._width*RK[o],b:a._effHeight*RK[s],t:a._effHeight*$1[s]});l?e._fullLayout._reservedMargin[t][f]=h[f]:u||a.orientation==="v"?e._fullLayout._reservedMargin[t][c]=h[c]:e._fullLayout._reservedMargin[t][f]=h[f]}function UA(e){return po.isRightAnchor(e)?"right":po.isCenterAnchor(e)?"center":"left"}function HA(e){return po.isBottomAnchor(e)?"bottom":po.isMiddleAnchor(e)?"middle":"top"}function jA(e){return e._id||"legend"}});var zD=J(FD=>{"use strict";var ug=Nr(),$v=dn(),BK=ls(),eo=gt(),_Je=eo.pushUnique,ID=eo.strTranslate,TJe=eo.strRotate,AJe=P1(),nc=ca(),MJe=uK(),Kh=ln(),hs=qr(),VA=iu(),Qh=nn(),kJe=Eo().zindexSeparator,Q1=zr(),rh=Qf(),fg=zb(),SJe=_D(),CJe=PD(),XK=fg.YANGLE,qD=Math.PI*XK/180,EJe=1/Math.sin(qD),LJe=Math.cos(qD),DJe=Math.sin(qD),Ra=fg.HOVERARROWSIZE,ti=fg.HOVERTEXTPAD,UK={box:!0,ohlc:!0,violin:!0,candlestick:!0},RJe={scatter:!0,scattergl:!0,splom:!0};function HK(e,t){return e.distance-t.distance}FD.hover=function(t,r,n,i){t=eo.getGraphDiv(t);var a=r.target;eo.throttle(t._fullLayout._uid+fg.HOVERID,fg.HOVERMINTIME,function(){PJe(t,r,n,i,a)})};FD.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=QK(i),o=eQ(i),s=t.map(function(b){var g=b._x0||b.x0||b.x||0,_=b._x1||b.x1||b.x||0,T=b._y0||b.y0||b.y||0,w=b._y1||b.y1||b.y||0,k=b.eventData;if(k){var x=Math.min(g,_),M=Math.max(g,_),A=Math.min(T,w),p=Math.max(T,w),S=b.trace;if(Q1.traceIs(S,"gl3d")){var y=i._fullLayout[S.scene]._scene.container,E=y.offsetLeft,C=y.offsetTop;x+=E,M+=E,A+=C,p+=C}k.bbox={x0:x+o,x1:M+o,y0:A+a,y1:p+a},r.inOut_bbox&&r.inOut_bbox.push(k.bbox)}else k=!1;return{color:b.color||hs.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:k}}),l=!1,u=JK(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||hs.background,container:ug.select(r.container),outerContainer:r.outerContainer||r.container}),f=u.hoverLabels,c=5,h=0,d=0;f.sort(function(b,g){return b.y0-g.y0}).each(function(b,g){var _=b.y0-b.by/2;_-cM[0]._length||W<0||W>A[0]._length)return VA.unhoverRaw(e,t)}if(t.pointerX=ne+M[0]._offset,t.pointerY=W+A[0]._offset,"xval"in t?I=rh.flat(a,t.xval):I=rh.p2c(M,ne),"yval"in t?P=rh.flat(a,t.yval):P=rh.p2c(A,W),!$v(I[0])||!$v(P[0]))return eo.warn("Fx.hover failed",t,e),VA.unhoverRaw(e,t)}var Ce=1/0;function Ne(or,tn){for(q=0;qK&&(L.splice(0,K),Ce=L[0].distance),c&&C!==0&&L.length===0){Z.distance=C,Z.index=!1;var Br=U._module.hoverPoints(Z,j,O,"closest",{hoverLayer:s._hoverlayer});if(Br&&(Br=Br.filter(function(wn){return wn.spikeDistance<=C})),Br&&Br.length){var qn,kn=Br.filter(function(wn){return wn.xa.showspikes&&wn.xa.spikesnap!=="hovered data"});if(kn.length){var Yn=kn[0];$v(Yn.x0)&&$v(Yn.y0)&&(qn=me(Yn),(!$.vLinePoint||$.vLinePoint.spikeDistance>qn.spikeDistance)&&($.vLinePoint=qn))}var Wn=Br.filter(function(wn){return wn.ya.showspikes&&wn.ya.spikesnap!=="hovered data"});if(Wn.length){var Fn=Wn[0];$v(Fn.x0)&&$v(Fn.y0)&&(qn=me(Fn),(!$.hLinePoint||$.hLinePoint.spikeDistance>qn.spikeDistance)&&($.hLinePoint=qn))}}}}}Ne();function pe(or,tn,Lr){for(var Gr=null,sn=1/0,Hr,Br=0;Br0&&Math.abs(or.distance)ke-1;Tt--)_t(L[Tt]);L=lt,Be()}var nt=e._hoverdata,bt=[],At=QK(e),Ye=eQ(e);for(D=0;D1||L.length>1)||h==="closest"&&oe&&L.length>1,Vt=hs.combine(s.plot_bgcolor||hs.background,s.paper_bgcolor),er=JK(L,{gd:e,hovermode:h,rotateLabels:St,bgColor:Vt,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),_r=er.hoverLabels;if(rh.isUnifiedHover(h)||(qJe(_r,St,s,er.commonLabelBoundingBox),KK(_r,St,s._invScaleX,s._invScaleY)),i&&i.tagName){var br=Q1.getComponentMethod("annotations","hasClickToShow")(e,bt);MJe(ug.select(i),br?"pointer":"")}!i||n||!NJe(e,t,nt)||(nt&&e.emit("plotly_unhover",{event:t,points:nt}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:M,yaxes:A,xvals:I,yvals:P}))}function ZK(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var IJe=/([\s\S]*)<\/extra>/;function JK(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,l=t.outerContainer,u=t.commonLabelOpts||{};if(e.length===0)return[[]];var f=t.fontFamily||fg.HOVERFONT,c=t.fontSize||fg.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,v=t.fontVariant||n.font.variant,m=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,g=t.fontShadow||n.font.shadow,_=e[0],T=_.xa,w=_.ya,k=i.charAt(0),x=k+"Label",M=_[x];if(M===void 0&&T.type==="multicategory")for(var A=0;An.width-nt&&(bt=n.width-nt),Pe.attr("d","M"+(wt-bt)+",0L"+(wt-bt+Ra)+","+Tt+Ra+"H"+nt+"v"+Tt+(ti*2+it.height)+"H"+-nt+"V"+Tt+Ra+"H"+(wt-bt-Ra)+"Z"),wt=bt,q.minX=wt-nt,q.maxX=wt+nt,T.side==="top"?(q.minY=_t-(ti*2+it.height),q.maxY=_t-ti):(q.minY=_t+ti,q.maxY=_t+(ti*2+it.height))}else{var At,Ye,je;w.side==="right"?(At="start",Ye=1,je="",wt=T._offset+T._length):(At="end",Ye=-1,je="-",wt=T._offset),_t=w._offset+(_.y0+_.y1)/2,He.attr("text-anchor",At),Pe.attr("d","M0,0L"+je+Ra+","+Ra+"V"+(ti+it.height/2)+"h"+je+(ti*2+it.width)+"V-"+(ti+it.height/2)+"H"+je+Ra+"V-"+Ra+"Z"),q.minY=_t-(ti+it.height/2),q.maxY=_t+(ti+it.height/2),w.side==="right"?(q.minX=wt+Ra,q.maxX=wt+Ra+(ti*2+it.width)):(q.minX=wt-Ra-(ti*2+it.width),q.maxX=wt-Ra);var $e=it.height/2,ve=S-it.top-$e,Y="clip"+n._uid+"commonlabel"+w._id,ie;if(wt=0?rt=Re:ze+W=0?rt=ze:Be+W=0?ce=me:Ie+fe=0?ce=Ie:tt+fe=0,(Ae.idealAlign==="top"||!at)&&ft?(je-=ve/2,Ae.anchor="end"):at?(je+=ve/2,Ae.anchor="start"):Ae.anchor="middle",Ae.crossPos=je;else{if(Ae.pos=je,at=Ye+$e/2+Ve<=y,ft=Ye-$e/2-Ve>=0,(Ae.idealAlign==="left"||!at)&&ft)Ye-=$e/2,Ae.anchor="end";else if(at)Ye+=$e/2,Ae.anchor="start";else{Ae.anchor="middle";var Ht=Ve/2,Xt=Ye+Ht-y,St=Ye-Ht;Xt>0&&(Ye-=Xt),St<0&&(Ye+=-St)}Ae.crossPos=Ye}_t.attr("text-anchor",Ae.anchor),nt&&Tt.attr("text-anchor",Ae.anchor),Pe.attr("transform",ID(Ye,je)+(a?TJe(XK):""))}),{hoverLabels:Ee,commonLabelBoundingBox:q}}function jK(e,t,r,n,i,a){var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=eo.templateString(e.name,e.trace._meta)),o=GK(e.name,e.nameLength));var l=r.charAt(0),u=l==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"
"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"
"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[l+"Label"]===i?s=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"
":"")+e.text),e.extraText!==void 0&&(s+=(s?"
":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o);var f=e.hovertemplate||!1;if(f){var c=e.hovertemplateLabels||e;e[l+"Label"]!==i&&(c[l+"other"]=c[l+"Val"],c[l+"otherLabel"]=c[l+"Label"]),s=eo.hovertemplateString(f,c,n._d3locale,e.eventData[0]||{},e.trace._meta),s=s.replace(IJe,function(h,d){return o=GK(d,e.nameLength),""})}return[s,o]}function qJe(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,l=e.size(),u=new Array(l),f=0,c=n.minX,h=n.maxX,d=n.minY,v=n.maxY,m=function(I){return I*r._invScaleX},b=function(I){return I*r._invScaleY};e.each(function(I){var P=I[i],D=I[a],q=P._id.charAt(0)==="x",N=P.range;f===0&&N&&N[0]>N[1]!==q&&(s=-1);var U=0,G=q?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var ee=$K(I,t),Q=I.anchor,j=Q==="end"?-1:1,O,Z;if(Q==="middle")O=I.crossPos+(q?b(ee.y-I.by/2):m(I.bx/2+I.tx2width/2)),Z=O+(q?b(I.by):m(I.bx));else if(q)O=I.crossPos+b(Ra+ee.y)-b(I.by/2-Ra),Z=O+b(I.by);else{var K=m(j*Ra+ee.x),$=K+m(j*I.bx);O=I.crossPos+Math.min(K,$),Z=I.crossPos+Math.max(K,$)}q?d!==void 0&&v!==void 0&&Math.min(Z,v)-Math.max(O,d)>1&&(D.side==="left"?(U=D._mainLinePosition,G=r.width):G=D._mainLinePosition):c!==void 0&&h!==void 0&&Math.min(Z,h)-Math.max(O,c)>1&&(D.side==="top"?(U=D._mainLinePosition,G=r.height):G=D._mainLinePosition)}u[f++]=[{datum:I,traceIndex:I.trace.index,dp:0,pos:I.pos,posref:I.posref,size:I.by*(q?EJe:1)/2,pmin:U,pmax:G}]}),u.sort(function(I,P){return I[0].posref-P[0].posref||s*(P[0].traceIndex-I[0].traceIndex)});var g,_,T,w,k,x,M;function A(I){var P=I[0],D=I[I.length-1];if(_=P.pmin-P.pos-P.dp+P.size,T=D.pos+D.dp+D.size-P.pmax,_>.01){for(k=I.length-1;k>=0;k--)I[k].dp+=_;g=!1}if(!(T<.01)){if(_<-.01){for(k=I.length-1;k>=0;k--)I[k].dp-=T;g=!1}if(g){var q=0;for(w=0;wP.pmax&&q++;for(w=I.length-1;w>=0&&!(q<=0);w--)x=I[w],x.pos>P.pmax-1&&(x.del=!0,q--);for(w=0;w=0;k--)I[k].dp-=T;for(w=I.length-1;w>=0&&!(q<=0);w--)x=I[w],x.pos+x.dp+x.size>P.pmax&&(x.del=!0,q--)}}}for(;!g&&o<=l;){for(o++,g=!0,w=0;w.01){for(k=S.length-1;k>=0;k--)S[k].dp+=_;for(p.push.apply(p,S),u.splice(w+1,1),M=0,k=p.length-1;k>=0;k--)M+=p[k].dp;for(T=M/p.length,k=p.length-1;k>=0;k--)p[k].dp-=T;g=!1}else w++}u.forEach(A)}for(w=u.length-1;w>=0;w--){var C=u[w];for(k=C.length-1;k>=0;k--){var L=C[k],R=L.datum;R.offset=L.dp,R.del=L.del}}}function $K(e,t){var r=0,n=e.offset;return t&&(n*=-DJe,r=e.offset*LJe),{x:r,y:n}}function FJe(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Ra+ti),n=r+t*(e.txwidth+ti),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+ti),{alignShift:t,textShiftX:r,text2ShiftX:n}}function KK(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=ug.select(this);if(o.del)return s.remove();var l=s.select("text.nums"),u=o.anchor,f=u==="end"?-1:1,c=FJe(o),h=$K(o,t),d=h.x,v=h.y,m=u==="middle";s.select("path").attr("d",m?"M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":"M0,0L"+i(f*Ra+d)+","+a(Ra+v)+"v"+a(o.by/2-Ra)+"h"+i(f*o.bx)+"v-"+a(o.by)+"H"+i(f*Ra+d)+"V"+a(v-Ra)+"Z");var b=d+c.textShiftX,g=v+o.ty0-o.by/2+ti,_=o.textAlign||"auto";_!=="auto"&&(_==="left"&&u!=="start"?(l.attr("text-anchor","start"),b=m?-o.bx/2-o.tx2width/2+ti:-o.bx-ti):_==="right"&&u!=="end"&&(l.attr("text-anchor","end"),b=m?o.bx/2-o.tx2width/2-ti:o.bx+ti)),l.call(nc.positionText,i(b),a(g)),o.tx2width&&(s.select("text.name").call(nc.positionText,i(c.text2ShiftX+c.alignShift*ti+d),a(v+o.ty0-o.by/2+ti)),s.select("rect").call(Kh.setRect,i(c.text2ShiftX+(c.alignShift-1)*o.tx2width/2+d),a(v-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function zJe(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||$v(h)&&h===0}var s=Array.isArray(r)?function(h,d){var v=eo.castOption(i,r,h);return o(v)?v:eo.extractOption({},n,"",d)}:function(h,d){return eo.extractOption(a,n,h,d)};function l(h,d,v){var m=s(d,v);o(m)&&(e[h]=m)}if(l("hoverinfo","hi","hoverinfo"),l("bgcolor","hbg","hoverlabel.bgcolor"),l("borderColor","hbc","hoverlabel.bordercolor"),l("fontFamily","htf","hoverlabel.font.family"),l("fontSize","hts","hoverlabel.font.size"),l("fontColor","htc","hoverlabel.font.color"),l("fontWeight","htw","hoverlabel.font.weight"),l("fontStyle","hty","hoverlabel.font.style"),l("fontVariant","htv","hoverlabel.font.variant"),l("nameLength","hnl","hoverlabel.namelength"),l("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=eo.constrain(e.x0,0,e.xa._length),e.x1=eo.constrain(e.x1,0,e.xa._length),e.y0=eo.constrain(e.y0,0,e.ya._length),e.y1=eo.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:Qh.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:Qh.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=Qh.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+Qh.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var f=Qh.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+f+" / -"+Qh.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+f,t==="y"&&(e.distance+=1)}var c=e.hoverinfo||e.trace.hoverinfo;return c&&c!=="all"&&(c=Array.isArray(c)?c:c.split("+"),c.indexOf("x")===-1&&(e.xLabel=void 0),c.indexOf("y")===-1&&(e.yLabel=void 0),c.indexOf("z")===-1&&(e.zLabel=void 0),c.indexOf("text")===-1&&(e.text=void 0),c.indexOf("name")===-1&&(e.name=void 0)),e}function VK(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,f;if(n.selectAll(".spikeline").remove(),!!(l||s)){var c=hs.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,f=h&&h.ya;var m=f.spikesnap;m==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=f._offset+h.y);var b=BK.readability(h.color,c)<1.5?hs.contrast(c):h.color,g=f.spikemode,_=f.spikethickness,T=f.spikecolor||b,w=Qh.getPxPosition(e,f),k,x;if(g.indexOf("toaxis")!==-1||g.indexOf("across")!==-1){if(g.indexOf("toaxis")!==-1&&(k=w,x=d),g.indexOf("across")!==-1){var M=f._counterDomainMin,A=f._counterDomainMax;f.anchor==="free"&&(M=Math.min(M,f.position),A=Math.max(A,f.position)),k=a.l+M*a.w,x=a.l+A*a.w}n.insert("line",":first-child").attr({x1:k,x2:x,y1:v,y2:v,"stroke-width":_,stroke:T,"stroke-dasharray":Kh.dashStyle(f.spikedash,_)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:k,x2:x,y1:v,y2:v,"stroke-width":_+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}g.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:w+(f.side!=="right"?_:-_),cy:v,r:_,fill:T}).classed("spikeline",!0)}if(l){var p=t.vLinePoint,S,y;u=p&&p.xa,f=p&&p.ya;var E=u.spikesnap;E==="cursor"?(S=o.pointerX,y=o.pointerY):(S=u._offset+p.x,y=f._offset+p.y);var C=BK.readability(p.color,c)<1.5?hs.contrast(c):p.color,L=u.spikemode,R=u.spikethickness,I=u.spikecolor||C,P=Qh.getPxPosition(e,u),D,q;if(L.indexOf("toaxis")!==-1||L.indexOf("across")!==-1){if(L.indexOf("toaxis")!==-1&&(D=P,q=y),L.indexOf("across")!==-1){var N=u._counterDomainMin,U=u._counterDomainMax;u.anchor==="free"&&(N=Math.min(N,u.position),U=Math.max(U,u.position)),D=a.t+(1-U)*a.h,q=a.t+(1-N)*a.h}n.insert("line",":first-child").attr({x1:S,x2:S,y1:D,y2:q,"stroke-width":R,stroke:I,"stroke-dasharray":Kh.dashStyle(u.spikedash,R)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:S,x2:S,y1:D,y2:q,"stroke-width":R+2,stroke:c}).classed("spikeline",!0).classed("crisp",!0)}L.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:S,cy:P-(u.side!=="top"?R:-R),r:R,fill:I}).classed("spikeline",!0)}}}function NJe(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}function YK(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function GK(e,t){return nc.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function OJe(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;o{"use strict";var BJe=gt(),UJe=qr(),HJe=Qf().isUnifiedHover;tQ.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&HJe(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=UJe.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),BJe.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var nQ=J((hRt,rQ)=>{"use strict";var jJe=gt(),VJe=g2(),YJe=Uv();rQ.exports=function(t,r){function n(i,a){return jJe.coerce(t,r,YJe,i,a)}VJe(t,r,n)}});var oQ=J((vRt,aQ)=>{"use strict";var iQ=gt(),GJe=b1(),WJe=g2();aQ.exports=function(t,r,n,i){function a(s,l){return iQ.coerce(t,r,GJe,s,l)}var o=iQ.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),WJe(t,r,a,o)}});var ND=J((dRt,sQ)=>{"use strict";var XJe=gt(),ZJe=Uv();sQ.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:XJe.coerce(t,r,ZJe,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var fQ=J((pRt,uQ)=>{"use strict";var lQ=gt(),JJe=Uv(),$Je=ND(),KJe=g2();uQ.exports=function(t,r){function n(u,f){return lQ.coerce(t,r,JJe,u,f)}var i=$Je(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("geo"),l=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s)&&l===1||o&&s&&l===2)&&(r.dragmode="pan"),KJe(t,r,n),lQ.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var vQ=J((gRt,hQ)=>{"use strict";var OD=gt(),cQ=zr();hQ.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(f){return OD.coerceHoverinfo({hoverinfo:f},{_module:u._module},n)}}for(var a=0;a{"use strict";var e$e=zr(),t$e=zD().hover;dQ.exports=function(t,r,n){var i=e$e.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&t$e(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var go=J((yRt,yQ)=>{"use strict";var r$e=Nr(),YA=gt(),n$e=iu(),m2=Qf(),gQ=Uv(),mQ=zD();yQ.exports={moduleType:"component",name:"fx",constants:zb(),schema:{layout:gQ},attributes:b1(),layoutAttributes:gQ,supplyLayoutGlobalDefaults:nQ(),supplyDefaults:oQ(),supplyLayoutDefaults:fQ(),calc:vQ(),getDistanceFunction:m2.getDistanceFunction,getClosest:m2.getClosest,inbox:m2.inbox,quadrature:m2.quadrature,appendArrayPointValue:m2.appendArrayPointValue,castHoverOption:a$e,castHoverinfo:o$e,hover:mQ.hover,unhover:n$e.unhover,loneHover:mQ.loneHover,loneUnhover:i$e,click:pQ()};function i$e(e){var t=YA.isD3Selection(e)?e:r$e.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function a$e(e,t,r){return YA.castOption(e,t,"hoverlabel."+r)}function o$e(e,t,r){function n(i){return YA.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return YA.castOption(e,r,"hoverinfo",n)}});var y0=J(Kv=>{"use strict";Kv.selectMode=function(e){return e==="lasso"||e==="select"};Kv.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Kv.openMode=function(e){return e==="drawline"||e==="drawopenpath"};Kv.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};Kv.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};Kv.selectingOrDrawing=function(e){return Kv.freeMode(e)||Kv.rectMode(e)}});var y2=J((bRt,xQ)=>{"use strict";xQ.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var GA=J((wRt,bQ)=>{"use strict";bQ.exports={undo:{width:857.1,height:1e3,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",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,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",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height: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",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,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",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,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",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height: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",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:["",""," ",""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}});var XA=J((_Rt,wQ)=>{"use strict";var WA=32;wQ.exports={CIRCLE_SIDES:WA,i000:0,i090:WA/4,i180:WA/2,i270:WA/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var ZA=J((TRt,TQ)=>{"use strict";var s$e=gt().strTranslate;function _Q(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function l$e(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function u$e(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return _Q(e,r[t])}}function f$e(e){return s$e(e.xaxis._offset,e.yaxis._offset)}TQ.exports={p2r:_Q,r2p:l$e,axValue:u$e,getTransform:f$e}});var x0=J(Qv=>{"use strict";var c$e=CL(),kQ=XA(),ey=kQ.CIRCLE_SIDES,BD=kQ.SQRT2,SQ=ZA(),AQ=SQ.p2r,MQ=SQ.r2p,h$e=[0,3,4,5,6,1,2],v$e=[0,3,4,1,2];Qv.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n0&&l{"use strict";var RQ=y0(),d$e=RQ.drawMode,p$e=RQ.openMode,ty=XA(),CQ=ty.i000,EQ=ty.i090,LQ=ty.i180,DQ=ty.i270,g$e=ty.cos45,m$e=ty.sin45,PQ=ZA(),$A=PQ.p2r,b0=PQ.r2p,y$e=l0(),x$e=y$e.clearOutline,KA=x0(),b$e=KA.readPaths,w$e=KA.writePaths,_$e=KA.ellipseOver,T$e=KA.fixDatesForPaths;function A$e(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!d$e(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s{"use strict";var M$e=y0(),k$e=M$e.selectMode,S$e=l0(),C$e=S$e.clearOutline,UD=x0(),E$e=UD.readPaths,L$e=UD.writePaths,D$e=UD.fixDatesForPaths;FQ.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,l=s.xaxis,u=s.yaxis,f=r.isActiveSelection,c=r.dragmode,h=(a.layout||{}).selections||[];if(!k$e(c)&&f!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d{"use strict";zQ.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var w0=J(Cs=>{"use strict";var cg=b2(),NQ=gt(),eM=nn();Cs.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Cs.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Cs.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Cs.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Cs.extractPathCoords=function(e,t,r){var n=[],i=e.match(cg.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.substr(1).match(cg.paramRE);if(!(!s||s.lengthd&&(m="X"),m});return u>d&&(v=v.replace(/[\s,]*X.*/,""),NQ.log("Ignoring extra params in segment "+l)),f+v})}function w2(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var VD=J((ERt,HQ)=>{"use strict";var P$e=gt(),ry=nn(),OQ=ca(),BQ=ln(),I$e=x0().readPaths,jD=w0(),q$e=jD.getPathString,UQ=MT(),F$e=Vo().FROM_TL;HQ.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=ry.getFromId(t,n.xref),l=ry.getFromId(t,n.yref);for(var u in UQ){var f=UQ[u](n,s,l);f!==void 0&&(o[u]=f)}}a=P$e.texttemplateStringForShapes(n.label.texttemplate,{},t._fullLayout._d3locale,o)}else a=n.label.text;var c={"data-index":r},h=n.label.font,d={"data-notex":1},v=i.append("g").attr(c).classed("shape-label",!0),m=v.append("text").attr(d).classed("shape-label-text",!0).text(a),b,g,_,T;if(n.path){var w=q$e(t,n),k=I$e(w,t);b=1/0,_=1/0,g=-1/0,T=-1/0;for(var x=0;x=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function N$e(e,t,r,n,i,a,o){var s=i.label.textposition,l=i.label.textangle,u=i.label.padding,f=i.type,c=Math.PI/180*a,h=Math.sin(c),d=Math.cos(c),v=i.label.xanchor,m=i.label.yanchor,b,g,_,T;if(f==="line"){s==="start"?(b=e,g=t):s==="end"?(b=r,g=n):(b=(e+r)/2,g=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":re?v="right":re?v="right":re?v="left":r{"use strict";var O$e=gt(),B$e=O$e.strTranslate,jQ=iu(),GQ=y0(),U$e=GQ.drawMode,WQ=GQ.selectMode,XQ=zr(),VQ=qr(),rM=XA(),H$e=rM.i000,j$e=rM.i090,V$e=rM.i180,Y$e=rM.i270,G$e=l0(),ZQ=G$e.clearOutlineControllers,GD=x0(),tM=GD.pointsOnRectangle,YD=GD.pointsOnEllipse,W$e=GD.writePaths,X$e=QA().newShapes,Z$e=QA().createShapeObj,J$e=HD(),$$e=VD();JQ.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(YD(t[0])||n.hasText)&&s({redrawing:!0})}function s(P){var D={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,D=X$e(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,D=J$e(r,n),a._fullLayout._reselect=!0),Object.keys(D).length&&XQ.call((P||{}).redrawing?"relayout":"_guiRelayout",a,D)}var l=a._fullLayout,u=l._zoomlayer,f=n.dragmode,c=U$e(f),h=WQ(f);(c||h)&&(a._fullLayout._outlining=!0),ZQ(a),r.attr("d",W$e(t));var d,v,m,b,g;if(!i&&(n.isActiveShape||n.isActiveSelection)){g=K$e([],t);var _=u.append("g").attr("class","outline-controllers");S(_),I()}if(c&&n.hasText){var T=u.select(".label-temp"),w=Z$e(r,n,n.dragmode);$$e(a,"label-temp",w,T)}function k(P){m=+P.srcElement.getAttribute("data-i"),b=+P.srcElement.getAttribute("data-j"),d[m][b].moveFn=x}function x(P,D){if(t.length){var q=g[m][b][1],N=g[m][b][2],U=t[m],G=U.length;if(tM(U)){var ee=P,Q=D;if(n.isActiveSelection){var j=YQ(U,b);j[1]===U[b][1]?Q=0:ee=0}for(var O=0;O1&&!(P.length===2&&P[1][0]==="Z")&&(b===0&&(P[0][0]="M"),t[m]=P,o(),s())}}function p(P,D){if(P===2){m=+D.srcElement.getAttribute("data-i"),b=+D.srcElement.getAttribute("data-j");var q=t[m];!tM(q)&&!YD(q)&&A()}}function S(P){d=[];for(var D=0;D{"use strict";var eKe=Nr(),ree=zr(),$Q=gt(),ny=nn(),tKe=x0().readPaths,rKe=nM(),aM=VD(),nee=l0().clearOutlineControllers,WD=qr(),ZD=ln(),nKe=ki().arrayEditor,KQ=iu(),QQ=th(),hg=b2(),ju=w0(),XD=ju.getPathString;oee.exports={draw:JD,drawOne:iee,eraseActiveShape:oKe,drawLabel:aM};function JD(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;io&&Re>s&&!pe.shiftKey?KQ.getCursor(ze/Ie,1-Be/Re):"move";QQ(t,tt),Z=tt.split("-")[0]}}function te(pe){iM(e)||(l&&(g=U(r.xanchor)),u&&(_=G(r.yanchor)),r.type==="path"?y=r.path:(d=l?r.x0:U(r.x0),v=u?r.y0:G(r.y0),m=l?r.x1:U(r.x1),b=u?r.y1:G(r.y1)),db?(T=v,M="y0",w=b,A="y1"):(T=b,M="y1",w=v,A="y0"),oe(pe),ge(i,r),Ne(t,r,e),O.moveFn=Z==="move"?W:fe,O.altKey=pe.altKey)}function V(){iM(e)||(QQ(t),Ce(i),aee(t,e,r),ree.call("_guiRelayout",e,a.getUpdateObj()))}function ne(){iM(e)||Ce(i)}function W(pe,me){if(r.type==="path"){var Ie=function(Be){return Be},Re=Ie,ze=Ie;l?h("xanchor",r.xanchor=ee(g+pe)):(Re=function(tt){return ee(U(tt)+pe)},C&&C.type==="date"&&(Re=ju.encodeDate(Re))),u?h("yanchor",r.yanchor=Q(_+me)):(ze=function(tt){return Q(G(tt)+me)},R&&R.type==="date"&&(ze=ju.encodeDate(ze))),h("path",r.path=eee(y,Re,ze))}else l?h("xanchor",r.xanchor=ee(g+pe)):(h("x0",r.x0=ee(d+pe)),h("x1",r.x1=ee(m+pe))),u?h("yanchor",r.yanchor=Q(_+me)):(h("y0",r.y0=Q(v+me)),h("y1",r.y1=Q(b+me)));t.attr("d",XD(e,r)),ge(i,r),aM(e,n,r,E)}function fe(pe,me){if(c){var Ie=function(it){return it},Re=Ie,ze=Ie;l?h("xanchor",r.xanchor=ee(g+pe)):(Re=function(wt){return ee(U(wt)+pe)},C&&C.type==="date"&&(Re=ju.encodeDate(Re))),u?h("yanchor",r.yanchor=Q(_+me)):(ze=function(wt){return Q(G(wt)+me)},R&&R.type==="date"&&(ze=ju.encodeDate(ze))),h("path",r.path=eee(y,Re,ze))}else if(f){if(Z==="resize-over-start-point"){var Be=d+pe,tt=u?v-me:v+me;h("x0",r.x0=l?Be:ee(Be)),h("y0",r.y0=u?tt:Q(tt))}else if(Z==="resize-over-end-point"){var rt=m+pe,ce=u?b-me:b+me;h("x1",r.x1=l?rt:ee(rt)),h("y1",r.y1=u?ce:Q(ce))}}else{var Ee=function(it){return Z.indexOf(it)!==-1},Ae=Ee("n"),Pe=Ee("s"),He=Ee("w"),Fe=Ee("e"),ke=Ae?T+me:T,Ue=Pe?w+me:w,Ge=He?k+pe:k,lt=Fe?x+pe:x;u&&(Ae&&(ke=T-me),Pe&&(Ue=w-me)),(!u&&Ue-ke>s||u&&ke-Ue>s)&&(h(M,r[M]=u?ke:Q(ke)),h(A,r[A]=u?Ue:Q(Ue))),lt-Ge>o&&(h(p,r[p]=l?Ge:ee(Ge)),h(S,r[S]=l?lt:ee(lt)))}t.attr("d",XD(e,r)),ge(i,r),aM(e,n,r,E)}function ge(pe,me){(l||u)&&Ie();function Ie(){var Re=me.type!=="path",ze=pe.selectAll(".visual-cue").data([0]),Be=1;ze.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Be}).classed("visual-cue",!0);var tt=U(l?me.xanchor:$Q.midRange(Re?[me.x0,me.x1]:ju.extractPathCoords(me.path,hg.paramIsX))),rt=G(u?me.yanchor:$Q.midRange(Re?[me.y0,me.y1]:ju.extractPathCoords(me.path,hg.paramIsY)));if(tt=ju.roundPositionForSharpStrokeRendering(tt,Be),rt=ju.roundPositionForSharpStrokeRendering(rt,Be),l&&u){var ce="M"+(tt-1-Be)+","+(rt-1-Be)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";ze.attr("d",ce)}else if(l){var Ee="M"+(tt-1-Be)+","+(rt-9-Be)+"v18 h2 v-18 Z";ze.attr("d",Ee)}else{var Ae="M"+(tt-9-Be)+","+(rt-1-Be)+"h18 v2 h-18 Z";ze.attr("d",Ae)}}}function Ce(pe){pe.selectAll(".visual-cue").remove()}function Ne(pe,me,Ie){var Re=me.xref,ze=me.yref,Be=ny.getFromId(Ie,Re),tt=ny.getFromId(Ie,ze),rt="";Re!=="paper"&&!Be.autorange&&(rt+=Re),ze!=="paper"&&!tt.autorange&&(rt+=ze),ZD.setClipUrl(pe,rt?"clip"+Ie._fullLayout._uid+rt:null,Ie)}}function eee(e,t,r){return e.replace(hg.segmentRE,function(n){var i=0,a=n.charAt(0),o=hg.paramIsX[a],s=hg.paramIsY[a],l=hg.numParams[a],u=n.substr(1).replace(hg.paramRE,function(f){return i>=l||(o[i]?f=t(f):s[i]&&(f=r(f)),i++),f});return a+u})}function aKe(e,t){if(oM(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){tee(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=tee,JD(e)}}}function tee(e){if(oM(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(nee(e),delete e._fullLayout._activeShapeIndex,JD(e))}}function oKe(e){if(oM(e)){nee(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t{"use strict";var ic=zr(),see=ea(),lee=jo(),_i=GA(),sKe=sM().eraseActiveShape,iy=gt(),ri=iy._,Ti=hee.exports={};Ti.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?ri(e,"Download plot as a png"):ri(e,"Download plot")},icon:_i.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};iy.notifier(ri(e,"Taking snapshot - this may take a few seconds"),"long"),r.format!=="svg"&&iy.isIE()&&(iy.notifier(ri(e,"IE only supports svg. Changing format to svg."),"long"),r.format="svg"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),ic.call("downloadImage",e,r).then(function(n){iy.notifier(ri(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){iy.notifier(ri(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};Ti.sendDataToCloud={name:"sendDataToCloud",title:function(e){return ri(e,"Edit in Chart Studio")},icon:_i.disk,click:function(e){see.sendDataToCloud(e)}};Ti.editInChartStudio={name:"editInChartStudio",title:function(e){return ri(e,"Edit in Chart Studio")},icon:_i.pencil,click:function(e){see.sendDataToCloud(e)}};Ti.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return ri(e,"Zoom")},attr:"dragmode",val:"zoom",icon:_i.zoombox,click:zl};Ti.pan2d={name:"pan2d",_cat:"pan",title:function(e){return ri(e,"Pan")},attr:"dragmode",val:"pan",icon:_i.pan,click:zl};Ti.select2d={name:"select2d",_cat:"select",title:function(e){return ri(e,"Box Select")},attr:"dragmode",val:"select",icon:_i.selectbox,click:zl};Ti.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return ri(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:_i.lasso,click:zl};Ti.drawclosedpath={name:"drawclosedpath",title:function(e){return ri(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:_i.drawclosedpath,click:zl};Ti.drawopenpath={name:"drawopenpath",title:function(e){return ri(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:_i.drawopenpath,click:zl};Ti.drawline={name:"drawline",title:function(e){return ri(e,"Draw line")},attr:"dragmode",val:"drawline",icon:_i.drawline,click:zl};Ti.drawrect={name:"drawrect",title:function(e){return ri(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:_i.drawrect,click:zl};Ti.drawcircle={name:"drawcircle",title:function(e){return ri(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:_i.drawcircle,click:zl};Ti.eraseshape={name:"eraseshape",title:function(e){return ri(e,"Erase active shape")},icon:_i.eraseshape,click:sKe};Ti.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return ri(e,"Zoom in")},attr:"zoom",val:"in",icon:_i.zoom_plus,click:zl};Ti.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return ri(e,"Zoom out")},attr:"zoom",val:"out",icon:_i.zoom_minus,click:zl};Ti.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return ri(e,"Autoscale")},attr:"zoom",val:"auto",icon:_i.autoscale,click:zl};Ti.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return ri(e,"Reset axes")},attr:"zoom",val:"reset",icon:_i.home,click:zl};Ti.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return ri(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:_i.tooltip_basic,gravity:"ne",click:zl};Ti.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return ri(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:_i.tooltip_compare,gravity:"ne",click:zl};function zl(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=lee.list(e,null,!0),l=a._cartesianSpikesEnabled,u,f;if(n==="zoom"){var c=i==="in"?.5:2,h=(1+c)/2,d=(1-c)/2,v;for(f=0;f{"use strict";var vee=e8(),fKe=Object.keys(vee),dee=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],pee=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(dee),ay=[],cKe=function(e){if(pee.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();ay.indexOf(t)===-1&&ay.push(t),ay.indexOf(r)===-1&&ay.push(r)}};fKe.forEach(function(e){cKe(vee[e])});ay.sort();gee.exports={DRAW_MODES:dee,backButtons:pee,foreButtons:ay}});var r8=J((IRt,yee)=>{"use strict";var mee=t8();yee.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar",description:"Sets the orientation of the modebar."},bgcolor:{valType:"color",editType:"modebar",description:"Sets the background color of the modebar."},color:{valType:"color",editType:"modebar",description:"Sets the color of the icons in the modebar."},activecolor:{valType:"color",editType:"modebar",description:"Sets the color of the active or hovered on icons in the modebar."},uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes related to the modebar,","including `hovermode`, `dragmode`, and `showspikes` at both the","root level and inside subplots. Defaults to `layout.uirevision`."].join(" ")},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar",description:["Determines which predefined modebar buttons to add.","Please note that these buttons will only be shown if they are","compatible with all trace types used in a graph.","Similar to `config.modeBarButtonsToAdd` option.","This may include *"+mee.backButtons.join("*, *")+"*."].join(" ")},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar",description:["Determines which predefined modebar buttons to remove.","Similar to `config.modeBarButtonsToRemove` option.","This may include *"+mee.foreButtons.join("*, *")+"*."].join(" ")}}});var bee=J((qRt,xee)=>{"use strict";var hKe=gt(),_2=qr(),vKe=ki(),dKe=r8();xee.exports=function(t,r){var n=t.modebar||{},i=vKe.newContainer(r,"modebar");function a(s,l){return hKe.coerce(n,i,dKe,s,l)}a("orientation"),a("bgcolor",_2.addOpacity(r.paper_bgcolor,.5));var o=_2.contrast(_2.rgb(r.modebar.bgcolor));a("color",_2.addOpacity(o,.3)),a("activecolor",_2.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var Aee=J((FRt,Tee)=>{"use strict";var n8=Nr(),pKe=dn(),ed=gt(),wee=GA(),gKe=iT().version,mKe=new DOMParser;function _ee(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var ev=_ee.prototype;ev.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this._uid=i,this.element.className="modebar",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o=r.displayModeBar==="hover"?".js-plotly-plot .plotly:hover ":"";ed.deleteRelatedStyleRule(i),ed.addRelatedStyleRule(i,o+"#"+i+" .modebar-group","background-color: "+a.bgcolor),ed.addRelatedStyleRule(i,"#"+i+" .modebar-btn .icon path","fill: "+a.color),ed.addRelatedStyleRule(i,"#"+i+" .modebar-btn:hover .icon path","fill: "+a.activecolor),ed.addRelatedStyleRule(i,"#"+i+" .modebar-btn.active .icon path","fill: "+a.activecolor);var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var f=this.getLogo();r.watermark&&(f.className=f.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton()};ev.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};ev.createGroup=function(){var e=document.createElement("div");return e.className="modebar-group",e};ev.createButton=function(e){var t=this,r=document.createElement("a");r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&r.setAttribute("data-title",n),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&n8.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||wee.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};ev.createIcon=function(e){var t=pKe(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=mKe.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};ev.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=n8.select(n);if(o)a===r&&s.classed("active",!s.classed("active"));else{var l=a===null?a:ed.nestedProperty(t,a).get();s.classed("active",l===i)}})};ev.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r{"use strict";var bKe=jo(),Mee=fs(),i8=zr(),wKe=Qf().isUnifiedHover,_Ke=Aee(),fM=e8(),TKe=t8().DRAW_MODES,AKe=gt().extendDeep;kee.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=LKe(a):!n.displayModeBar&&n.watermark?o=[]:o=MKe(t),i?i.update(t,o):r._modeBar=_Ke(t,o)};function MKe(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(D,q){if(typeof q=="string"){if(q.toLowerCase()===D.toLowerCase())return!0}else{var N=q.name,U=q._cat||q.name;if(N===D||U===D.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(D){for(var q=0;q1?(S=["toggleHover"],y=["resetViews"]):c?(p=["zoomInGeo","zoomOutGeo"],S=["hoverClosestGeo"],y=["resetGeo"]):f?(S=["hoverClosest3d"],y=["resetCameraDefault3d","resetCameraLastSave3d"]):b?(p=["zoomInMapbox","zoomOutMapbox"],S=["toggleHover"],y=["resetViewMapbox"]):v?S=["hoverClosestGl2d"]:h?S=["hoverClosestPie"]:T?(S=["hoverClosestCartesian","hoverCompareCartesian"],y=["resetViewSankey"]):S=["toggleHover"],u&&S.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(CKe(r)||k)&&(S=[]),(u||v)&&!w&&(p=["zoomIn2d","zoomOut2d","autoScale2d"],y[0]!=="resetViews"&&(y=["resetScale2d"])),f?E=["zoom3d","pan3d","orbitRotation","tableRotation"]:(u||v)&&!w||m?E=["zoom2d","pan2d"]:b||c?E=["pan2d"]:g&&(E=["zoom2d"]),SKe(r)&&E.push("select2d","lasso2d");var C=[],L=function(D){C.indexOf(D)===-1&&S.indexOf(D)!==-1&&C.push(D)};if(Array.isArray(s)){for(var R=[],I=0;I{"use strict";Cee.exports={moduleType:"component",name:"modebar",layoutAttributes:r8(),supplyLayoutDefaults:bee(),manage:See()}});var o8=J((ORt,Eee)=>{"use strict";var DKe=Vo().FROM_BL;Eee.exports=function(t,r,n){n===void 0&&(n=DKe[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var _0=J(T2=>{"use strict";var vg=gt(),s8=ec(),nh=jo().id2name,RKe=hl(),Lee=o8(),PKe=Zv(),IKe=oi().ALMOST_EQUAL,qKe=Vo().FROM_BL;T2.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,l,u,f,c,h,d,v;for(s=0;sa?r.substr(a):n.substr(i))+o}function zKe(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;oIKe*v&&!_)){for(a=0;aE&&NS&&(S=N);var G=(S-p)/(2*y);c/=G,p=l.l2r(p),S=l.l2r(S),l.range=l._input.range=x{"use strict";var hM=Nr(),Nl=zr(),Cf=ea(),ac=gt(),f8=ca(),c8=y2(),A2=qr(),oy=ln(),Iee=tg(),Oee=a8(),M2=nn(),td=Vo(),Bee=_0(),NKe=Bee.enforce,OKe=Bee.clean,qee=ec().doAutoRange,Uee="start",BKe="middle",Hee="end",UKe=Eo().zindexSeparator;vs.layoutStyles=function(e){return ac.syncOrAsync([Cf.doAutoMargin,jKe],e)};function HKe(e,t,r){for(var n=0;n=e[1]||i[1]<=e[0])&&a[0]t[0])return!0}return!1}function jKe(e){var t=e._fullLayout,r=t._size,n=r.p,i=M2.list(e,"",!0),a,o,s,l,u,f;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(oy.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),vs.drawMainTitle(e),Oee.manage(e),!t._has("cartesian"))return Cf.previousPromises(e);function c(te,V,ne){var W=te._lw/2;if(te._id.charAt(0)==="x"){if(V){if(ne==="top")return V._offset-n-W}else return r.t+r.h*(1-(te.position||0))+W%1;return V._offset+V._length+n+W}if(V){if(ne==="right")return V._offset+V._length+n+W}else return r.l+r.w*(te.position||0)+W%1;return V._offset-n-W}for(a=0;a0){WKe(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:Nee(t.yanchor)}).call(f8.positionText,o,a);var f=(t.text.match(f8.BR_TAG_ALL)||[]).length;if(f){var c=td.LINE_SPACING*f+td.MID_SHIFT;t.y===0&&(c=-c),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-c+"em";this.setAttribute("dy",b)})}var h=hM.selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,m=v+Iee.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:m,"text-anchor":n,dy:Nee(t.yanchor)}).call(f8.positionText,o,m)}}}};function VKe(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=ac.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return ac.isTopAnchor(t)&&r==="t"||ac.isBottomAnchor(t)&&r==="b"?!1:s.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=YKe(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function WKe(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},l={};a.yref==="paper"&&VKe(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(l[o]=r,e._fullLayout._reservedMargin[i]=l),Cf.allowAutoMargin(e,i),Cf.autoMargin(e,i,s)}function XKe(e,t){var r=e.title,n=e._size,i=0;switch(t===Uee?i=r.pad.l:t===Hee&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function ZKe(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===td.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function Nee(e){return e==="top"?td.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":td.MID_SHIFT+"em"}function JKe(e){var t=e.title,r=BKe;return ac.isRightAnchor(t)?r=Hee:ac.isLeftAnchor(t)&&(r=Uee),r}function $Ke(e){var t=e.title,r="0em";return ac.isTopAnchor(t)?r=td.CAP_SHIFT+"em":ac.isMiddleAnchor(t)&&(r=td.MID_SHIFT+"em"),r}vs.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n{"use strict";var KKe=x0().readPaths,QKe=nM(),jee=l0().clearOutlineControllers,h8=qr(),Vee=ln(),eQe=ki().arrayEditor,Yee=w0(),tQe=Yee.getPathString;Wee.exports={draw:vM,drawOne:Gee,activateLastSelection:iQe};function vM(e){var t=e._fullLayout;jee(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i=0;b--){var g=o.append("path").attr(l).style("opacity",b?.1:u).call(h8.stroke,c).call(h8.fill,f).call(Vee.dashLine,b?"solid":d,b?4+h:h);if(rQe(g,e,n),v){var _=eQe(e.layout,"selections",n);g.style({cursor:"move"});var T={element:g.node(),plotinfo:i,gd:e,editHelpers:_,isActiveSelection:!0},w=KKe(s,e);QKe(w,g,T)}else g.style("pointer-events",b?"all":"none");m[b]=g}var k=m[0],x=m[1];x.node().addEventListener("click",function(){return nQe(e,k)})}}function rQe(e,t,r){var n=r.xref+r.yref;Vee.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function nQe(e,t){if(dM(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){v8(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=v8,vM(e)}}}function iQe(e){if(dM(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=v8,vM(e)}}function v8(e){if(dM(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(jee(e),delete e._fullLayout._activeSelectionIndex,vM(e))}}});var Zee=J((jRt,Xee)=>{function aQe(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Xee.exports=aQe});var $ee=J((VRt,Jee)=>{function oQe(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],l=i[1],u=r[0],f=r[1];return(s-a)*(f-o)-(l-o)*(u-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],l=i[1]-n[1],u=s*o+a*l;if(u-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])e!=s-a>e&&(o-f)*(a-c)/(s-c)+f-i>e&&(l=!l),o=f,s=c}return l}};return t}Jee.exports=oQe});var Qee=J((YRt,Kee)=>{var sQe={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};Kee.exports=sQe});var tte=J((GRt,ete)=>{var S2=Qee();function lQe(e,t,r){function n(v,m){return{id:r?r.segmentId():-1,start:v,end:m,myFill:{above:null,below:null},otherFill:null}}function i(v,m,b){return{id:r?r.segmentId():-1,start:v,end:m,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=S2.create();function o(v,m,b,g,_,T){var w=t.pointsCompare(m,_);return w!==0?w:t.pointsSame(b,T)?0:v!==g?v?1:-1:t.pointAboveOrOnLine(b,g?_:T,g?T:_)?1:-1}function s(v,m){a.insertBefore(v,function(b){var g=o(v.isStart,v.pt,m,b.isStart,b.pt,b.other.pt);return g<0})}function l(v,m){var b=S2.node({isStart:!0,pt:v.start,seg:v,primary:m,other:null,status:null});return s(b,v.end),b}function u(v,m,b){var g=S2.node({isStart:!1,pt:m.end,seg:m,primary:b,other:v,status:null});v.other=g,s(g,v.pt)}function f(v,m){var b=l(v,m);return u(b,v,m),b}function c(v,m){r&&r.segmentChop(v.seg,m),v.other.remove(),v.seg.end=m,v.other.pt=m,s(v.other,v.pt)}function h(v,m){var b=i(m,v.seg.end,v.seg);return c(v,m),f(b,v.primary)}function d(v,m){var b=S2.create();function g(R,I){var P=R.seg.start,D=R.seg.end,q=I.seg.start,N=I.seg.end;return t.pointsCollinear(P,q,N)?t.pointsCollinear(D,q,N)||t.pointAboveOrOnLine(D,q,N)?1:-1:t.pointAboveOrOnLine(P,q,N)?1:-1}function _(R){return b.findTransition(function(I){var P=g(R,I.ev);return P>0})}function T(R,I){var P=R.seg,D=I.seg,q=P.start,N=P.end,U=D.start,G=D.end;r&&r.checkIntersection(P,D);var ee=t.linesIntersect(q,N,U,G);if(ee===!1){if(!t.pointsCollinear(q,N,U)||t.pointsSame(q,G)||t.pointsSame(N,U))return!1;var Q=t.pointsSame(q,U),j=t.pointsSame(N,G);if(Q&&j)return I;var O=!Q&&t.pointBetween(q,U,G),Z=!j&&t.pointBetween(N,U,G);if(Q)return Z?h(I,N):h(R,G),I;O&&(j||(Z?h(I,N):h(R,G)),h(I,q))}else ee.alongA===0&&(ee.alongB===-1?h(R,U):ee.alongB===0?h(R,ee.pt):ee.alongB===1&&h(R,G)),ee.alongB===0&&(ee.alongA===-1?h(I,q):ee.alongA===0?h(I,ee.pt):ee.alongA===1&&h(I,N));return!1}for(var w=[];!a.isEmpty();){var k=a.getHead();if(r&&r.vert(k.pt[0]),k.isStart){let R=function(){if(M){var I=T(k,M);if(I)return I}return A?T(k,A):!1};var L=R;r&&r.segmentNew(k.seg,k.primary);var x=_(k),M=x.before?x.before.ev:null,A=x.after?x.after.ev:null;r&&r.tempStatus(k.seg,M?M.seg:!1,A?A.seg:!1);var p=R();if(p){if(e){var S;k.seg.myFill.below===null?S=!0:S=k.seg.myFill.above!==k.seg.myFill.below,S&&(p.seg.myFill.above=!p.seg.myFill.above)}else p.seg.otherFill=k.seg.myFill;r&&r.segmentUpdate(p.seg),k.other.remove(),k.remove()}if(a.getHead()!==k){r&&r.rewind(k.seg);continue}if(e){var S;k.seg.myFill.below===null?S=!0:S=k.seg.myFill.above!==k.seg.myFill.below,A?k.seg.myFill.below=A.seg.myFill.above:k.seg.myFill.below=v,S?k.seg.myFill.above=!k.seg.myFill.below:k.seg.myFill.above=k.seg.myFill.below}else if(k.seg.otherFill===null){var y;A?k.primary===A.primary?y=A.seg.otherFill.above:y=A.seg.myFill.above:y=k.primary?m:v,k.seg.otherFill={above:y,below:y}}r&&r.status(k.seg,M?M.seg:!1,A?A.seg:!1),k.other.status=x.insert(S2.node({ev:k}))}else{var E=k.status;if(E===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(E.prev)&&b.exists(E.next)&&T(E.prev.ev,E.next.ev),r&&r.statusRemove(E.ev.seg),E.remove(),!k.primary){var C=k.seg.myFill;k.seg.myFill=k.seg.otherFill,k.seg.otherFill=C}w.push(k.seg)}a.getHead().remove()}return r&&r.done(),w}return e?{addRegion:function(v){for(var m,b=v[v.length-1],g=0;g{function uQe(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},f=l;function c(L,R,I){return f.index=L,f.matches_head=R,f.matches_pt1=I,f===l?(f=u,!1):(f=null,!0)}for(var h=0;h{function C2(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var fQe={union:function(e,t){return C2(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return C2(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return C2(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return C2(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return C2(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};ite.exports=fQe});var ste=J((ZRt,ote)=>{var cQe={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var f=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[f]})}for(var s=o(a[0]),l=1;l{var hQe=Zee(),vQe=$ee(),lte=tte(),dQe=nte(),E2=ate(),ute=ste(),oc=!1,L2=vQe(),Vu;Vu={buildLog:function(e){return e===!0?oc=hQe():e===!1&&(oc=!1),oc===!1?!1:oc.list},epsilon:function(e){return L2.epsilon(e)},segments:function(e){var t=lte(!0,L2,oc);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=lte(!1,L2,oc);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:E2.union(e.combined,oc),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:E2.intersect(e.combined,oc),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:E2.difference(e.combined,oc),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:E2.differenceRev(e.combined,oc),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:E2.xor(e.combined,oc),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:dQe(e.segments,L2,oc),inverted:e.inverted}},polygonFromGeoJSON:function(e){return ute.toPolygon(Vu,e)},polygonToGeoJSON:function(e){return ute.fromPolygon(Vu,L2,e)},union:function(e,t){return D2(e,t,Vu.selectUnion)},intersect:function(e,t){return D2(e,t,Vu.selectIntersect)},difference:function(e,t){return D2(e,t,Vu.selectDifference)},differenceRev:function(e,t){return D2(e,t,Vu.selectDifferenceRev)},xor:function(e,t){return D2(e,t,Vu.selectXor)}};function D2(e,t,r){var n=Vu.segments(e),i=Vu.segments(t),a=Vu.combine(n,i),o=r(a);return Vu.polygon(o)}typeof window=="object"&&(window.PolyBool=Vu);fte.exports=Vu});var vte=J(($Rt,hte)=>{hte.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var l=i-n,u=0,f=l-1;uo!=v>o&&a<(d-c)*(o-h)/(v-h)+c;m&&(s=!s)}return s}});var R2=J((KRt,dte)=>{"use strict";var p8=wT().dot,pM=oi().BADNUM,gM=dte.exports={};gM.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;si||g===pM||go||m&&u(v))}function c(v,m){var b=v[0],g=v[1];if(b===pM||bi||g===pM||go)return!1;var _=r.length,T=r[0][0],w=r[0][1],k=0,x,M,A,p,S;for(x=1;x<_;x++)if(M=T,A=w,T=r[x][0],w=r[x][1],p=Math.min(M,T),!(bMath.max(M,T)||g>Math.max(A,w)))if(gs||Math.abs(p8(c,u))>i)return!0;return!1};gM.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(l){t.push(l);var u=n.length,f=i;n.splice(a+1);for(var c=f+1;c1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var gte=J((QRt,pte)=>{"use strict";pte.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var Nte=J((ePt,zte)=>{"use strict";var mte=cte(),pQe=vte(),q2=zr(),gQe=ln().dashStyle,P2=qr(),mQe=go(),yQe=Qf().makeEventData,B2=y0(),xQe=B2.freeMode,bQe=B2.rectMode,F2=B2.drawMode,x8=B2.openMode,b8=B2.selectMode,yte=w0(),xte=b2(),Ate=nM(),Mte=l0().clearOutline,kte=x0(),g8=kte.handleEllipse,wQe=kte.readPaths,_Qe=QA().newShapes,TQe=HD(),AQe=d8().activateLastSelection,yM=gt(),MQe=yM.sorterAsc,Ste=R2(),I2=zT(),sc=jo().getFromId,kQe=y2(),SQe=k2().redrawReglTraces,xM=gte(),tv=xM.MINSELECT,CQe=Ste.filter,w8=Ste.tester,_8=ZA(),bte=_8.p2r,EQe=_8.axValue,LQe=_8.getTransform;function T8(e){return e.subplot!==void 0}function DQe(e,t,r,n,i){var a=!T8(n),o=xQe(i),s=bQe(i),l=x8(i),u=F2(i),f=b8(i),c=i==="drawline",h=i==="drawcircle",d=c||h,v=n.gd,m=v._fullLayout,b=f&&m.newselection.mode==="immediate"&&a,g=m._zoomlayer,_=n.element.getBoundingClientRect(),T=n.plotinfo,w=LQe(T),k=t-_.left,x=r-_.top;m._calcInverseTransform(v);var M=yM.apply3DTransform(m._invTransform)(k,x);k=M[0],x=M[1];var A=m._invScaleX,p=m._invScaleY,S=k,y=x,E="M"+k+","+x,C=n.xaxes[0],L=n.yaxes[0],R=C._length,I=L._length,P=e.altKey&&!(F2(i)&&l),D,q,N,U,G,ee,Q;Ete(e,v,n),o&&(D=CQe([[k,x]],xM.BENDPX));var j=g.selectAll("path.select-outline-"+T.id).data([1]),O=u?m.newshape:m.newselection;u&&(n.hasText=O.label.text||O.label.texttemplate);var Z=u&&!l?O.fillcolor:"rgba(0,0,0,0)",K=O.line.color||(a?P2.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");j.enter().append("path").attr("class","select-outline select-outline-"+T.id).style({opacity:u?O.opacity/2:1,"stroke-dasharray":gQe(O.line.dash,O.line.width),"stroke-width":O.line.width+"px","shape-rendering":"crispEdges"}).call(P2.stroke,K).call(P2.fill,Z).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",w).attr("d",E+"Z");var $=g.append("path").attr("class","zoombox-corners").style({fill:P2.background,stroke:P2.defaultLine,"stroke-width":1}).attr("transform",w).attr("d","M0,0Z");if(u&&n.hasText){var oe=g.select(".label-temp");oe.empty()&&(oe=g.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var te=m._uid+xM.SELECTID,V=[],ne=bM(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var fe=C._id,ge=L._id;Ite(v,fe,ge,ne);for(var Ce=(v.layout||{}).selections||[],Ne=[],pe=!1,me=0;me=0){v._fullLayout._deactivateShape(v);return}if(!u){var Ce=m.clickmode;I2.done(te).then(function(){if(I2.clear(te),fe===2){for(j.remove(),G=0;G-1&&Cte(ge,v,n.xaxes,n.yaxes,n.subplot,n,j),Ce==="event"&&O2(v,void 0);mQe.click(v,ge,T.id)}).catch(yM.error)}},n.doneFn=function(){$.remove(),I2.done(te).then(function(){I2.clear(te),!b&&U&&n.selectionDefs&&(U.subtract=P,n.selectionDefs.push(U),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,N)),(b||u)&&z2(n,b),n.doneFnCompleted&&n.doneFnCompleted(V),f&&O2(v,Q)}).catch(yM.error)}}function Cte(e,t,r,n,i,a,o){var s=t._hoverdata,l=t._fullLayout,u=l.clickmode,f=u.indexOf("event")>-1,c=[],h,d,v,m,b,g,_,T,w,k;if(FQe(s)){Ete(e,t,a),h=bM(t,r,n,i);var x=zQe(s,h),M=x.pointNumbers.length>0;if(M?NQe(h,x):OQe(h)&&(_=_te(x))){for(o&&o.remove(),k=0;k=0}function qQe(e){return e._fullLayout._activeSelectionIndex>=0}function z2(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;IQe(i)&&i._fullLayout._deactivateShape(i),qQe(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=F2(r),l=b8(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var f;s&&(f=_Qe(u,e)),f&&q2.call("_guiRelayout",i,{shapes:f});var c;l&&!T8(e)&&(c=TQe(u,e)),c&&(i._fullLayout._noEmitSelectedAtStart=!0,q2.call("_guiRelayout",i,{selections:c}).then(function(){t&&AQe(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function wte(e){return e._id}function bM(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(wte),o=r.map(wte),s,l,u;for(u=0;u0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function NQe(e,t){var r=[],n,i,a,o;for(o=0;o0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function N2(e,t,r){var n;for(n=0;n-1&&t;if(!o&&t){var fe=Tte(e,!0);if(fe.length){var ge=fe[0].xref,Ce=fe[0].yref;if(ge&&Ce){var Ne=qte(fe),pe=Fte([sc(e,ge,"x"),sc(e,Ce,"y")]);pe(V,Ne)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:W&&O2(e,V),h._reselect=!1}if(!o&&h._deselect){var me=h._deselect;s=me.xref,l=me.yref,HQe(s,l,f)||Ite(e,s,l,n),W&&(V.points.length?O2(e,V):k8(e)),h._deselect=!1}return{eventData:V,selectionTesters:r}}function UQe(e){var t=e.calcdata;if(t)for(var r=0;r{"use strict";Ote.exports=[{path:"",backoff:0},{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,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var U2=J((rPt,Bte)=>{"use strict";Bte.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var dg=J((nPt,Yte)=>{"use strict";var Ute=S8(),Hte=xa(),wM=Eo(),WQe=ki().templatedArray,_M=U2();function jte(e){return["In order for absolute positioning of the arrow to work, *a"+e+"ref* must be exactly the same as *"+e+"ref*, otherwise *a"+e+"ref* will revert to *pixel* (explained next).","For relative positioning, *a"+e+"ref* can be set to *pixel*,","in which case the *a"+e+"* value is specified in pixels","relative to *"+e+"*.","Absolute positioning is useful","for trendline annotations which should continue to indicate","the correct trend when zoomed. Relative positioning is useful","for specifying the text offset for an annotated point."].join(" ")}function Vte(e,t,r){return["Sets the",e,"component of the arrow tail about the arrow head.","If `a"+e+"ref` is `pixel`, a positive (negative)","component corresponds to an arrow pointing","from",r,"to",t,"("+t,"to",r+").","If `a"+e+"ref` is not `pixel` and is exactly the same as `"+e+"ref`,","this is an absolute value on that axis,","like `"+e+"`, specified in the same coordinates as `"+e+"ref`."].join(" ")}Yte.exports=WQe("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw",description:["Determines whether or not this annotation is visible."].join(" ")},text:{valType:"string",editType:"calc+arraydraw",description:["Sets the text associated with this annotation.","Plotly uses a subset of HTML tags to do things like","newline (
), bold (), italics (),","hyperlinks (). Tags , , , , "," are also supported."].join(" ")},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw",description:["Sets the angle at which the `text` is drawn","with respect to the horizontal."].join(" ")},font:Hte({editType:"calc+arraydraw",colorEditType:"arraydraw",description:"Sets the annotation text font."}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw",description:["Sets an explicit width for the text box. null (default) lets the","text set the box width. Wider text will be clipped.","There is no automatic wrapping; use
to start a new line."].join(" ")},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw",description:["Sets an explicit height for the text box. null (default) lets the","text set the box height. Taller text will be clipped."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw",description:"Sets the opacity of the annotation (text + arrow)."},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw",description:["Sets the horizontal alignment of the `text` within the box.","Has an effect only if `text` spans two or more lines","(i.e. `text` contains one or more
HTML tags) or if an","explicit width is set to override the text width."].join(" ")},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw",description:["Sets the vertical alignment of the `text` within the box.","Has an effect only if an explicit height is set to override","the text height."].join(" ")},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw",description:"Sets the background color of the annotation."},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw",description:["Sets the color of the border enclosing the annotation `text`."].join(" ")},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw",description:["Sets the padding (in px) between the `text`","and the enclosing border."].join(" ")},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw",description:["Sets the width (in px) of the border enclosing","the annotation `text`."].join(" ")},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw",description:["Determines whether or not the annotation is drawn with an arrow.","If *true*, `text` is placed near the arrow's tail.","If *false*, `text` lines up with the `x` and `y` provided."].join(" ")},arrowcolor:{valType:"color",editType:"arraydraw",description:"Sets the color of the annotation arrow."},arrowhead:{valType:"integer",min:0,max:Ute.length,dflt:1,editType:"arraydraw",description:"Sets the end annotation arrow head style."},startarrowhead:{valType:"integer",min:0,max:Ute.length,dflt:1,editType:"arraydraw",description:"Sets the start annotation arrow head style."},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw",description:"Sets the annotation arrow head position."},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw",description:["Sets the size of the end annotation arrow head, relative to `arrowwidth`.","A value of 1 (default) gives a head about 3x as wide as the line."].join(" ")},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw",description:["Sets the size of the start annotation arrow head, relative to `arrowwidth`.","A value of 1 (default) gives a head about 3x as wide as the line."].join(" ")},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw",description:"Sets the width (in px) of annotation arrow line."},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw",description:["Sets a distance, in pixels, to move the end arrowhead away from the","position it is pointing at, for example to point at the edge of","a marker independent of zoom. Note that this shortens the arrow","from the `ax` / `ay` vector, in contrast to `xshift` / `yshift`","which moves everything by this amount."].join(" ")},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw",description:["Sets a distance, in pixels, to move the start arrowhead away from the","position it is pointing at, for example to point at the edge of","a marker independent of zoom. Note that this shortens the arrow","from the `ax` / `ay` vector, in contrast to `xshift` / `yshift`","which moves everything by this amount."].join(" ")},ax:{valType:"any",editType:"calc+arraydraw",description:[Vte("x","left","right")].join(" ")},ay:{valType:"any",editType:"calc+arraydraw",description:[Vte("y","top","bottom")].join(" ")},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",wM.idRegex.x.toString()],editType:"calc",description:["Indicates in what coordinates the tail of the","annotation (ax,ay) is specified.",_M.axisRefDescription("x","left","right"),jte("x")].join(" ")},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",wM.idRegex.y.toString()],editType:"calc",description:["Indicates in what coordinates the tail of the","annotation (ax,ay) is specified.",_M.axisRefDescription("y","bottom","top"),jte("y")].join(" ")},xref:{valType:"enumerated",values:["paper",wM.idRegex.x.toString()],editType:"calc",description:["Sets the annotation's x coordinate axis.",_M.axisRefDescription("x","left","right")].join(" ")},x:{valType:"any",editType:"calc+arraydraw",description:["Sets the annotation's x position.","If the axis `type` is *log*, then you must take the","log of your desired range.","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw",description:["Sets the text box's horizontal position anchor","This anchor binds the `x` position to the *left*, *center*","or *right* of the annotation.","For example, if `x` is set to 1, `xref` to *paper* and","`xanchor` to *right* then the right-most portion of the","annotation lines up with the right-most edge of the","plotting area.","If *auto*, the anchor is equivalent to *center* for","data-referenced annotations or if there is an arrow,","whereas for paper-referenced with no arrow, the anchor picked","corresponds to the closest side."].join(" ")},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw",description:["Shifts the position of the whole annotation and arrow to the","right (positive) or left (negative) by this many pixels."].join(" ")},yref:{valType:"enumerated",values:["paper",wM.idRegex.y.toString()],editType:"calc",description:["Sets the annotation's y coordinate axis.",_M.axisRefDescription("y","bottom","top")].join(" ")},y:{valType:"any",editType:"calc+arraydraw",description:["Sets the annotation's y position.","If the axis `type` is *log*, then you must take the","log of your desired range.","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw",description:["Sets the text box's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the annotation.","For example, if `y` is set to 1, `yref` to *paper* and","`yanchor` to *top* then the top-most portion of the","annotation lines up with the top-most edge of the","plotting area.","If *auto*, the anchor is equivalent to *middle* for","data-referenced annotations or if there is an arrow,","whereas for paper-referenced with no arrow, the anchor picked","corresponds to the closest side."].join(" ")},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw",description:["Shifts the position of the whole annotation and arrow up","(positive) or down (negative) by this many pixels."].join(" ")},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw",description:["Makes this annotation respond to clicks on the plot.","If you click a data point that exactly matches the `x` and `y`","values of this annotation, and it is hidden (visible: false),","it will appear. In *onoff* mode, you must click the same point","again to make it disappear, so if you click multiple points,","you can show multiple annotations. In *onout* mode, a click","anywhere else in the plot (on another data point or not) will","hide this annotation.","If you need to show/hide this annotation in response to different","`x` or `y` values, you can set `xclick` and/or `yclick`. This is","useful for example to label the side of a bar. To label markers","though, `standoff` is preferred over `xclick` and `yclick`."].join(" ")},xclick:{valType:"any",editType:"arraydraw",description:["Toggle this annotation when clicking a data point whose `x` value","is `xclick` rather than the annotation's `x` value."].join(" ")},yclick:{valType:"any",editType:"arraydraw",description:["Toggle this annotation when clicking a data point whose `y` value","is `yclick` rather than the annotation's `y` value."].join(" ")},hovertext:{valType:"string",editType:"arraydraw",description:["Sets text to appear when hovering over this annotation.","If omitted or blank, no hover label will appear."].join(" ")},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw",description:["Sets the background color of the hover label.","By default uses the annotation's `bgcolor` made opaque,","or white if it was transparent."].join(" ")},bordercolor:{valType:"color",editType:"arraydraw",description:["Sets the border color of the hover label.","By default uses either dark grey or white, for maximum","contrast with `hoverlabel.bgcolor`."].join(" ")},font:Hte({editType:"arraydraw",description:["Sets the hover label text font.","By default uses the global hover font and size,","with color from `hoverlabel.bordercolor`."].join(" ")}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw",description:["Determines whether the annotation text box captures mouse move","and click events, or allows those events to pass through to data","points in the plot that may be behind the annotation. By default","`captureevents` is *false* unless `hovertext` is provided.","If you use the event `plotly_clickannotation` without `hovertext`","you must explicitly enable `captureevents`."].join(" ")},editType:"calc",_deprecated:{ref:{valType:"string",editType:"calc",description:["Obsolete. Set `xref` and `yref` separately instead."].join(" ")}}})});var pg=J((iPt,Gte)=>{"use strict";Gte.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var gg=J((aPt,Wte)=>{"use strict";Wte.exports=function(t){return{valType:"color",editType:"style",anim:!0,description:["Sets the fill color.","Defaults to a half-transparent variant of the line color,","marker color, or marker line color, whichever is available."+(t?" If fillgradient is specified, fillcolor is ignored except for setting the background color of the hover label, if any.":"")].join(" ")}}});var ds=J((oPt,ere)=>{"use strict";var Xte=Ga().axisHoverFormat,XQe=Jn().texttemplateAttrs,ZQe=Jn().hovertemplateAttrs,Zte=Da(),JQe=xa(),$Qe=Ss().dash,KQe=Ss().pattern,QQe=ln(),Jte=pg(),TM=cn().extendFlat,eet=gg();function $te(e){return{valType:"any",dflt:0,editType:"calc",description:["Only relevant when the axis `type` is *date*.","Sets the period positioning in milliseconds or *M* on the "+e+" axis.","Special values in the form of *M* could be used to declare","the number of months. In this case `n` must be a positive integer."].join(" ")}}function Kte(e){return{valType:"any",editType:"calc",description:["Only relevant when the axis `type` is *date*.","Sets the base for period positioning in milliseconds or date string on the "+e+" axis.","When `"+e+"period` is round number of weeks,","the `"+e+"period0` by default would be on a Sunday i.e. 2000-01-02,","otherwise it would be at 2000-01-01."].join(" ")}}function Qte(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc",description:["Only relevant when the axis `type` is *date*.","Sets the alignment of data points on the "+e+" axis."].join(" ")}}ere.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0,description:"Sets the x coordinates."},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0,description:["Alternate to `x`.","Builds a linear space of x coordinates.","Use with `dx`","where `x0` is the starting coordinate and `dx` the step."].join(" ")},dx:{valType:"number",dflt:1,editType:"calc",anim:!0,description:["Sets the x coordinate step.","See `x0` for more info."].join(" ")},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0,description:"Sets the y coordinates."},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0,description:["Alternate to `y`.","Builds a linear space of y coordinates.","Use with `dy`","where `y0` is the starting coordinate and `dy` the step."].join(" ")},dy:{valType:"number",dflt:1,editType:"calc",anim:!0,description:["Sets the y coordinate step.","See `y0` for more info."].join(" ")},xperiod:$te("x"),yperiod:$te("y"),xperiod0:Kte("x0"),yperiod0:Kte("y0"),xperiodalignment:Qte("x"),yperiodalignment:Qte("y"),xhoverformat:Xte("x"),yhoverformat:Xte("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc",description:["Set several traces linked to the same position axis","or matching axes to the same","offsetgroup where bars of the same position coordinate will line up."].join(" ")},alignmentgroup:{valType:"string",dflt:"",editType:"calc",description:["Set several traces linked to the same position axis","or matching axes to the same","alignmentgroup. This controls whether bars compute their positional","range dependently or independently."].join(" ")},stackgroup:{valType:"string",dflt:"",editType:"calc",description:["Set several scatter traces (on the same subplot) to the same","stackgroup in order to add their y values (or their x values if","`orientation` is *h*). If blank or omitted this trace will not be","stacked. Stacking also turns `fill` on by default, using *tonexty*","(*tonextx*) if `orientation` is *h* (*v*) and sets the default","`mode` to *lines* irrespective of point count.","You can only stack on a numeric (linear or log) axis.","Traces in a `stackgroup` will only fill to (or be filled to) other","traces in the same group. With multiple `stackgroup`s or some","traces stacked and some not, if fill-linked traces are not already","consecutive, the later ones will be pushed down in the drawing order."].join(" ")},orientation:{valType:"enumerated",values:["v","h"],editType:"calc",description:["Only relevant in the following cases:","1. when `scattermode` is set to *group*.","2. when `stackgroup` is used, and only the first","`orientation` found in the `stackgroup` will be used - including","if `visible` is *legendonly* but not if it is `false`. Sets the","stacking direction. With *v* (*h*), the y (x) values of subsequent","traces are added. Also affects the default value of `fill`."].join(" ")},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc",description:["Only relevant when `stackgroup` is used, and only the first","`groupnorm` found in the `stackgroup` will be used - including","if `visible` is *legendonly* but not if it is `false`.","Sets the normalization for the sum of this `stackgroup`.","With *fraction*, the value of each trace at each location is","divided by the sum of all trace values at that location.","*percent* is the same but multiplied by 100 to show percentages.","If there are multiple subplots, or multiple `stackgroup`s on one","subplot, each will be normalized within its own set."].join(" ")},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc",description:["Only relevant when `stackgroup` is used, and only the first","`stackgaps` found in the `stackgroup` will be used - including","if `visible` is *legendonly* but not if it is `false`.","Determines how we handle locations at which other traces in this","group have data but this one does not.","With *infer zero* we insert a zero at these locations.","With *interpolate* we linearly interpolate between existing","values, and extrapolate a constant beyond the existing values."].join(" ")},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:["Sets text elements associated with each (x,y) pair.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (x,y) coordinates.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},texttemplate:XQe({},{}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style",description:["Sets hover text elements associated with each (x,y) pair.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (x,y) coordinates.","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc",description:["Determines the drawing mode for this scatter trace.","If the provided `mode` includes *text* then the `text` elements","appear at the coordinates. Otherwise, the `text` elements","appear on hover.","If there are less than "+Jte.PTS_LINESONLY+" points","and the trace is not stacked","then the default is *lines+markers*. Otherwise, *lines*."].join(" ")},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style",description:["Do the hover effects highlight individual points (markers or","line points) or do they highlight filled regions?","If the fill is *toself* or *tonext* and there are no markers","or text, then the default is *fills*, otherwise it is *points*."].join(" ")},hovertemplate:ZQe({},{keys:Jte.eventDataKeys}),line:{color:{valType:"color",editType:"style",anim:!0,description:"Sets the line color."},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0,description:"Sets the line width (in px)."},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot",description:["Determines the line shape.","With *spline* the lines are drawn using spline interpolation.","The other available values correspond to step-wise line shapes."].join(" ")},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot",description:["Has an effect only if `shape` is set to *spline*","Sets the amount of smoothing.","*0* corresponds to no smoothing (equivalent to a *linear* shape)."].join(" ")},dash:TM({},$Qe,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot",description:["Sets the line back off from the end point of the nth line segment (in px).","This option is useful e.g. to avoid overlap with arrowhead markers.","With *auto* the lines would trim before markers if `marker.angleref` is set to *previous*."].join(" ")},simplify:{valType:"boolean",dflt:!0,editType:"plot",description:["Simplifies lines by removing nearly-collinear points. When transitioning","lines, it may be desirable to disable this so that the number of points","along the resulting SVG path is unaffected."].join(" ")},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not gaps","(i.e. {nan} or missing values)","in the provided data arrays are connected."].join(" ")},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot",description:["Determines whether or not markers and text nodes","are clipped about the subplot axes.","To show markers and text nodes above axis lines and tick labels,","make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*."].join(" ")},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc",description:["Sets the area to fill with a solid color.","Defaults to *none* unless this trace is stacked, then it gets","*tonexty* (*tonextx*) if `orientation` is *v* (*h*)","Use with `fillcolor` if not *none*.","*tozerox* and *tozeroy* fill to x=0 and y=0 respectively.","*tonextx* and *tonexty* fill between the endpoints of this","trace and the endpoints of the trace before it, connecting those","endpoints with straight lines (to make a stacked area graph);","if there is no trace before it, they behave like *tozerox* and","*tozeroy*.","*toself* connects the endpoints of the trace (or each segment","of the trace if it has gaps) into a closed shape.","*tonext* fills the space between two traces if one completely","encloses the other (eg consecutive contour lines), and behaves like","*toself* if there is no trace before it. *tonext* should not be","used if one trace does not enclose the other.","Traces in a `stackgroup` will only fill to (or be filled to) other","traces in the same group. With multiple `stackgroup`s or some","traces stacked and some not, if fill-linked traces are not already","consecutive, the later ones will be pushed down in the drawing order."].join(" ")},fillcolor:eet(!0),fillgradient:TM({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc",description:["Sets the type/orientation of the color gradient for the fill.","Defaults to *none*."].join(" ")},start:{valType:"number",editType:"calc",description:["Sets the gradient start value.","It is given as the absolute position on the axis determined by","the orientiation. E.g., if orientation is *horizontal*, the","gradient will be horizontal and start from the x-position","given by start. If omitted, the gradient starts at the lowest","value of the trace along the respective axis.","Ignored if orientation is *radial*."].join(" ")},stop:{valType:"number",editType:"calc",description:["Sets the gradient end value.","It is given as the absolute position on the axis determined by","the orientiation. E.g., if orientation is *horizontal*, the","gradient will be horizontal and end at the x-position","given by end. If omitted, the gradient ends at the highest","value of the trace along the respective axis.","Ignored if orientation is *radial*."].join(" ")},colorscale:{valType:"colorscale",editType:"style",description:["Sets the fill gradient colors as a color scale.","The color scale is interpreted as a gradient","applied in the direction specified by *orientation*,","from the lowest to the highest value of the scatter","plot along that axis, or from the center to the most","distant point from it, if orientation is *radial*."].join(" ")},editType:"calc",description:["Sets a fill gradient.","If not specified, the fillcolor is used instead."].join(" ")}),fillpattern:KQe,marker:TM({symbol:{valType:"enumerated",values:QQe.symbolList,dflt:"circle",arrayOk:!0,editType:"style",description:["Sets the marker symbol type.","Adding 100 is equivalent to appending *-open* to a symbol name.","Adding 200 is equivalent to appending *-dot* to a symbol name.","Adding 300 is equivalent to appending *-open-dot*","or *dot-open* to a symbol name."].join(" ")},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0,description:"Sets the marker opacity."},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1,description:["Sets the marker angle in respect to `angleref`."].join(" ")},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1,description:["Sets the reference for marker angle.","With *previous*, angle 0 points along the line from the previous point to this one.","With *up*, angle 0 points toward the top of the screen."].join(" ")},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0,description:["Moves the marker away from the data point in the direction of `angle` (in px).","This can be useful for example if you have another marker at this","location and you want to point an arrowhead marker at it."].join(" ")},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0,description:"Sets the marker size (in px)."},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets a maximum number of points to be drawn on the graph.","*0* corresponds to no limit."].join(" ")},sizeref:{valType:"number",dflt:1,editType:"calc",description:["Has an effect only if `marker.size` is set to a numerical array.","Sets the scale factor used to determine the rendered size of","marker points. Use with `sizemin` and `sizemode`."].join(" ")},sizemin:{valType:"number",min:0,dflt:0,editType:"calc",description:["Has an effect only if `marker.size` is set to a numerical array.","Sets the minimum size (in px) of the rendered marker points."].join(" ")},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc",description:["Has an effect only if `marker.size` is set to a numerical array.","Sets the rule for which the data in `size` is converted","to pixels."].join(" ")},line:TM({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0,description:"Sets the width (in px) of the lines bounding the marker points."},editType:"calc"},Zte("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc",description:["Sets the type of gradient used to fill the markers"].join(" ")},color:{valType:"color",arrayOk:!0,editType:"calc",description:["Sets the final color of the gradient fill:","the center color for radial, the right for horizontal,","or the bottom for vertical."].join(" ")},editType:"calc"},editType:"calc"},Zte("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style",description:"Sets the marker opacity of selected points."},color:{valType:"color",editType:"style",description:"Sets the marker color of selected points."},size:{valType:"number",min:0,editType:"style",description:"Sets the marker size of selected points."},editType:"style"},textfont:{color:{valType:"color",editType:"style",description:"Sets the text font color of selected points."},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style",description:"Sets the marker opacity of unselected points, applied only when a selection exists."},color:{valType:"color",editType:"style",description:"Sets the marker color of unselected points, applied only when a selection exists."},size:{valType:"number",min:0,editType:"style",description:"Sets the marker size of unselected points, applied only when a selection exists."},editType:"style"},textfont:{color:{valType:"color",editType:"style",description:"Sets the text font color of unselected points, applied only when a selection exists."},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc",description:["Sets the positions of the `text` elements","with respects to the (x,y) coordinates."].join(" ")},textfont:JQe({editType:"calc",colorEditType:"style",arrayOk:!0,description:"Sets the text font."}),zorder:{valType:"integer",dflt:0,editType:"plot",description:["Sets the layer on which this trace is displayed, relative to","other SVG traces on the same subplot. SVG traces with higher `zorder`","appear in front of those with lower `zorder`."].join(" ")}}});var C8=J((sPt,ire)=>{"use strict";var tre=dg(),rre=ds().line,tet=Ss().dash,AM=cn().extendFlat,ret=La().overrideAll,net=ki().templatedArray,nre=U2();ire.exports=ret(net("selection",{type:{valType:"enumerated",values:["rect","path"],description:["Specifies the selection type to be drawn.","If *rect*, a rectangle is drawn linking","(`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`) and (`x0`,`y1`).","If *path*, draw a custom SVG path using `path`."].join(" ")},xref:AM({},tre.xref,{description:["Sets the selection's x coordinate axis.",nre.axisRefDescription("x","left","right")].join(" ")}),yref:AM({},tre.yref,{description:["Sets the selection's x coordinate axis.",nre.axisRefDescription("y","bottom","top")].join(" ")}),x0:{valType:"any",description:"Sets the selection's starting x position."},x1:{valType:"any",description:"Sets the selection's end x position."},y0:{valType:"any",description:"Sets the selection's starting y position."},y1:{valType:"any",description:"Sets the selection's end y position."},path:{valType:"string",editType:"arraydraw",description:["For `type` *path* - a valid SVG path similar to `shapes.path` in data coordinates.","Allowed segments are: M, L and Z."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw",description:"Sets the opacity of the selection."},line:{color:rre.color,width:AM({},rre.width,{min:1,dflt:1}),dash:AM({},tet,{dflt:"dot"})}}),"arraydraw","from-root")});var lre=J((lPt,sre)=>{"use strict";var are=gt(),MM=nn(),iet=Bu(),aet=C8(),ore=w0();sre.exports=function(t,r){iet(t,r,{name:"selections",handleItemDefaults:oet});for(var n=r.selections,i=0;i{"use strict";ure.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var H2=J((fPt,vre)=>{"use strict";var set=zr(),cre=gt(),hre=jo();vre.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=set.subplotsRegistry.cartesian,s=o.idRegex,l=i._subplots,u=l.xaxis,f=l.yaxis,c=l.cartesian,h=i._has("cartesian")||i._has("gl2d"),d=0;d{"use strict";var dre=d8(),j2=Nte();pre.exports={moduleType:"component",name:"selections",layoutAttributes:C8(),supplyLayoutDefaults:lre(),supplyDrawNewSelectionDefaults:fre(),includeBasePlot:H2()("selections"),draw:dre.draw,drawOne:dre.drawOne,reselect:j2.reselect,prepSelect:j2.prepSelect,clearOutline:j2.clearOutline,clearSelectionsCache:j2.clearSelectionsCache,selectOnClick:j2.selectOnClick}});var q8=J((hPt,qre)=>{"use strict";var P8=Nr(),lc=gt(),gre=lc.numberFormat,uet=ls(),fet=d2(),kM=zr(),Mre=lc.strTranslate,cet=ca(),mre=qr(),A0=ln(),het=go(),yre=nn(),vet=th(),det=iu(),kre=y0(),SM=kre.selectingOrDrawing,pet=kre.freeMode,get=Vo().FROM_TL,met=y2(),yet=k2().redrawReglTraces,xet=ea(),L8=jo().getFromId,bet=ml().prepSelect,wet=ml().clearOutline,_et=ml().selectOnClick,E8=o8(),I8=Eo(),xre=I8.MINDRAG,ou=I8.MINZOOM,bre=!0;function Tet(e,t,r,n,i,a,o,s){var l=e._fullLayout._zoomlayer,u=o+s==="nsew",f=(o+s).length===1,c,h,d,v,m,b,g,_,T,w,k,x,M,A,p,S,y,E,C,L,R,I,P;r+=t.yaxis._shift;function D(){if(c=t.xaxis,h=t.yaxis,T=c._length,w=h._length,g=c._offset,_=h._offset,d={},d[c._id]=c,v={},v[h._id]=h,o&&s)for(var Fe=t.overlays,ke=0;ke=0){Ue._fullLayout._deactivateShape(Ue);return}var Ge=Ue._fullLayout.clickmode;if(R8(Ue),Fe===2&&!f&&rt(),u)Ge.indexOf("select")>-1&&_et(ke,Ue,m,b,t.id,U),Ge.indexOf("event")>-1&&het.click(Ue,ke,t.id);else if(Fe===1&&f){var lt=o?h:c,it=o==="s"||s==="w"?0:1,wt=lt._name+".range["+it+"]",_t=Aet(lt,it),Tt="left",nt="middle";if(lt.fixedrange)return;o?(nt=o==="n"?"top":"bottom",lt.side==="right"&&(Tt="right")):s==="e"&&(Tt="right"),Ue._context.showAxisRangeEntryBoxes&&P8.select(N).call(cet.makeEditable,{gd:Ue,immediate:!0,background:Ue._fullLayout.paper_bgcolor,text:String(_t),fill:lt.tickfont?lt.tickfont.color:"#444",horizontalAlign:Tt,verticalAlign:nt}).on("edit",function(bt){var At=lt.d2r(bt);At!==void 0&&kM.call("_guiRelayout",Ue,wt,At)})}}det.init(U);var Q,j,O,Z,K,$,oe,te,V,ne;function W(Fe,ke,Ue){var Ge=N.getBoundingClientRect();Q=ke-Ge.left,j=Ue-Ge.top,e._fullLayout._calcInverseTransform(e);var lt=lc.apply3DTransform(e._fullLayout._invTransform)(Q,j);Q=lt[0],j=lt[1],O={l:Q,r:Q,w:0,t:j,b:j,h:0},Z=e._hmpixcount?e._hmlumcount/e._hmpixcount:uet(e._fullLayout.plot_bgcolor).getLuminance(),K="M0,0H"+T+"V"+w+"H0V0",$=!1,oe="xy",ne=!1,te=Ere(l,Z,g,_,K),V=Lre(l,g,_)}function fe(Fe,ke){if(e._transitioningWithDuration)return!1;var Ue=Math.max(0,Math.min(T,I*Fe+Q)),Ge=Math.max(0,Math.min(w,P*ke+j)),lt=Math.abs(Ue-Q),it=Math.abs(Ge-j);O.l=Math.min(Q,Ue),O.r=Math.max(Q,Ue),O.t=Math.min(j,Ge),O.b=Math.max(j,Ge);function wt(){oe="",O.r=O.l,O.t=O.b,V.attr("d","M0,0Z")}if(k.isSubplotConstrained)lt>ou||it>ou?(oe="xy",lt/T>it/w?(it=lt*w/T,j>Ge?O.t=j-it:O.b=j+it):(lt=it*T/w,Q>Ue?O.l=Q-lt:O.r=Q+lt),V.attr("d",CM(O))):wt();else if(x.isSubplotConstrained)if(lt>ou||it>ou){oe="xy";var _t=Math.min(O.l/T,(w-O.b)/w),Tt=Math.max(O.r/T,(w-O.t)/w);O.l=_t*T,O.r=Tt*T,O.b=(1-_t)*w,O.t=(1-Tt)*w,V.attr("d",CM(O))}else wt();else!A||it0){var bt;if(x.isSubplotConstrained||!M&&A.length===1){for(bt=0;bt1&&(wt.maxallowed!==void 0&&S===(wt.range[0]1&&(_t.maxallowed!==void 0&&y===(_t.range[0]<_t.range[1]?"n":"s")||_t.minallowed!==void 0&&y===(_t.range[0]<_t.range[1]?"s":"n"))&&(ve=1,ie=0),!(!$e&&!ve)){$e||($e=1),ve||(ve=1);var Te=wt._offset-Y/$e,Ve=_t._offset-ie/ve;it.clipRect.call(A0.setTranslate,Y,ie).call(A0.setScale,$e,ve),it.plot.call(A0.setTranslate,Te,Ve).call(A0.setScale,1/$e,1/ve),($e!==it.xScaleFactor||ve!==it.yScaleFactor)&&(A0.setPointGroupScale(it.zoomScalePts,$e,ve),A0.setTextPointsScale(it.zoomScaleTxt,$e,ve)),A0.hideOutsideRangePoints(it.clipOnAxisFalseTraces,it),it.xScaleFactor=$e,it.yScaleFactor=ve}}}}function Ae(Fe,ke,Ue){return Fe.fixedrange?0:S&&k.xaHash[Fe._id]?ke:y&&(k.isSubplotConstrained?k.xaHash:k.yaHash)[Fe._id]?Ue:0}function Pe(Fe,ke){return ke?(Fe.range=Fe._r.slice(),E8(Fe,ke),He(Fe,ke)):0}function He(Fe,ke,Ue){return Fe._length*(1-ke)*get[Ue||Fe.constraintoward||"middle"]}return N}function Sre(e,t,r,n){var i=lc.ensureSingle(e.draglayer,t,r,function(a){a.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",e.id)});return i.call(vet,n),i.node()}function Cre(e,t,r,n,i,a,o){var s=Sre(e,"rect",t,r);return P8.select(s).call(A0.setRect,n,i,a,o),s}function wre(e,t){for(var r=0;r=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function ket(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function Ere(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",Mre(r,n)).attr("d",i+"Z")}function Lre(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:mre.background,stroke:mre.defaultLine,"stroke-width":1,opacity:0}).attr("transform",Mre(t,r)).attr("d","M0,0Z")}function Dre(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),Rre(e,t,i,a)}function Rre(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function R8(e){P8.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function Pre(e){bre&&e.data&&e._context.showTips&&(lc.notifier(lc._(e,"Double-click to zoom back out"),"long"),bre=!1)}function Set(e,t){return"M"+(e.l-.5)+","+(t-ou-.5)+"h-3v"+(2*ou+1)+"h3ZM"+(e.r+.5)+","+(t-ou-.5)+"h3v"+(2*ou+1)+"h-3Z"}function Cet(e,t){return"M"+(t-ou-.5)+","+(e.t-.5)+"v-3h"+(2*ou+1)+"v3ZM"+(t-ou-.5)+","+(e.b+.5)+"v3h"+(2*ou+1)+"v-3Z"}function CM(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,ou)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function Tre(e,t,r,n,i){for(var a=!1,o={},s={},l,u,f,c,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v{"use strict";var Eet=Nr(),EM=go(),Let=iu(),Det=th(),ih=q8().makeDragBox,ps=Eo().DRAGGERSIZE;LM.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){Eet.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=ih(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&EM.hover(t,h,a)},EM.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,Let.unhover(t,h))},t._context.showAxisDragHandles&&(ih(t,o,s._offset-ps,l._offset-ps,ps,ps,"n","w"),ih(t,o,s._offset+s._length,l._offset-ps,ps,ps,"n","e"),ih(t,o,s._offset-ps,l._offset+l._length,ps,ps,"s","w"),ih(t,o,s._offset+s._length,l._offset+l._length,ps,ps,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var f=s._mainLinePosition;s.side==="top"&&(f-=ps),ih(t,o,s._offset+s._length*.1,f,s._length*.8,ps,"","ew"),ih(t,o,s._offset,f,s._length*.1,ps,"","w"),ih(t,o,s._offset+s._length*.9,f,s._length*.1,ps,"","e")}if(a===l._mainSubplot){var c=l._mainLinePosition;l.side!=="right"&&(c-=ps),ih(t,o,c,l._offset+l._length*.1,ps,l._length*.8,"ns",""),ih(t,o,c,l._offset+l._length*.9,ps,l._length*.1,"s",""),ih(t,o,c,l._offset,ps,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,EM.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,EM.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},LM.updateFx(t)}};LM.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";Det(t._draggers,r)}});var Nre=J((dPt,zre)=>{"use strict";var Fre=zr();zre.exports=function(t){for(var r=Fre.layoutArrayContainers,n=Fre.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s{"use strict";var Ret=Bv(),z8=bT(),V2=Kd(),Pet=IT().sorterAsc,N8=zr();Y2.containerArrayMatch=Nre();var Iet=Y2.isAddVal=function(t){return t==="add"||Ret(t)},Ore=Y2.isRemoveVal=function(t){return t===null||t==="remove"};Y2.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=N8.getComponentMethod(o,"supplyLayoutDefaults"),l=N8.getComponentMethod(o,"draw"),u=N8.getComponentMethod(o,"drawOne"),f=i.replot||i.recalc||s===z8||l===z8,c=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&V2.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(Ore(d))r.set(null);else if(Array.isArray(d))r.set(d);else return V2.warn("Unrecognized full array edit value",o,d),!0;return f?!1:(s(c,h),l(t),!0)}var v=Object.keys(n).map(Number).sort(Pet),m=r.get(),b=m||[],g=a(h,o).get(),_=[],T=-1,w=b.length,k,x,M,A,p,S,y,E;for(k=0;kb.length-(y?0:1)){V2.warn("index out of range",o,M);continue}if(S!==void 0)p.length>1&&V2.warn("Insertion & removal are incompatible with edits to the same index.",o,M),Ore(S)?_.push(M):y?(S==="add"&&(S={}),b.splice(M,0,S),g&&g.splice(M,0,{})):V2.warn("Unrecognized full object edit value",o,M,S),T===-1&&(T=M);else for(x=0;x=0;k--)b.splice(_[k],1),g&&g.splice(_[k],1);if(b.length?m||r.set(b):r.set(null),f)return!1;if(s(c,h),u!==z8){var C;if(T===-1)C=v;else{for(w=Math.max(b.length,w),C=[],k=0;k=T));k++)C.push(M);for(k=T;k{"use strict";var Vre=dn(),qet=AE(),Yre=zr(),lu=gt(),W2=ea(),Gre=jo(),mg=qr(),X2=Gre.cleanId,Fet=Gre.getFromTrace,G2=Yre.traceIs;uc.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&lu.log("Clearing previous rejected promises from queue."),e._promises=[]};uc.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(W2.subplotsRegistry.cartesian||{}).attrRegex,i=(W2.subplotsRegistry.polar||{}).attrRegex,a=(W2.subplotsRegistry.ternary||{}).attrRegex,o=(W2.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t3?(p.x=1.02,p.xanchor="left"):p.x<-2&&(p.x=-.02,p.xanchor="right"),p.y>3?(p.y=1.02,p.yanchor="bottom"):p.y<-2&&(p.y=-.02,p.yanchor="top")),su(e),e.dragmode==="rotate"&&(e.dragmode="orbit"),mg.clean(e),e.template&&e.template.layout&&uc.cleanLayout(e.template.layout),e};function sy(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=X2(r,n,!0))}function su(e){e&&((typeof e.title=="string"||typeof e.title=="number")&&(e.title={text:e.title}),t("titlefont","font"),t("titleposition","position"),t("titleside","side"),t("titleoffset","offset"));function t(r,n){var i=e[r],a=e.title&&e.title[n];i&&!a&&(e.title||(e.title={}),e.title[n]=e[r],delete e[r])}}uc.cleanData=function(e){for(var t=0;t0)return e.substr(0,t)}uc.hasParent=function(e,t){for(var r=jre(t);r;){if(r in e)return!0;r=jre(r)}return!1};var Oet=["x","y","z"];uc.clearAxisTypes=function(e,t,r){for(var n=0;n{"use strict";var IM=Nr(),Bet=dn(),Uet=VE(),Mr=gt(),ra=Mr.nestedProperty,U8=P1(),uu=RX(),fc=zr(),UM=o0(),hn=ea(),Ol=nn(),Het=hD(),jet=hl(),O8=ln(),Vet=qr(),Yet=F8().initInteractions,Get=Gh(),Wet=ml().clearOutline,Kre=qp().dfltConfig,RM=Bre(),Po=Wre(),zi=k2(),M0=La(),Xet=Eo().AX_NAME_PATTERN,B8=0,Xre=5;function Zet(e,t,r,n){var i;if(e=Mr.getGraphDiv(e),U8.init(e),Mr.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=U8.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!Mr.isPlotDiv(e)&&Mr.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return gi.addFrames(e,i)}ene(e,n),r||(r={}),IM.select(e).classed("js-plotly-plot",!0),O8.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(Po.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=Po.cleanLayout(r)),hn.supplyDefaults(e);var u=e._fullLayout,f=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&(mtt(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),O8.initGradients(e),O8.initPatterns(e),l&&Ol.saveShowSpikeInitial(e);var c=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;c&&hn.doCalcdata(e);for(var h=0;h=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function tne(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),FM(e,t,"currentIndices"),typeof r<"u"&&!Array.isArray(r)&&(r=[r]),typeof r<"u"&&FM(e,r,"newIndices"),typeof r<"u"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function ett(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t>"u")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n"u")throw new Error("indices must be an integer or array of integers");FM(e,r,"indices");for(var a in t){if(!Array.isArray(t[a])||t[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!==t[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 rtt(e,t,r,n){var i=Mr.isPlainObject(n),a=[],o,s,l,u,f;Array.isArray(r)||(r=[r]),r=qM(r,e.data.length-1);for(var c in t)for(var h=0;h=0&&f=0&&f"u")return u=gi.redraw(e),uu.add(e,i,o,a,s),u;Array.isArray(r)||(r=[r]);try{tne(e,n,r)}catch(f){throw e.data.splice(e.data.length-t.length,t.length),f}return uu.startSequence(e),uu.add(e,i,o,a,s),u=gi.moveTraces(e,n,r),uu.stopSequence(e),u}function sne(e,t){e=Mr.getGraphDiv(e);var r=[],n=gi.addTraces,i=sne,a=[e,r,t],o=[e,t],s,l;if(typeof t>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(t)||(t=[t]),FM(e,t,"indices"),t=qM(t,e.data.length-1),t.sort(Mr.sorterDes),s=0;s"u")for(r=[],u=0;u-1&&a.indexOf("grouptitlefont")===-1?s(a,a.replace("titlefont","title.font")):a.indexOf("titleposition")>-1?s(a,a.replace("titleposition","title.position")):a.indexOf("titleside")>-1?s(a,a.replace("titleside","title.side")):a.indexOf("titleoffset")>-1&&s(a,a.replace("titleoffset","title.offset"));function s(l,u){e[u]=e[l],delete e[l]}}function Z2(e,t,r){e=Mr.getGraphDiv(e),Po.clearPromiseQueue(e);var n={};if(typeof t=="string")n[t]=r;else if(Mr.isPlainObject(t))n=Mr.extendFlat({},t);else return Mr.warn("Relayout fail.",t,r),Promise.reject();Object.keys(n).length&&(e.changed=!0);var i=dne(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var o=[hn.previousPromises];a.layoutReplot?o.push(zi.layoutReplot):Object.keys(n).length&&(fne(e,a,i)||hn.supplyDefaults(e),a.legend&&o.push(zi.doLegend),a.layoutstyle&&o.push(zi.layoutStyles),a.axrange&&HM(o,i.rangesAltered),a.ticks&&o.push(zi.doTicksRelayout),a.modebar&&o.push(zi.doModeBar),a.camera&&o.push(zi.doCamera),a.colorbars&&o.push(zi.doColorBars),o.push(J2)),o.push(hn.rehover,hn.redrag,hn.reselect),uu.add(e,Z2,[e,i.undoit],Z2,[e,i.redoit]);var s=Mr.syncOrAsync(o,e);return(!s||!s.then)&&(s=Promise.resolve(e)),s.then(function(){return e.emit("plotly_relayout",i.eventData),e})}function fne(e,t,r){var n=e._fullLayout;if(!t.axrange)return!1;for(var i in t)if(i!=="axrange"&&t[i])return!1;var a,o,s=function(d,v){return Mr.coerce(a,o,jet,d,v)},l={};for(var u in r.rangesAltered){var f=Ol.id2name(u);if(a=e.layout[f],o=n[f],Het(a,o,s,l),o._matchGroup){for(var c in o._matchGroup)if(c!==u){var h=n[Ol.id2name(c)];h.autorange=o.autorange,h.range=o.range.slice(),h._input.range=o.range.slice()}}}return!0}function HM(e,t){var r=t?function(n){var i=[],a=!0;for(var o in t){var s=Ol.getFromId(n,o);if(i.push(o),(s.ticklabelposition||"").indexOf("inside")!==-1&&s._anchorAxis&&i.push(s._anchorAxis._id),s._matchGroup)for(var l in s._matchGroup)t[l]||i.push(l)}return Ol.draw(n,i,{skipTitle:a})}:function(n){return Ol.draw(n,"redraw")};e.push(Wet,zi.doAutoRangeAndConstraints,r,zi.drawData,zi.finalDraw)}var cne=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,hne=/^[xyz]axis[0-9]*\.autorange$/,vne=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function dne(e,t){var r=e.layout,n=e._fullLayout,i=n._guiEditing,a=PM(n._preGUI,i),o=Object.keys(t),s=Ol.list(e),l=Mr.extendDeepAll({},t),u={},f,c,h;for(une(t),o=Object.keys(t),c=0;c0&&typeof A.parts[y]!="string";)y--;var E=A.parts[y],C=A.parts[y-1]+"."+E,L=A.parts.slice(0,y).join("."),R=ra(e.layout,L).get(),I=ra(n,L).get(),P=A.get();if(p!==void 0){g[M]=p,_[M]=E==="reverse"?p:rd(P);var D=UM.getLayoutValObject(n,A.parts);if(D&&D.impliedEdits&&p!==null)for(var q in D.impliedEdits)T(Mr.relativeAttr(M,q),D.impliedEdits[q]);if(["width","height"].indexOf(M)!==-1)if(p){T("autosize",null);var N=M==="height"?"width":"height";T(N,n[N])}else n[M]=e._initialAutoSize[M];else if(M==="autosize")T("width",p?null:n.width),T("height",p?null:n.height);else if(C.match(cne))x(C),ra(n,L+"._inputRange").set(null);else if(C.match(hne)){x(C),ra(n,L+"._inputRange").set(null);var U=ra(n,L).get();U._inputDomain&&(U._input.domain=U._inputDomain.slice())}else C.match(vne)&&ra(n,L+"._inputDomain").set(null);if(E==="type"){k=R;var G=I.type==="linear"&&p==="log",ee=I.type==="log"&&p==="linear";if(G||ee){if(!k||!k.range)T(L+".autorange",!0);else if(I.autorange)G&&(k.range=k.range[1]>k.range[0]?[1,2]:[2,1]);else{var Q=k.range[0],j=k.range[1];G?(Q<=0&&j<=0&&T(L+".autorange",!0),Q<=0?Q=j/1e6:j<=0&&(j=Q/1e6),T(L+".range[0]",Math.log(Q)/Math.LN10),T(L+".range[1]",Math.log(j)/Math.LN10)):(T(L+".range[0]",Math.pow(10,Q)),T(L+".range[1]",Math.pow(10,j)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[A.parts[0]]&&A.parts[1]==="radialaxis"&&delete n[A.parts[0]]._subplot.viewInitial["radialaxis.range"],fc.getComponentMethod("annotations","convertCoords")(e,I,p,T),fc.getComponentMethod("images","convertCoords")(e,I,p,T)}else T(L+".autorange",!0),T(L+".range",null);ra(n,L+"._inputRange").set(null)}else if(E.match(Xet)){var O=ra(n,M).get(),Z=(p||{}).type;(!Z||Z==="-")&&(Z="linear"),fc.getComponentMethod("annotations","convertCoords")(e,O,Z,T),fc.getComponentMethod("images","convertCoords")(e,O,Z,T)}var K=RM.containerArrayMatch(M);if(K){f=K.array,c=K.index;var $=K.property,oe=D||{editType:"calc"};c!==""&&$===""&&(RM.isAddVal(p)?_[M]=null:RM.isRemoveVal(p)?_[M]=(ra(r,f).get()||[])[c]:Mr.warn("unrecognized full object value",t)),M0.update(b,oe),u[f]||(u[f]={});var te=u[f][c];te||(te=u[f][c]={}),te[$]=p,delete t[M]}else E==="reverse"?(R.range?R.range.reverse():(T(L+".autorange",!0),R.range=[1,0]),I.autorange?b.calc=!0:b.plot=!0):(M==="dragmode"&&(p===!1&&P!==!1||p!==!1&&P===!1)||n._has("scatter-like")&&n._has("regl")&&M==="dragmode"&&(p==="lasso"||p==="select")&&!(P==="lasso"||P==="select")||n._has("gl2d")?b.plot=!0:D?M0.update(b,D):b.calc=!0,A.set(p))}}for(f in u){var V=RM.applyContainerArrayChanges(e,a(r,f),u[f],b,a);V||(b.plot=!0)}for(var ne in w){k=Ol.getFromId(e,ne);var W=k&&k._constraintGroup;if(W){b.calc=!0;for(var fe in W)w[fe]||(Ol.getFromId(e,fe)._constraintShrinkable=!0)}}(pne(e)||t.height||t.width)&&(b.plot=!0);var ge=n.shapes;for(c=0;c1;)if(n.pop(),r=ra(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function ott(e,t){for(var r=0;r=i.length?i[0]:i[u]:i}function s(u){return Array.isArray(a)?u>=a.length?a[0]:a[u]:a}function l(u,f){var c=0;return function(){if(u&&++c===f)return u()}}return new Promise(function(u,f){function c(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var E=n._frameQueue.pop();E.onInterrupt&&E.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(E){if(E.length!==0){for(var C=0;Cn._timeToNext&&v()};E()}var b=0;function g(E){return Array.isArray(i)?b>=i.length?E.transitionOpts=i[b]:E.transitionOpts=i[0]:E.transitionOpts=i,b++,E}var _,T,w=[],k=t==null,x=Array.isArray(t),M=!k&&!x&&Mr.isPlainObject(t);if(M)w.push({type:"object",data:g(Mr.extendFlat({},t))});else if(k||["string","number"].indexOf(typeof t)!==-1)for(_=0;_0&&SS)&&y.push(T);w=y}}w.length>0?h(w):(e.emit("plotly_animated"),u())})}function vtt(e,t,r){if(e=Mr.getGraphDiv(e),t==null)return Promise.resolve();if(!Mr.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,l=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var u=s.length+t.length*2,f=[],c={};for(n=t.length-1;n>=0;n--)if(Mr.isPlainObject(t[n])){var h=t[n].name,d=(l[h]||c[h]||{}).name,v=t[n].name,m=l[d]||c[d];d&&v&&typeof v=="number"&&m&&B8A.index?-1:M.index=0;n--){if(i=f[n].frame,typeof i.name=="number"&&Mr.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;l[i.name="frame "+e._transitionData._counter++];);if(l[i.name]){for(a=0;a=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=hn.modifyFrames,l=hn.modifyFrames,u=[e,o],f=[e,a];return uu&&uu.add(e,s,u,l,f),hn.modifyFrames(e,a)}function ptt(e){e=Mr.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return hn.cleanPlot([],{},r,t),hn.purge(e),U8.purge(e),t._container&&t._container.remove(),delete e._context,e}function gtt(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!Mr.equalDomRects(r,t._lastBBox)){var n=t._invTransform=Mr.inverseTransformMatrix(Mr.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function mtt(e){var t=IM.select(e),r=e._fullLayout;if(r._calcInverseTransform=gtt,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};IM.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=Mr.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(Get.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}gi.animate=htt;gi.addFrames=vtt;gi.deleteFrames=dtt;gi.addTraces=one;gi.deleteTraces=sne;gi.extendTraces=ine;gi.moveTraces=H8;gi.prependTraces=ane;gi.newPlot=Qet;gi._doPlot=Zet;gi.purge=ptt;gi.react=utt;gi.redraw=Ket;gi.relayout=Z2;gi.restyle=zM;gi.setPlotConfig=Jet;gi.update=OM;gi._guiRelayout=V8(Z2);gi._guiRestyle=V8(zM);gi._guiUpdate=V8(OM);gi._storeDirectGUIEdit=ntt});var yg=J(ah=>{"use strict";var ytt=zr();ah.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("gl2d")||e._has("mapbox"))?500:0};ah.getRedrawFunc=function(e){return function(){ytt.getComponentMethod("colorbar","draw")(e)}};ah.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};ah.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var gne=window.URL||window.webkitURL;ah.createObjectURL=function(e){return gne.createObjectURL(e)};ah.revokeObjectURL=function(e){return gne.revokeObjectURL(e)};ah.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=xtt(window.atob(e));return new window.Blob([r],{type:"image/"+t})};ah.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function xtt(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i{"use strict";var G8=Nr(),btt=gt(),wtt=ln(),_tt=qr(),VM=Gh(),Y8=/"/g,$2="TOBESTRIPPED",Ttt=new RegExp('("'+$2+")|("+$2+'")',"g");function Att(e){var t=G8.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="<"?"<":n==="&rt;"?">":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function Mtt(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")}mne.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(wtt.setRect,0,0,s,l).call(_tt.fill,i.paper_bgcolor);var f=i._basePlotModules||[];for(u=0;u{"use strict";var yne=gt(),ktt=VT().EventEmitter,ly=yg();function Stt(e){var t=e.emitter||new ktt,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png";if(yne.isIE()&&s!=="svg"){var l=new Error(ly.MSG_IE_BAD_FORMAT);return i(l),e.promise?r:t.emit("error",l)}var u=e.canvas,f=e.scale||1,c=e.width||300,h=e.height||150,d=f*c,v=f*h,m=u.getContext("2d",{willReadFrequently:!0}),b=new a,g,_;s==="svg"||yne.isSafari()?_=ly.encodeSVG(o):(g=ly.createBlob(o,"svg"),_=ly.createObjectURL(g)),u.width=d,u.height=v,b.onload=function(){var T;switch(g=null,ly.revokeObjectURL(_),s!=="svg"&&m.drawImage(b,0,0,d,v),s){case"jpeg":T=u.toDataURL("image/jpeg");break;case"png":T=u.toDataURL("image/png");break;case"webp":T=u.toDataURL("image/webp");break;case"svg":T=_;break;default:var w="Image format is not jpeg, png, svg or webp.";if(i(new Error(w)),!e.promise)return t.emit("error",w)}n(T),e.promise||t.emit("success",T)},b.onerror=function(T){if(g=null,ly.revokeObjectURL(_),i(T),!e.promise)return t.emit("error",T)},b.src=_});return e.promise?r:t}xne.exports=Stt});var X8=J((wPt,_ne)=>{"use strict";var bne=dn(),wne=jM(),Ctt=ea(),rv=gt(),K2=yg(),Ett=YM(),Ltt=GM(),Dtt=iT().version,W8={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png",description:"Sets the format of exported image."},width:{valType:"number",min:1,description:["Sets the exported image width.","Defaults to the value found in `layout.width`","If set to *null*, the exported image width will match the current graph width."].join(" ")},height:{valType:"number",min:1,description:["Sets the exported image height.","Defaults to the value found in `layout.height`","If set to *null*, the exported image height will match the current graph height."].join(" ")},scale:{valType:"number",min:0,dflt:1,description:["Sets a scaling for the generated image.","If set, all features of a graphs (e.g. text, line width)","are scaled, unlike simply setting","a bigger *width* and *height*."].join(" ")},setBackground:{valType:"any",dflt:!1,description:["Sets the image background mode.","By default, the image background is determined by `layout.paper_bgcolor`,","the *transparent* mode.","One might consider setting `setBackground` to *opaque*","when exporting a *jpeg* image as JPEGs do not support opacity."].join(" ")},imageDataOnly:{valType:"boolean",dflt:!1,description:["Determines whether or not the return value is prefixed by","the image format's corresponding 'data:image;' spec."].join(" ")}};function Rtt(e,t){t=t||{};var r,n,i,a;rv.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=rv.getGraphDiv(e),r=rv.extendDeep([],e.data),n=rv.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(x){return!(x in t)||rv.validate(t[x],W8[x])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+rv.join2(W8.format.values,", "," or ")+".");var s={};function l(x,M){return rv.coerce(t,s,W8,x,M)}var u=l("format"),f=l("width"),c=l("height"),h=l("scale"),d=l("setBackground"),v=l("imageDataOnly"),m=document.createElement("div");m.style.position="absolute",m.style.left="-5000px",document.body.appendChild(m);var b=rv.extendFlat({},n);f?b.width=f:t.width===null&&bne(a.width)&&(b.width=a.width),c?b.height=c:t.height===null&&bne(a.height)&&(b.height=a.height);var g=rv.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),_=K2.getRedrawFunc(m);function T(){return new Promise(function(x){setTimeout(x,K2.getDelay(m._fullLayout))})}function w(){return new Promise(function(x,M){var A=Ett(m,u,h),p=m._fullLayout.width,S=m._fullLayout.height;function y(){wne.purge(m),document.body.removeChild(m)}if(u==="full-json"){var E=Ctt.graphJson(m,!1,"keepdata","object",!0,!0);return E.version=Dtt,E=JSON.stringify(E),y(),x(v?E:K2.encodeJSON(E))}if(y(),u==="svg")return x(v?A:K2.encodeSVG(A));var C=document.createElement("canvas");C.id=rv.randstr(),Ltt({format:u,width:p,height:S,scale:h,canvas:C,svg:A,promise:!0}).then(x).catch(M)})}function k(x){return v?x.replace(K2.IMAGE_URL_PREFIX,""):x}return new Promise(function(x,M){wne.newPlot(m,r,b,g).then(_).then(T).then(w).then(function(A){x(k(A))}).catch(function(A){M(A)})})}_ne.exports=Rtt});var kne=J((_Pt,Mne)=>{"use strict";var hc=gt(),Ptt=ea(),Itt=o0(),qtt=qp().dfltConfig,cc=hc.isPlainObject,k0=Array.isArray,Tne=hc.isArrayOrTypedArray;Mne.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=Itt.get(),i=[],a={_context:hc.extendFlat({},qtt)},o,s;k0(t)?(a.data=hc.extendDeep([],t),o=t):(a.data=[],o=[],i.push(Io("array","data"))),cc(r)?(a.layout=hc.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(Io("object","layout"))),Ptt.supplyDefaults(a);for(var l=a._fullData,u=o.length,f=0;fc.length&&n.push(Io("unused",i,u.concat(c.length)));var g=c.length,_=Array.isArray(b);_&&(g=Math.min(g,b.length));var T,w,k,x,M;if(h.dimensions===2)for(w=0;wc[w].length&&n.push(Io("unused",i,u.concat(w,c[w].length)));var A=c[w].length;for(T=0;T<(_?Math.min(A,b[w].length):A);T++)k=_?b[w][T]:b,x=f[w][T],M=c[w][T],hc.validate(x,k)?M!==x&&M!==+x&&n.push(Io("dynamic",i,u.concat(w,T),x,M)):n.push(Io("value",i,u.concat(w,T),x))}else n.push(Io("array",i,u.concat(w),f[w]));else for(w=0;w{"use strict";var Sne=gt(),ew=yg();function Htt(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var l,u;if(Sne.isIE())return l=ew.createBlob(e,"svg"),window.navigator.msSaveBlob(l,t),l=null,o(t);if(i)return l=ew.createBlob(e,r),u=ew.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),ew.revokeObjectURL(u),l=null,o(t);if(Sne.isSafari()){var f=r==="svg"?",":";base64,";return ew.octetStream(f+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}Cne.exports=Htt});var J8=J((APt,Lne)=>{"use strict";var Z8=gt(),jtt=X8(),Vtt=Ene(),Ytt=yg();function Gtt(e,t){var r;return Z8.isPlainObject(e)||(r=Z8.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),Z8.isIE()&&t.format!=="svg"&&i(new Error(Ytt.MSG_IE_BAD_FORMAT)),r&&(r._snapshotInProgress=!0);var a=jtt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),Vtt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}Lne.exports=Gtt});var qne=J($8=>{"use strict";var Yu=gt(),Gu=Yu.isPlainObject,Dne=o0(),Rne=ea(),Wtt=Qi(),Pne=ki(),Ine=qp().dfltConfig;$8.makeTemplate=function(e){e=Yu.isPlainObject(e)?e:Yu.getGraphDiv(e),e=Yu.extendDeep({_context:Ine},{data:e.data,layout:e.layout}),Rne.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};tw(d,v,Ztt.bind(null,d));var m=Yu.coerce(d,{},Wtt,"type"),b=n.data[m];b||(b=n.data[m]=[]),b.push(v)}),tw(r,n.layout,Xtt.bind(null,r)),delete n.layout.template;var i=r.template;if(Gu(i)){var a=i.layout,o,s,l,u,f,c;Gu(a)&&WM(a,n.layout);var h=i.data;if(Gu(h)){for(s in n.data)if(l=h[s],Array.isArray(l)){for(f=n.data[s],c=f.length,u=l.length,o=0;og?o.push({code:"unused",traceType:d,templateCount:b,dataCount:g}):g>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:g})}}function _(T,w){for(var k in T)if(k.charAt(0)!=="_"){var x=T[k],M=vc(T,k,w);Gu(x)?(Array.isArray(T)&&x._template===!1&&x.templateitemname&&o.push({code:"missing",path:M,templateitemname:x.templateitemname}),_(x,M)):Array.isArray(x)&&Jtt(x)&&_(x,M)}}if(_({data:l,layout:s},""),o.length)return o.map($tt)};function Jtt(e){for(var t=0;t{"use strict";var Go=jM();_a._doPlot=Go._doPlot;_a.newPlot=Go.newPlot;_a.restyle=Go.restyle;_a.relayout=Go.relayout;_a.redraw=Go.redraw;_a.update=Go.update;_a._guiRestyle=Go._guiRestyle;_a._guiRelayout=Go._guiRelayout;_a._guiUpdate=Go._guiUpdate;_a._storeDirectGUIEdit=Go._storeDirectGUIEdit;_a.react=Go.react;_a.extendTraces=Go.extendTraces;_a.prependTraces=Go.prependTraces;_a.addTraces=Go.addTraces;_a.deleteTraces=Go.deleteTraces;_a.moveTraces=Go.moveTraces;_a.purge=Go.purge;_a.addFrames=Go.addFrames;_a.deleteFrames=Go.deleteFrames;_a.animate=Go.animate;_a.setPlotConfig=Go.setPlotConfig;var Ktt=Ob().getGraphDiv,Qtt=sM().eraseActiveShape;_a.deleteActiveShape=function(e){return Qtt(Ktt(e))};_a.toImage=X8();_a.validate=kne();_a.downloadImage=J8();var Fne=qne();_a.makeTemplate=Fne.makeTemplate;_a.validateTemplate=Fne.validateTemplate});var rw=J((SPt,Nne)=>{"use strict";var K8=gt(),ert=zr();Nne.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=ert.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=K8.minRowLength(a);o?s=Math.min(u,K8.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=K8.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var nv=J((CPt,Une)=>{"use strict";var One=gt().dateTick0,trt=oi(),rrt=trt.ONEWEEK;function Bne(e,t){return e%rrt===0?One(t,1):One(t,0)}Une.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",Bne(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",Bne(s,r.ycalendar)),i("yperiodalignment"))}}});var Vne=J((EPt,jne)=>{"use strict";var Hne=["orientation","groupnorm","stackgaps"];jne.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],f=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},f=!0);for(var c={orientation:r.x&&!r.y?"h":"v"},h=0;h{"use strict";var Yne=qr(),Gne=nu().hasColorscale,Wne=vl(),nrt=fs();Xne.exports=function(t,r,n,i,a,o){var s=nrt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),Gne(t,"marker")&&Wne(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=Yne.background:u=Yne.defaultLine,a("marker.line.color",u),Gne(t,"marker.line")&&Wne(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var f=a("marker.gradient.type");f!=="none"&&a("marker.gradient.color")}}});var wg=J((DPt,Zne)=>{"use strict";var irt=gt().isArrayOrTypedArray,art=nu().hasColorscale,ort=vl();Zne.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),art(t,"line"))ort(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(irt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var nw=J((RPt,Jne)=>{"use strict";Jne.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var _g=J((PPt,$ne)=>{"use strict";var srt=gt();$ne.exports=function(e,t,r,n,i){i=i||{},n("textposition"),srt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var uy=J((IPt,Qne)=>{"use strict";var ZM=qr(),Kne=gt().isArrayOrTypedArray;function lrt(e){for(var t=ZM.interpolate(e[0][1],e[1][1],.5),r=2;r{"use strict";var eie=gt(),urt=zr(),frt=ds(),crt=pg(),fy=fs(),hrt=rw(),vrt=nv(),drt=Vne(),prt=bg(),grt=wg(),tie=nw(),mrt=_g(),yrt=uy(),xrt=gt().coercePattern;rie.exports=function(t,r,n,i){function a(d,v){return eie.coerce(t,r,frt,d,v)}var o=hrt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){vrt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=drt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o{"use strict";var brt=_0().getAxisGroup;iie.exports=function(t,r,n,i){var a=r.orientation,o=r[{v:"x",h:"y"}[a]+"axis"],s=brt(n,o)+a,l=n._alignmentOpts||{},u=i("alignmentgroup"),f=l[s];f||(f=l[s]={});var c=f[u];c?c.traces.push(r):c=f[u]={traces:[r],alignmentIndex:Object.keys(f).length,offsetGroups:{}};var h=i("offsetgroup"),d=c.offsetGroups,v=d[h];h&&(v||(v=d[h]={offsetIndex:Object.keys(d).length}),r._offsetIndex=v.offsetIndex)}});var oie=J((zPt,aie)=>{"use strict";var wrt=gt(),_rt=Tg(),Trt=ds();aie.exports=function(t,r){var n,i,a;function o(c){return wrt.coerce(i._input,i,Trt,c)}if(r.scattermode==="group")for(a=0;a=0;u--){var f=t[u];if(f.type==="scatter"&&f.xaxis===s.xaxis&&f.yaxis===s.yaxis){f.opacity=void 0;break}}}}}});var lie=J((NPt,sie)=>{"use strict";var Art=gt(),Mrt=WT();sie.exports=function(e,t){function r(i,a){return Art.coerce(e,t,Mrt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var iv=J((OPt,fie)=>{"use strict";var krt=dn(),uie=gt(),Srt=uie.dateTime2ms,JM=uie.incrementMonth,Crt=oi(),Ert=Crt.ONEAVGMONTH;fie.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(krt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var l=+o.substring(1);if(l>0&&Math.round(l)===l)s=l;else return{vals:i}}for(var u=r.calendar,f=a==="start",c=a==="end",h=t[n+"period0"],d=Srt(h,u)||0,v=[],m=[],b=[],g=i.length,_=0;_T;)x=JM(x,-s,u);for(;x<=T;)x=JM(x,s,u);k=JM(x,-s,u)}else{for(w=Math.round((T-d)/o),x=d+w*o;x>T;)x-=o;for(;x<=T;)x+=o;k=x-o}v[_]=f?k:c?x:(k+x)/2,m[_]=k,b[_]=x}return{vals:v,starts:m,ends:b}}});var Ag=J((BPt,hie)=>{"use strict";var Q8=nu().hasColorscale,eR=Uu(),cie=fs();hie.exports=function(t,r){cie.hasLines(r)&&Q8(r,"line")&&eR(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),cie.hasMarkers(r)&&(Q8(r,"marker")&&eR(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),Q8(r,"marker.line")&&eR(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var nd=J((UPt,vie)=>{"use strict";var to=gt();vie.exports=function(t,r){for(var n=0;n{"use strict";var die=gt();pie.exports=function(t,r){die.isArrayOrTypedArray(r.selectedpoints)&&die.tagSelected(t,r)}});var Mg=J((jPt,_ie)=>{"use strict";var gie=dn(),rR=gt(),iw=nn(),mie=iv(),tR=oi().BADNUM,nR=fs(),Lrt=Ag(),Drt=nd(),Rrt=oh();function Prt(e,t){var r=e._fullLayout,n=t._xA=iw.getFromId(e,t.xaxis||"x","x"),i=t._yA=iw.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=mie(t,n,"x",a),l=mie(t,i,"y",o),u=s.vals,f=l.vals,c=t._length,h=new Array(c),d=t.ids,v=iR(t,r,n,i),m=!1,b,g,_,T,w,k;bie(r,t);var x="x",M="y",A;if(v)rR.pushUnique(v.traceIndices,t._expandedIndex),b=v.orientation==="v",b?(M="s",A="x"):(x="s",A="y"),w=v.stackgaps==="interpolate";else{var p=xie(t,c);yie(e,t,n,i,u,f,p)}var S=!!t.xperiodalignment,y=!!t.yperiodalignment;for(g=0;gg&&h[T].gap;)T--;for(k=h[T].s,_=h.length-1;_>T;_--)h[_].s=k;for(;g{"use strict";Tie.exports=$M;var Irt=gt().distinctVals;function $M(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a{"use strict";var dc=dn(),S0=gt().isArrayOrTypedArray,cy=oi().BADNUM,qrt=zr(),aw=nn(),Frt=_0().getAxisGroup,KM=Aie();function zrt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;ul+o||!dc(s))}for(var f=0;f{"use strict";var Rie=Mg(),Pie=kg().setGroupPositions;function Xrt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;up[f]&&f{"use strict";var Jrt=ln(),Oie=oi(),ow=Oie.BADNUM,Bie=Oie.LOG_CLIP,Fie=Bie+.5,zie=Bie-.5,QM=gt(),$rt=QM.segmentsIntersect,Nie=QM.constrain,uR=pg();Uie.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,f=r.backoff,c=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,m=v==="linear",b=n.fill&&n.fill!=="none",g=[],_=uR.minTolerance,T=t.length,w=new Array(T),k=0,x,M,A,p,S,y,E,C,L,R,I,P,D,q,N,U;function G(nt){var bt=t[nt];if(!bt)return!1;var At=r.linearized?i.l2p(bt.x):i.c2p(bt.x),Ye=r.linearized?a.l2p(bt.y):a.c2p(bt.y);if(At===ow){if(o&&(At=i.c2p(bt.x,!0)),At===ow)return!1;s&&Ye===ow&&(At*=Math.abs(i._m*u*(i._m>0?Fie:zie)/(a._m*l*(a._m>0?Fie:zie)))),At*=1e3}if(Ye===ow){if(s&&(Ye=a.c2p(bt.y,!0)),Ye===ow)return!1;Ye*=1e3}return[At,Ye]}function ee(nt,bt,At,Ye){var je=At-nt,$e=Ye-bt,ve=.5-nt,Y=.5-bt,ie=je*je+$e*$e,Te=je*ve+$e*Y;if(Te>0&&Te1||Math.abs(ve.y-At[0][1])>1)&&(ve=[ve.x,ve.y],Ye&&Z(ve,nt)oe||nt[1]V)return[Nie(nt[0],$,oe),Nie(nt[1],te,V)]}function Re(nt,bt){if(nt[0]===bt[0]&&(nt[0]===$||nt[0]===oe)||nt[1]===bt[1]&&(nt[1]===te||nt[1]===V))return!0}function ze(nt,bt){var At=[],Ye=Ie(nt),je=Ie(bt);return Ye&&je&&Re(Ye,je)||(Ye&&At.push(Ye),je&&At.push(je)),At}function Be(nt,bt,At){return function(Ye,je){var $e=Ie(Ye),ve=Ie(je),Y=[];if($e&&ve&&Re($e,ve))return Y;$e&&Y.push($e),ve&&Y.push(ve);var ie=2*QM.constrain((Ye[nt]+je[nt])/2,bt,At)-(($e||Ye)[nt]+(ve||je)[nt]);if(ie){var Te;$e&&ve?Te=ie>0==$e[nt]>ve[nt]?$e:ve:Te=$e||ve,Te[nt]+=ie}return Y}}var tt;v==="linear"||v==="spline"?tt=me:v==="hv"||v==="vh"?tt=ze:v==="hvh"?tt=Be(0,$,oe):v==="vhv"&&(tt=Be(1,te,V));function rt(nt,bt){var At=bt[0]-nt[0],Ye=(bt[1]-nt[1])/At,je=(nt[1]*bt[0]-bt[1]*nt[0])/At;return je>0?[Ye>0?$:oe,V]:[Ye>0?oe:$,te]}function ce(nt){var bt=nt[0],At=nt[1],Ye=bt===w[k-1][0],je=At===w[k-1][1];if(!(Ye&&je))if(k>1){var $e=bt===w[k-2][0],ve=At===w[k-2][1];Ye&&(bt===$||bt===oe)&&$e?ve?k--:w[k-1]=nt:je&&(At===te||At===V)&&ve?$e?k--:w[k-1]=nt:w[k++]=nt}else w[k++]=nt}function Ee(nt){w[k-1][0]!==nt[0]&&w[k-1][1]!==nt[1]&&ce([ge,Ce]),ce(nt),Ne=null,ge=Ce=0}var Ae=QM.isArrayOrTypedArray(c);function Pe(nt){if(nt&&f&&(nt.i=x,nt.d=t,nt.trace=n,nt.marker=Ae?c[nt.i]:c,nt.backoff=f),Q=nt[0]/l,j=nt[1]/u,W=nt[0]<$?$:nt[0]>oe?oe:0,fe=nt[1]V?V:0,W||fe){if(!k)w[k++]=[W||nt[0],fe||nt[1]];else if(Ne){var bt=tt(Ne,nt);bt.length>1&&(Ee(bt[0]),w[k++]=bt[1])}else pe=tt(w[k-1],nt)[0],w[k++]=pe;var At=w[k-1];W&&fe&&(At[0]!==W||At[1]!==fe)?(Ne&&(ge!==W&&Ce!==fe?ce(ge&&Ce?rt(Ne,nt):[ge||W,Ce||fe]):ge&&Ce&&ce([ge,Ce])),ce([W,fe])):ge-W&&Ce-fe&&ce([W||ge,fe||Ce]),Ne=nt,ge=W,Ce=fe}else Ne&&Ee(tt(Ne,nt)[0]),w[k++]=nt}for(x=0;xO(y,He))break;A=y,D=L[0]*C[0]+L[1]*C[1],D>I?(I=D,p=y,E=!1):D=t.length||!y)break;Pe(y),M=y}}Ne&&ce([ge||Ne[0],Ce||Ne[1]]),g.push(w.slice(0,k))}var Fe=v.slice(v.length-1);if(f&&Fe!=="h"&&Fe!=="v"){for(var ke=!1,Ue=-1,Ge=[],lt=0;lt{"use strict";var Hie={tonextx:1,tonexty:1,tonext:1};jie.exports=function(t,r,n){var i,a,o,s,l,u={},f=!1,c=-1,h=0,d=-1;for(a=0;a=0?l=d:(l=d=h,h++),l{"use strict";var sh=Nr(),Krt=zr(),sw=gt(),vy=sw.ensureSingle,Gie=sw.identity,ro=ln(),dy=fs(),Qrt=fR(),ent=Vie(),ek=R2().tester;Wie.exports=function(t,r,n,i,a,o){var s,l,u=!a,f=!!a&&a.duration>0,c=ent(t,r,n);if(s=i.selectAll("g.trace").data(c,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),tnt(t,s,r),f){o&&(l=o());var h=sh.transition().duration(a.duration).ease(a.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});h.each(function(){i.selectAll("g.trace").each(function(d,v){Yie(t,v,r,d,c,this,a)})})}else s.each(function(d,v){Yie(t,v,r,d,c,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function tnt(e,t,r){t.each(function(n){var i=vy(sh.select(this),"g","fills");ro.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,Gie);s.enter().append("g"),s.exit().each(function(l){a[l]=null}).remove(),s.order().each(function(l){a[l]=vy(sh.select(this),"path","js-fill")})})}function Yie(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;rnt(e,t,r,n,i);var u=!!o&&o.duration>0;function f(Be){return u?Be.transition():Be}var c=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,m=sh.select(a),b=vy(m,"g","errorbars"),g=vy(m,"g","lines"),_=vy(m,"g","points"),T=vy(m,"g","text");if(Krt.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;f(m).style("opacity",d.opacity);var w,k,x=d.fill.charAt(d.fill.length-1);x!=="x"&&x!=="y"&&(x="");var M,A;x==="y"?(M=1,A=h.c2p(0,!0)):x==="x"&&(M=0,A=c.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=m;var p="",S=[],y=d._prevtrace,E=null,C=null;y&&(p=y._prevRevpath||"",k=y._nextFill,S=y._ownPolygons,E=y._fillsegments,C=y._fillElement);var L,R,I="",P="",D,q,N,U,G,ee,Q=[];d._polygons=[];var j=[],O=[],Z=sw.noop;if(w=d._ownFill,dy.hasLines(d)||d.fill!=="none"){k&&k.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(D=ro.steps(v.shape),q=ro.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?D=q=function(Be){var tt=Be[Be.length-1];return Be.length>1&&Be[0][0]===tt[0]&&Be[0][1]===tt[1]?ro.smoothclosed(Be.slice(1),v.smoothing):ro.smoothopen(Be,v.smoothing)}:D=q=function(Be){return"M"+Be.join("L")},N=function(Be){return q(Be.reverse())},O=Qrt(n,{xaxis:c,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),j=new Array(O.length);var K=0;for(l=0;l=s[0]&&m.x<=s[1]&&m.y>=l[0]&&m.y<=l[1]}),h=Math.ceil(c.length/f),d=0;i.forEach(function(m,b){var g=m[0].trace;dy.hasMarkers(g)&&g.marker.maxdisplayed>0&&b{"use strict";Xie.exports={container:"marker",min:"cmin",max:"cmax"}});var cR=J(($Pt,Zie)=>{"use strict";var tk=nn();Zie.exports=function(t,r,n){var i={},a={_fullLayout:n},o=tk.getFromTrace(a,r,"x"),s=tk.getFromTrace(a,r,"y"),l=t.orig_x;l===void 0&&(l=t.x);var u=t.orig_y;return u===void 0&&(u=t.y),i.xLabel=tk.tickText(o,o.c2l(l),!0).text,i.yLabel=tk.tickText(s,s.c2l(u),!0).text,i}});var Ef=J((KPt,Jie)=>{"use strict";var hR=Nr(),py=ln(),nnt=zr();function int(e){var t=hR.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=hR.select(this),i=r.trace||r[0].trace;vR(n,i,e)}),t.selectAll("g.text").each(function(r){var n=hR.select(this),i=r.trace||r[0].trace;dR(n,i,e)}),t.selectAll("g.trace path.js-line").call(py.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(py.fillGroupStyle,e,!1),nnt.getComponentMethod("errorbars","style")(t)}function vR(e,t,r){py.pointStyle(e.selectAll("path.point"),t,r)}function dR(e,t,r){py.textPointStyle(e.selectAll("text"),t,r)}function ant(e,t,r){var n=t[0].trace;n.selectedpoints?(py.selectedPointStyle(r.selectAll("path.point"),n),py.selectedTextStyle(r.selectAll("text"),n)):(vR(r,n,e),dR(r,n,e))}Jie.exports={style:int,stylePoints:vR,styleText:dR,styleOnSelect:ant}});var rk=J((QPt,$ie)=>{"use strict";var gy=qr(),ont=fs();$ie.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&gy.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&gy.opacity(a)?a:o&&gy.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?gy.opacity(i)<.3?gy.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&gy.opacity(n)&&ont.hasLines(t)&&t.line.width?n:t.fillcolor)}});var uw=J((eIt,Qie)=>{"use strict";var nk=gt(),Kie=go(),snt=zr(),lnt=rk(),pR=qr(),unt=nk.fillText;Qie.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),f=l.c2p(n),c=[u,f],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,m=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(P){if(v){var D=s.c2p(P.xStart),q=s.c2p(P.xEnd);return u>=Math.min(D,q)&&u<=Math.max(D,q)?0:1/0}var N=Math.max(3,P.mrc||0),U=1-1/N,G=Math.abs(s.c2p(P.x)-u);return G=Math.min(D,q)&&f<=Math.max(D,q)?0:1/0}var N=Math.max(3,P.mrc||0),U=1-1/N,G=Math.abs(l.c2p(P.y)-f);return GQ!=V>=Q&&($=Z[O-1][0],oe=Z[O][0],V-te&&(K=$+(oe-$)*(Q-te)/(V-te),N=Math.min(N,K),U=Math.max(U,K)));return N=Math.max(N,0),U=Math.min(U,s._length),{x0:N,x1:U,y0:Q,y1:Q}}if(h.indexOf("fills")!==-1&&o._fillElement){var L=E(o._fillElement)&&!E(o._fillExclusionElement);if(L){var R=C(o._polygons);R===null&&(R={x0:c[0],x1:c[0],y0:c[1],y1:c[1]});var I=pR.defaultLine;return pR.opacity(o.fillcolor)?I=o.fillcolor:pR.opacity((o.line||{}).color)&&(I=o.line.color),nk.extendFlat(t,{distance:t.maxHoverDistance,x0:R.x0,x1:R.x1,y0:R.y0,y1:R.y1,color:I,hovertemplate:!1}),delete t.index,o.text&&!nk.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var fw=J((tIt,tae)=>{"use strict";var eae=fs();tae.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,f,c,h=!eae.hasMarkers(s)&&!eae.hasText(s);if(h)return[];if(r===!1)for(l=0;l{"use strict";rae.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes",description:["Sets a reference between this trace's x coordinates and","a 2D cartesian x axis.","If *x* (the default value), the x coordinates refer to","`layout.xaxis`.","If *x2*, the x coordinates refer to `layout.xaxis2`, and so on."].join(" ")},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes",description:["Sets a reference between this trace's y coordinates and","a 2D cartesian y axis.","If *y* (the default value), the y coordinates refer to","`layout.yaxis`.","If *y2*, the y coordinates refer to `layout.yaxis2`, and so on."].join(" ")}}});var yR=J((nIt,aae)=>{"use strict";var cw=zr().traceIs,mR=V1();aae.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(fnt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function fnt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=cnt(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],l={noMultiCategory:!cw(a,"cartesian")||cw(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,iae(a,n)){var u=nae(a),f=[];for(i=0;i0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(iae(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function nae(e){return{v:"x",h:"y"}[e.orientation||"v"]}function iae(e,t){var r=nae(e),n=cw(e,"box-violin"),i=cw(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var ik=J((iIt,oae)=>{"use strict";var hnt=fl().isTypedArraySpec;function vnt(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a0||hnt(a),s;o&&(s="array");var l=n("categoryorder",s),u;l==="array"&&(u=n("categoryarray")),!o&&l==="array"&&(l=r.categoryorder="trace"),l==="trace"?r._initialCategories=[]:l==="array"?r._initialCategories=u.slice():(u=vnt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var ak=J((aIt,lae)=>{"use strict";var sae=ls().mix,dnt=Ho(),pnt=gt();lae.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(M,A){return pnt.coerce2(t,r,i.attributes,M,A)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var f=sae(a,i.bgColor,i.blend||dnt.lightFraction).toRgbString(),c=o("gridcolor",f),h=o("gridwidth"),d=o("griddash"),v=n("showgrid",i.showGrid||!!c||!!h||!!d);if(v||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var m=sae(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",m),g=o("minor.gridwidth",r.gridwidth||1),_=o("minor.griddash",r.griddash||"solid"),T=n("minor.showgrid",!!b||!!g||!!_);T||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var w=o("zerolinecolor",a),k=o("zerolinewidth"),x=n("zeroline",i.showGrid||!!w||!!k);x||(delete r.zerolinecolor,delete r.zerolinewidth)}}});var vw=J((oIt,dae)=>{"use strict";var uae=dn(),gnt=zr(),hw=gt(),mnt=ki(),ynt=Bu(),xR=hl(),fae=Wp(),cae=N1(),xnt=Xp(),bnt=Zp(),wnt=ik(),_nt=ak(),Tnt=hD(),hae=Zv(),ok=Eo().WEEKDAY_PATTERN,Ant=Eo().HOUR_PATTERN;dae.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),f=r._template||{},c=r.type||f.type||"-",h;if(c==="date"){var d=gnt.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(c==="date"||c==="linear")&&n("ticklabelindex");var v="";(!i.noTicklabelposition||c==="multicategory")&&(v=hw.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":c==="category"||c==="multicategory"?"allow":"hide past div"),hae(r,a),Tnt(t,r,n,i),wnt(t,r,n,i),c!=="category"&&!i.noHover&&n("hoverformat");var m=n("color"),b=m!==xR.color.dflt?m:s.color,g=l.label||a._dfltTitle[o];if(bnt(t,r,n,c,i),!u)return r;n("title.text",g),hw.coerceFont(n,"title.font",s,{overrideDflt:{size:hw.bigFont(s.size),color:b}}),fae(t,r,n,c);var _=i.hasMinor;if(_&&(mnt.newContainer(r,"minor"),fae(t,r,n,c,{isMinor:!0})),xnt(t,r,n,c,i),cae(t,r,n,i),_){var T=i.isMinor;i.isMinor=!0,cae(t,r,n,i),i.isMinor=T}_nt(t,r,n,{dfltColor:m,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:_,attributes:xR}),_&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var w=c==="multicategory";if(!i.noTickson&&(c==="category"||w)&&(r.ticks||r.showgrid)){var k;w&&(k="boundaries");var x=n("tickson",k);x==="boundaries"&&delete r.ticklabelposition}if(w){var M=n("showdividers");M&&(n("dividercolor"),n("dividerwidth"))}if(c==="date")if(ynt(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Mnt}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var A=0;A=2){var o="",s,l;if(a.length===2){for(s=0;s<2;s++)if(l=vae(a[s]),l){o=ok;break}}var u=n("pattern",o);if(u===ok)for(s=0;s<2;s++)l=vae(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case ok:if(!uae(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case Ant:if(!uae(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var f=r.range;if(f[0]f[1]){t.enabled=!1;return}}else if(a[0]>f[0]&&a[1]{"use strict";var Snt=dn(),sk=gt();pae.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,f,c,h,d,v,m;l&&(c=l._domains[s][l._axisMap[r._id]],f=l._anchors[r._id],c&&(h=l[s+"side"].split(" ")[0],d=l.domain[s][h==="right"||h==="top"?1:0])),c=c||[0,1],f=f||(Snt(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,m=!1;var b=sk.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:f}},"anchor"),g=sk.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var _=n("autoshift");_&&(d=g==="left"?u[0]:u[1],m=r.automargin?r.automargin:!0,v=g==="left"?-3:3),n("shift",v)}n("position",d)}n("automargin",m);var T=!1;if(o.length&&(T=sk.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!T){var w=n("domain",c);w[0]>w[1]-1/4096&&(r.domain=c),sk.noneOrAll(t.domain,r.domain,c),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var Aae=J((lIt,Tae)=>{"use strict";var Sg=gt(),gae=qr(),Cnt=Qf().isUnifiedHover,Ent=ND(),mae=ki(),Lnt=zp(),yae=hl(),Dnt=yR(),xae=vw(),Rnt=_0(),bae=lk(),wR=jo(),av=wR.id2name,wae=wR.name2id,Pnt=Eo().AX_ID_PATTERN,_ae=zr(),dw=_ae.traceIs,bR=_ae.getComponentMethod;function uk(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}Tae.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},f={},c={},h={},d={},v={},m,b;for(m=0;m{"use strict";var Int=Nr(),Mae=zr(),fk=gt(),Lf=ln(),ck=nn();kae.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){ck.redrawComponents(t);return}function o(b){var g=b.xaxis,_=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Lf.setTranslate,0,0).call(Lf.setScale,1,1),b.plot.call(Lf.setTranslate,g._offset,_._offset).call(Lf.setScale,1,1);var T=b.plot.selectAll(".scatterlayer .trace");T.selectAll(".point").call(Lf.setPointGroupScale,1,1),T.selectAll(".textpoint").call(Lf.setTextPointsScale,1,1),T.call(Lf.hideOutsideRangePoints,b)}function s(b,g){var _=b.plotinfo,T=_.xaxis,w=_.yaxis,k=T._length,x=w._length,M=!!b.xr1,A=!!b.yr1,p=[];if(M){var S=fk.simpleMap(b.xr0,T.r2l),y=fk.simpleMap(b.xr1,T.r2l),E=S[1]-S[0],C=y[1]-y[0];p[0]=(S[0]*(1-g)+g*y[0]-S[0])/(S[1]-S[0])*k,p[2]=k*(1-g+g*C/E),T.range[0]=T.l2r(S[0]*(1-g)+g*y[0]),T.range[1]=T.l2r(S[1]*(1-g)+g*y[1])}else p[0]=0,p[2]=k;if(A){var L=fk.simpleMap(b.yr0,w.r2l),R=fk.simpleMap(b.yr1,w.r2l),I=L[1]-L[0],P=R[1]-R[0];p[1]=(L[1]*(1-g)+g*R[1]-L[1])/(L[0]-L[1])*x,p[3]=x*(1-g+g*P/I),w.range[0]=T.l2r(L[0]*(1-g)+g*R[0]),w.range[1]=w.l2r(L[1]*(1-g)+g*R[1])}else p[1]=0,p[3]=x;ck.drawOne(t,T,{skipTitle:!0}),ck.drawOne(t,w,{skipTitle:!0}),ck.redrawComponents(t,[T._id,w._id]);var D=M?k/p[2]:1,q=A?x/p[3]:1,N=M?p[0]:0,U=A?p[1]:0,G=M?p[0]/p[2]*k:0,ee=A?p[1]/p[3]*x:0,Q=T._offset-G,j=w._offset-ee;_.clipRect.call(Lf.setTranslate,N,U).call(Lf.setScale,1/D,1/q),_.plot.call(Lf.setTranslate,Q,j).call(Lf.setScale,D,q),Lf.setPointGroupScale(_.zoomScalePts,1/D,1/q),Lf.setTextPointsScale(_.zoomScaleTxt,1/D,1/q)}var l;i&&(l=i());function u(){for(var b={},g=0;gn.duration?(u(),d=window.cancelAnimationFrame(m)):d=window.requestAnimationFrame(m)}return c=Date.now(),d=window.requestAnimationFrame(m),Promise.resolve()}});var gs=J(yl=>{"use strict";var vk=Nr(),Cae=zr(),Cg=gt(),qnt=ea(),Fnt=ln(),Eae=Nu().getModuleCalcData,C0=jo(),lh=Eo(),znt=Gh(),Ei=Cg.ensureSingle;function hk(e,t,r){return Cg.ensureSingle(e,t,r,function(n){n.datum(r)})}var Eg=lh.zindexSeparator;yl.name="cartesian";yl.attr=["xaxis","yaxis"];yl.idRoot=["x","y"];yl.idRegex=lh.idRegex;yl.attrRegex=lh.attrRegex;yl.attributes=gR();yl.layoutAttributes=hl();yl.supplyLayoutDefaults=Aae();yl.transitionAxes=Sae();yl.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a.concat(r.gl2d||[]),s={},l={},u,f,c;for(u=0;u0){var d=h.id;if(d.indexOf(Eg)!==-1)continue;d+=Eg+(u+1),h=Cg.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var v=[],m,b=0;b1&&(k+=Eg+w),T.push(s+k),o=0;o{"use strict";var dk=fs();Iae.exports={hasLines:dk.hasLines,hasMarkers:dk.hasMarkers,hasText:dk.hasText,isBubble:dk.isBubble,attributes:ds(),layoutAttributes:WT(),supplyDefaults:nie(),crossTraceDefaults:oie(),supplyLayoutDefaults:lie(),calc:Mg().calc,crossTraceCalc:qie(),arraysToCalcdata:nd(),plot:lw(),colorbar:pc(),formatLabels:cR(),style:Ef().style,styleOnSelect:Ef().styleOnSelect,hoverPoints:uw(),selectPoints:fw(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:gs(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{description:["The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts.","The data visualized as scatter point or lines is set in `x` and `y`.","Text (appearing either on the chart or on hover only) is via `text`.","Bubble charts are achieved by setting `marker.size` and/or `marker.color`","to numerical arrays."].join(" ")}}});var Nae=J((hIt,zae)=>{"use strict";var Ont=Nr(),Bnt=qr(),Fae=S8(),_R=gt(),Unt=_R.strScale,Hnt=_R.strRotate,jnt=_R.strTranslate;zae.exports=function(t,r,n){var i=t.node(),a=Fae[n.arrowhead||0],o=Fae[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,f=r.indexOf("end")>=0,c=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,m,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},v={x:+t.attr("x2"),y:+t.attr("y2")};var g=d.x-v.x,_=d.y-v.y;if(m=Math.atan2(_,g),b=m+Math.PI,c&&h&&c+h>Math.sqrt(g*g+_*_)){L();return}if(c){if(c*c>g*g+_*_){L();return}var T=c*Math.cos(m),w=c*Math.sin(m);v.x+=T,v.y+=w,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>g*g+_*_){L();return}var k=h*Math.cos(m),x=h*Math.sin(m);d.x-=k,d.y-=x,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var M=i.getTotalLength(),A="";if(M{"use strict";var Oae=Nr(),TR=zr(),Vnt=ea(),L0=gt(),AR=L0.strTranslate,gw=nn(),Lg=qr(),id=ln(),Bae=go(),MR=ca(),kR=th(),pw=iu(),Ynt=ki().arrayEditor,Gnt=Nae();jae.exports={draw:Wnt,drawOne:Uae,drawRaw:Hae};function Wnt(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r2/3?je="right":je="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[je]}for(var te=!1,V=["x","y"],ne=0;ne1)&&(ge===fe?(He=Ce.r2fraction(t["a"+W]),(He<0||He>1)&&(te=!0)):te=!0),tt=Ce._offset+Ce.r2p(t[W]),Ee=.5}else{var Fe=Pe==="domain";W==="x"?(ce=t[W],tt=Fe?Ce._offset+Ce._length*ce:tt=s.l+s.w*ce):(ce=1-t[W],tt=Fe?Ce._offset+Ce._length*ce:tt=s.t+s.h*ce),Ee=t.showarrow?.5:ce}if(t.showarrow){Be.head=tt;var ke=t["a"+W];if(Ae=pe*oe(.5,t.xanchor)-me*oe(.5,t.yanchor),ge===fe){var Ue=gw.getRefType(ge);Ue==="domain"?(W==="y"&&(ke=1-ke),Be.tail=Ce._offset+Ce._length*ke):Ue==="paper"?W==="y"?(ke=1-ke,Be.tail=s.t+s.h*ke):Be.tail=s.l+s.w*ke:Be.tail=Ce._offset+Ce.r2p(ke),rt=Ae}else Be.tail=tt+ke,rt=Ae+ke;Be.text=Be.tail+Ae;var Ge=o[W==="x"?"width":"height"];if(fe==="paper"&&(Be.head=L0.constrain(Be.head,1,Ge-1)),ge==="pixel"){var lt=-Math.max(Be.tail-3,Be.text),it=Math.min(Be.tail+3,Be.text)-Ge;lt>0?(Be.tail+=lt,Be.text+=lt):it>0&&(Be.tail-=it,Be.text-=it)}Be.tail+=ze,Be.head+=ze}else Ae=Ie*oe(Ee,Re),rt=Ae,Be.text=tt+Ae;Be.text+=ze,Ae+=ze,rt+=ze,t["_"+W+"padplus"]=Ie/2+rt,t["_"+W+"padminus"]=Ie/2-rt,t["_"+W+"size"]=Ie,t["_"+W+"shift"]=Ae}if(te){M.remove();return}var wt=0,_t=0;if(t.align!=="left"&&(wt=(O-Q)*(t.align==="center"?.5:1)),t.valign!=="top"&&(_t=(Z-j)*(t.valign==="middle"?.5:1)),G)U.select("svg").attr({x:S+wt-1,y:S+_t}).call(id.setClipUrl,E?m:null,e);else{var Tt=S+_t-ee.top,nt=S+wt-ee.left;I.call(MR.positionText,nt,Tt).call(id.setClipUrl,E?m:null,e)}C.select("rect").call(id.setRect,S,S,O,Z),y.call(id.setRect,A/2,A/2,K-A,$-A),M.call(id.setTranslate,Math.round(b.x.text-K/2),Math.round(b.y.text-$/2)),T.attr({transform:"rotate("+g+","+b.x.text+","+b.y.text+")"});var bt=function(Ye,je){_.selectAll(".annotation-arrow-g").remove();var $e=b.x.head,ve=b.y.head,Y=b.x.tail+Ye,ie=b.y.tail+je,Te=b.x.text+Ye,Ve=b.y.text+je,at=L0.rotationXYMatrix(g,Te,Ve),ft=L0.apply2DTransform(at),Ht=L0.apply2DTransform2(at),Xt=+y.attr("width"),St=+y.attr("height"),Vt=Te-.5*Xt,er=Vt+Xt,_r=Ve-.5*St,br=_r+St,or=[[Vt,_r,Vt,br],[Vt,br,er,br],[er,br,er,_r],[er,_r,Vt,_r]].map(Ht);if(!or.reduce(function(wn,Si){return wn^!!L0.segmentsIntersect($e,ve,$e+1e6,ve+1e6,Si[0],Si[1],Si[2],Si[3])},!1)){or.forEach(function(wn){var Si=L0.segmentsIntersect(Y,ie,$e,ve,wn[0],wn[1],wn[2],wn[3]);Si&&(Y=Si.x,ie=Si.y)});var tn=t.arrowwidth,Lr=t.arrowcolor,Gr=t.arrowside,sn=_.append("g").style({opacity:Lg.opacity(Lr)}).classed("annotation-arrow-g",!0),Hr=sn.append("path").attr("d","M"+Y+","+ie+"L"+$e+","+ve).style("stroke-width",tn+"px").call(Lg.stroke,Lg.rgb(Lr));if(Gnt(Hr,Gr,t),l.annotationPosition&&Hr.node().parentNode&&!n){var Br=$e,qn=ve;if(t.standoff){var kn=Math.sqrt(Math.pow($e-Y,2)+Math.pow(ve-ie,2));Br+=t.standoff*(Y-$e)/kn,qn+=t.standoff*(ie-ve)/kn}var Yn=sn.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Y-Br)+","+(ie-qn),transform:AR(Br,qn)}).style("stroke-width",tn+6+"px").call(Lg.stroke,"rgba(0,0,0,0)").call(Lg.fill,"rgba(0,0,0,0)"),Wn,Fn;pw.init({element:Yn.node(),gd:e,prepFn:function(){var wn=id.getTranslate(M);Wn=wn.x,Fn=wn.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(wn,Si){var Aa=ft(Wn,Fn),ia=Aa[0]+wn,An=Aa[1]+Si;M.call(id.setTranslate,ia,An),d("x",E0(i,wn,"x",s,t)),d("y",E0(a,Si,"y",s,t)),t.axref===t.xref&&d("ax",E0(i,wn,"ax",s,t)),t.ayref===t.yref&&d("ay",E0(a,Si,"ay",s,t)),sn.attr("transform",AR(wn,Si)),T.attr({transform:"rotate("+g+","+ia+","+An+")"})},doneFn:function(){TR.call("_guiRelayout",e,v());var wn=document.querySelector(".js-notes-box-panel");wn&&wn.redraw(wn.selectedObj)}})}}};if(t.showarrow&&bt(0,0),w){var At;pw.init({element:M.node(),gd:e,prepFn:function(){At=T.attr("transform")},moveFn:function(Ye,je){var $e="pointer";if(t.showarrow)t.axref===t.xref?d("ax",E0(i,Ye,"ax",s,t)):d("ax",t.ax+Ye),t.ayref===t.yref?d("ay",E0(a,je,"ay",s.w,t)):d("ay",t.ay+je),bt(Ye,je);else{if(n)return;var ve,Y;if(i)ve=E0(i,Ye,"x",s,t);else{var ie=t._xsize/s.w,Te=t.x+(t._xshift-t.xshift)/s.w-ie/2;ve=pw.align(Te+Ye/s.w,ie,0,1,t.xanchor)}if(a)Y=E0(a,je,"y",s,t);else{var Ve=t._ysize/s.h,at=t.y-(t._yshift+t.yshift)/s.h-Ve/2;Y=pw.align(at-je/s.h,Ve,0,1,t.yanchor)}d("x",ve),d("y",Y),(!i||!a)&&($e=pw.getCursor(i?.5:ve,a?.5:Y,t.xanchor,t.yanchor))}T.attr({transform:AR(Ye,je)+At}),kR(M,$e)},clickFn:function(Ye,je){t.captureevents&&e.emit("plotly_clickannotation",x(je))},doneFn:function(){kR(M),TR.call("_guiRelayout",e,v());var Ye=document.querySelector(".js-notes-box-panel");Ye&&Ye.redraw(Ye.selectedObj)}})}}l.annotationText?I.call(MR.makeEditable,{delegate:M,gd:e}).call(P).on("edit",function(q){t.text=q,this.call(P),d("text",q),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),TR.call("_guiRelayout",e,v())}):I.call(P)}});var Zae=J((dIt,Xae)=>{"use strict";var Vae=gt(),Xnt=zr(),Yae=ki().arrayEditor;Xae.exports={hasClickToShow:Znt,onClick:Jnt};function Znt(e,t){var r=Wae(e,t);return r.on.length>0||r.explicitOff.length>0}function Jnt(e,t){var r=Wae(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s{"use strict";var SR=gt(),my=qr();Jae.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=my.opacity(o);i("borderpad");var l=i("borderwidth"),u=i("showarrow");i("text",u?" ":n._dfltTitle.annotation),i("textangle"),SR.coerceFont(i,"font",n.font),i("width"),i("align");var f=i("height");if(f&&i("valign"),u){var c=i("arrowside"),h,d;c.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),c.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:my.defaultLine),i("arrowwidth",(s&&l||1)*2),i("standoff"),i("startstandoff")}var v=i("hovertext"),m=n.hoverlabel||{};if(v){var b=i("hoverlabel.bgcolor",m.bgcolor||(my.opacity(a)?my.rgb(a):my.defaultLine)),g=i("hoverlabel.bordercolor",m.bordercolor||my.contrast(b)),_=SR.extendFlat({},m.font);_.color||(_.color=g),SR.coerceFont(i,"hoverlabel.font",_)}i("captureevents",!!v)}});var Kae=J((gIt,$ae)=>{"use strict";var ER=gt(),Dg=nn(),$nt=Bu(),Knt=CR(),Qnt=dg();$ae.exports=function(t,r){$nt(t,r,{name:"annotations",handleItemDefaults:eit})};function eit(e,t,r){function n(T,w){return ER.coerce(e,t,Qnt,T,w)}var i=n("visible"),a=n("clicktoshow");if(i||a){Knt(e,t,r,n);for(var o=t.showarrow,s=["x","y"],l=[-10,-30],u={_fullLayout:r},f=0;f<2;f++){var c=s[f],h=Dg.coerceRef(e,t,u,c,"","paper");if(h!=="paper"){var d=Dg.getFromId(u,h);d._annIndices.push(t._index)}if(Dg.coercePosition(t,u,n,h,c,.5),o){var v="a"+c,m=Dg.coerceRef(e,t,u,v,"pixel",["pixel","paper"]);m!=="pixel"&&m!==h&&(m=t[v]="pixel");var b=m==="pixel"?l[f]:.4;Dg.coercePosition(t,u,n,m,v,b)}n(c+"anchor"),n(c+"shift")}if(ER.noneOrAll(e,t,["x","y"]),o&&ER.noneOrAll(e,t,["ax","ay"]),a){var g=n("xclick"),_=n("yclick");t._xclick=g===void 0?t.x:Dg.cleanPosition(g,u,t.xref),t._yclick=_===void 0?t.y:Dg.cleanPosition(_,u,t.yref)}}}});var toe=J((mIt,eoe)=>{"use strict";var LR=gt(),Rg=nn(),tit=pk().draw;eoe.exports=function(t){var r=t._fullLayout,n=LR.filterVisible(r.annotations);if(n.length&&t._fullData.length)return LR.syncOrAsync([tit,rit],t)};function rit(e){var t=e._fullLayout;LR.filterVisible(t.annotations).forEach(function(r){var n=Rg.getFromId(e,r.xref),i=Rg.getFromId(e,r.yref),a=Rg.getRefType(r.xref),o=Rg.getRefType(r.yref);r._extremes={},a==="range"&&Qae(r,n),o==="range"&&Qae(r,i)})}function Qae(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],f={x:1,y:-1}[n]*e[n+"shift"],c=3*e.arrowsize*e.arrowwidth||0,h=c+f,d=c-f,v=3*e.startarrowsize*e.arrowwidth||0,m=v+f,b=v-f,g;if(s===o){var _=Rg.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),T=Rg.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,m),ppadminus:Math.max(u,b)});g={min:[_.min[0],T.min[0]],max:[_.max[0],T.max[0]]}}else m=a?m+a:m,b=a?b-a:b,g=Rg.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(l,h,m),ppadminus:Math.max(u,d,b)});e._extremes[r]=g}});var noe=J((yIt,roe)=>{"use strict";var nit=dn(),iit=vT();roe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,f;function c(d){var v=u[d],m=null;a?m=iit(v,r.range):m=Math.pow(10,v),nit(m)||(m=null),i(f+d,m)}for(var h=0;h{"use strict";var DR=pk(),ioe=Zae();aoe.exports={moduleType:"component",name:"annotations",layoutAttributes:dg(),supplyLayoutDefaults:Kae(),includeBasePlot:H2()("annotations"),calcAutorange:toe(),draw:DR.draw,drawOne:DR.drawOne,drawRaw:DR.drawRaw,hasClickToShow:ioe.hasClickToShow,onClick:ioe.onClick,convertCoords:noe()}});var gk=J((bIt,soe)=>{"use strict";var fa=dg(),ait=La().overrideAll,oit=ki().templatedArray;soe.exports=ait(oit("annotation",{visible:fa.visible,x:{valType:"any",description:["Sets the annotation's x position."].join(" ")},y:{valType:"any",description:["Sets the annotation's y position."].join(" ")},z:{valType:"any",description:["Sets the annotation's z position."].join(" ")},ax:{valType:"number",description:["Sets the x component of the arrow tail about the arrow head (in pixels)."].join(" ")},ay:{valType:"number",description:["Sets the y component of the arrow tail about the arrow head (in pixels)."].join(" ")},xanchor:fa.xanchor,xshift:fa.xshift,yanchor:fa.yanchor,yshift:fa.yshift,text:fa.text,textangle:fa.textangle,font:fa.font,width:fa.width,height:fa.height,opacity:fa.opacity,align:fa.align,valign:fa.valign,bgcolor:fa.bgcolor,bordercolor:fa.bordercolor,borderpad:fa.borderpad,borderwidth:fa.borderwidth,showarrow:fa.showarrow,arrowcolor:fa.arrowcolor,arrowhead:fa.arrowhead,startarrowhead:fa.startarrowhead,arrowside:fa.arrowside,arrowsize:fa.arrowsize,startarrowsize:fa.startarrowsize,arrowwidth:fa.arrowwidth,standoff:fa.standoff,startstandoff:fa.startstandoff,hovertext:fa.hovertext,hoverlabel:fa.hoverlabel,captureevents:fa.captureevents}),"calc","from-root")});var uoe=J((wIt,loe)=>{"use strict";var RR=gt(),sit=nn(),lit=Bu(),uit=CR(),fit=gk();loe.exports=function(t,r,n){lit(t,r,{name:"annotations",handleItemDefaults:cit,fullLayout:n.fullLayout})};function cit(e,t,r,n){function i(s,l){return RR.coerce(e,t,fit,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],sit.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(uit(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),RR.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),RR.noneOrAll(e,t,["ax","ay"])))}});var voe=J((_It,hoe)=>{"use strict";var foe=gt(),coe=nn();hoe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i{"use strict";function PR(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function vit(e,t){var r=PR(e.projection,PR(e.view,PR(e.model,[t[0],t[1],t[2],1])));return r}doe.exports=vit});var goe=J((AIt,poe)=>{"use strict";var dit=pk().drawRaw,pit=IR(),git=["x","y","z"];poe.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=pit(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),dit(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var xoe=J((MIt,yoe)=>{"use strict";var mit=zr(),moe=gt();yoe.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:gk()}}},layoutAttributes:gk(),handleDefaults:uoe(),includeBasePlot:yit,convert:voe(),draw:goe()};function yit(e,t){var r=mit.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a{"use strict";var boe=dg(),woe=xa(),_oe=ds().line,xit=Ss().dash,uh=cn().extendFlat,bit=ki().templatedArray,Toe=U2(),yy=Qi(),wit=Jn().shapeTexttemplateAttrs,_it=MT();Aoe.exports=bit("shape",{visible:uh({},yy.visible,{editType:"calc+arraydraw",description:["Determines whether or not this shape is visible.","If *legendonly*, the shape is not drawn,","but can appear as a legend item","(provided that the legend itself is visible)."].join(" ")}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw",description:["Determines whether or not this","shape is shown in the legend."].join(" ")},legend:uh({},yy.legend,{editType:"calc+arraydraw",description:["Sets the reference to a legend to show this shape in.","References to these legends are *legend*, *legend2*, *legend3*, etc.","Settings for these legends are set in the layout, under","`layout.legend`, `layout.legend2`, etc."].join(" ")}),legendgroup:uh({},yy.legendgroup,{editType:"calc+arraydraw",description:["Sets the legend group for this shape.","Traces and shapes part of the same legend group hide/show at the same time","when toggling legend items."].join(" ")}),legendgrouptitle:{text:uh({},yy.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:woe({editType:"calc+arraydraw",description:["Sets this legend group's title font."].join(" ")}),editType:"calc+arraydraw"},legendrank:uh({},yy.legendrank,{editType:"calc+arraydraw",description:["Sets the legend rank for this shape.","Items and groups with smaller ranks are presented on top/left side while","with *reversed* `legend.traceorder` they are on bottom/right side.","The default legendrank is 1000,","so that you can use ranks less than 1000 to place certain items before all unranked items,","and ranks greater than 1000 to go after all unranked items.","When having unranked or equal rank items shapes would be displayed after traces","i.e. according to their order in data and layout."].join(" ")}),legendwidth:uh({},yy.legendwidth,{editType:"calc+arraydraw",description:"Sets the width (in px or fraction) of the legend for this shape."}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw",description:["Specifies the shape type to be drawn.","If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`)","with respect to the axes' sizing mode.","If *circle*, a circle is drawn from","((`x0`+`x1`)/2, (`y0`+`y1`)/2))","with radius","(|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|)","with respect to the axes' sizing mode.","If *rect*, a rectangle is drawn linking","(`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`)","with respect to the axes' sizing mode.","If *path*, draw a custom SVG path using `path`.","with respect to the axes' sizing mode."].join(" ")},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw",description:["Specifies whether shapes are drawn below gridlines (*below*),","between gridlines and traces (*between*) or above traces (*above*)."].join(" ")},xref:uh({},boe.xref,{description:["Sets the shape's x coordinate axis.",Toe.axisRefDescription("x","left","right")].join(" ")}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw",description:["Sets the shapes's sizing mode along the x axis.","If set to *scaled*, `x0`, `x1` and x coordinates within `path` refer to","data values on the x axis or a fraction of the plot area's width","(`xref` set to *paper*).","If set to *pixel*, `xanchor` specifies the x position in terms","of data or plot fraction but `x0`, `x1` and x coordinates within `path`","are pixels relative to `xanchor`. This way, the shape can have","a fixed width while maintaining a position relative to data or","plot fraction."].join(" ")},xanchor:{valType:"any",editType:"calc+arraydraw",description:["Only relevant in conjunction with `xsizemode` set to *pixel*.","Specifies the anchor point on the x axis to which `x0`, `x1`","and x coordinates within `path` are relative to.","E.g. useful to attach a pixel sized shape to a certain data value.","No effect when `xsizemode` not set to *pixel*."].join(" ")},x0:{valType:"any",editType:"calc+arraydraw",description:["Sets the shape's starting x position.","See `type` and `xsizemode` for more info."].join(" ")},x1:{valType:"any",editType:"calc+arraydraw",description:["Sets the shape's end x position.","See `type` and `xsizemode` for more info."].join(" ")},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc",description:["Shifts `x0` away from the center of the category when `xref` is a *category* or","*multicategory* axis. -0.5 corresponds to the start of the category and 0.5","corresponds to the end of the category."].join(" ")},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc",description:["Shifts `x1` away from the center of the category when `xref` is a *category* or","*multicategory* axis. -0.5 corresponds to the start of the category and 0.5","corresponds to the end of the category."].join(" ")},yref:uh({},boe.yref,{description:["Sets the shape's y coordinate axis.",Toe.axisRefDescription("y","bottom","top")].join(" ")}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw",description:["Sets the shapes's sizing mode along the y axis.","If set to *scaled*, `y0`, `y1` and y coordinates within `path` refer to","data values on the y axis or a fraction of the plot area's height","(`yref` set to *paper*).","If set to *pixel*, `yanchor` specifies the y position in terms","of data or plot fraction but `y0`, `y1` and y coordinates within `path`","are pixels relative to `yanchor`. This way, the shape can have","a fixed height while maintaining a position relative to data or","plot fraction."].join(" ")},yanchor:{valType:"any",editType:"calc+arraydraw",description:["Only relevant in conjunction with `ysizemode` set to *pixel*.","Specifies the anchor point on the y axis to which `y0`, `y1`","and y coordinates within `path` are relative to.","E.g. useful to attach a pixel sized shape to a certain data value.","No effect when `ysizemode` not set to *pixel*."].join(" ")},y0:{valType:"any",editType:"calc+arraydraw",description:["Sets the shape's starting y position.","See `type` and `ysizemode` for more info."].join(" ")},y1:{valType:"any",editType:"calc+arraydraw",description:["Sets the shape's end y position.","See `type` and `ysizemode` for more info."].join(" ")},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc",description:["Shifts `y0` away from the center of the category when `yref` is a *category* or","*multicategory* axis. -0.5 corresponds to the start of the category and 0.5","corresponds to the end of the category."].join(" ")},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc",description:["Shifts `y1` away from the center of the category when `yref` is a *category* or","*multicategory* axis. -0.5 corresponds to the start of the category and 0.5","corresponds to the end of the category."].join(" ")},path:{valType:"string",editType:"calc+arraydraw",description:["For `type` *path* - a valid SVG path with the pixel values","replaced by data values in `xsizemode`/`ysizemode` being *scaled*","and taken unmodified as pixels relative to `xanchor` and `yanchor`","in case of *pixel* size mode.","There are a few restrictions / quirks","only absolute instructions, not relative. So the allowed segments","are: M, L, H, V, Q, C, T, S, and Z","arcs (A) are not allowed because radius rx and ry are relative.","In the future we could consider supporting relative commands,","but we would have to decide on how to handle date and log axes.","Note that even as is, Q and C Bezier paths that are smooth on","linear axes may not be smooth on log, and vice versa.",'no chained "polybezier" commands - specify the segment type for',"each one.","On category axes, values are numbers scaled to the serial numbers","of categories because using the categories themselves there would","be no way to describe fractional positions","On data axes: because space and T are both normal components of path","strings, we can't use either to separate date from time parts.","Therefore we'll use underscore for this purpose:","2015-02-21_13:45:56.789"].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw",description:"Sets the opacity of the shape."},line:{color:uh({},_oe.color,{editType:"arraydraw"}),width:uh({},_oe.width,{editType:"calc+arraydraw"}),dash:uh({},xit,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw",description:["Sets the color filling the shape's interior. Only applies to closed shapes."].join(" ")},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw",description:["Determines which regions of complex paths constitute the interior.","For more info please visit https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule"].join(" ")},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw",description:["Determines whether the shape could be activated for edit or not.","Has no effect when the older editable shapes mode is enabled via","`config.editable` or `config.edits.shapePosition`."].join(" ")},label:{text:{valType:"string",dflt:"",editType:"arraydraw",description:["Sets the text to display with shape.","It is also used for legend item if `name` is not provided."].join(" ")},texttemplate:wit({},{keys:Object.keys(_it)}),font:woe({editType:"calc+arraydraw",colorEditType:"arraydraw",description:"Sets the shape label text font."}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw",description:["Sets the position of the label text relative to the shape.","Supported values for rectangles, circles and paths are","*top left*, *top center*, *top right*, *middle left*,","*middle center*, *middle right*, *bottom left*, *bottom center*,","and *bottom right*.","Supported values for lines are *start*, *middle*, and *end*.","Default: *middle center* for rectangles, circles, and paths; *middle* for lines."].join(" ")},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw",description:["Sets the angle at which the label text is drawn","with respect to the horizontal. For lines, angle *auto*","is the same angle as the line. For all other shapes,","angle *auto* is horizontal."].join(" ")},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw",description:["Sets the label's horizontal position anchor","This anchor binds the specified `textposition` to the *left*, *center*","or *right* of the label text.","For example, if `textposition` is set to *top right* and","`xanchor` to *right* then the right-most portion of the","label text lines up with the right-most edge of the","shape."].join(" ")},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw",description:["Sets the label's vertical position anchor","This anchor binds the specified `textposition` to the *top*, *middle*","or *bottom* of the label text.","For example, if `textposition` is set to *top right* and","`yanchor` to *top* then the top-most portion of the","label text lines up with the top-most edge of the","shape."].join(" ")},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw",description:"Sets padding (in px) between edge of label and edge of shape."},editType:"arraydraw"},editType:"arraydraw"})});var Soe=J((SIt,koe)=>{"use strict";var mw=gt(),xy=nn(),Tit=Bu(),Ait=qR(),Moe=w0();koe.exports=function(t,r){Tit(t,r,{name:"shapes",handleItemDefaults:kit})};function Mit(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function kit(e,t,r){function n(q,N){return mw.coerce(e,t,Ait,q,N)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),mw.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",l=n("type",s),u=l!=="path";u&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var f=n("line.width");f&&(n("line.color"),n("line.dash"));for(var c=n("xsizemode"),h=n("ysizemode"),d=["x","y"],v=0;v<2;v++){var m=d[v],b=m+"anchor",g=m==="x"?c:h,_={_fullLayout:r},T,w,k,x=xy.coerceRef(e,t,_,m,void 0,"paper"),M=xy.getRefType(x);if(M==="range"?(T=xy.getFromId(_,x),T._shapeIndices.push(t._index),k=Moe.rangeToShapePosition(T),w=Moe.shapePositionToRange(T),(T.type==="category"||T.type==="multicategory")&&(n(m+"0shift"),n(m+"1shift"))):w=k=mw.identity,u){var A=.25,p=.75,S=m+"0",y=m+"1",E=e[S],C=e[y];e[S]=w(e[S],!0),e[y]=w(e[y],!0),g==="pixel"?(n(S,0),n(y,10)):(xy.coercePosition(t,_,n,x,S,A),xy.coercePosition(t,_,n,x,y,p)),t[S]=k(t[S]),t[y]=k(t[y]),e[S]=E,e[y]=C}if(g==="pixel"){var L=e[b];e[b]=w(e[b],!0),xy.coercePosition(t,_,n,x,b,.25),t[b]=k(t[b]),e[b]=L}}u&&mw.noneOrAll(e,t,["x0","x1","y0","y1"]);var R=l==="line",I,P;if(u&&(I=n("label.texttemplate")),I||(P=n("label.text")),P||I){n("label.textangle");var D=n("label.textposition",R?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Mit(R,D)),n("label.padding"),mw.coerceFont(n,"label.font",r.font)}}}});var Loe=J((CIt,Eoe)=>{"use strict";var Sit=qr(),Coe=gt();function Cit(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}Eoe.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),Coe.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Sit.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),l=n("newshape.label.texttemplate");if(s||l){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Cit(o,u)),n("newshape.label.padding"),Coe.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var qoe=J((EIt,Ioe)=>{"use strict";var FR=gt(),by=nn(),wy=b2(),Roe=w0();Ioe.exports=function(t){var r=t._fullLayout,n=FR.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i0?u+o:o;return{ppad:o,ppadplus:s?c:h,ppadminus:s?h:c}}else return{ppad:o}}function Doe(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,l=0,u=i?e.r2c:e.d2c,f=t[n+"sizemode"]==="scaled";if(f?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],l=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[u(a)+s,u(o)+l];if(t.path){var c=1/0,h=-1/0,d=t.path.match(wy.segmentRE),v,m,b,g,_;for(e.type==="date"&&(u=Roe.decodeDate(u)),v=0;vh&&(h=_)));if(h>=c)return[c,h]}}});var Noe=J((LIt,zoe)=>{"use strict";var Foe=sM();zoe.exports={moduleType:"component",name:"shapes",layoutAttributes:qR(),supplyLayoutDefaults:Soe(),supplyDrawNewShapeDefaults:Loe(),includeBasePlot:H2()("shapes"),calcAutorange:qoe(),draw:Foe.draw,drawOne:Foe.drawOne}});var zR=J((DIt,Uoe)=>{"use strict";var Ooe=Eo(),Dit=ki().templatedArray,Boe=U2();Uoe.exports=Dit("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw",description:["Determines whether or not this image is visible."].join(" ")},source:{valType:"string",editType:"arraydraw",description:["Specifies the URL of the image to be used.","The URL must be accessible from the domain where the","plot code is run, and can be either relative or absolute."].join(" ")},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw",description:["Specifies whether images are drawn below or above traces.","When `xref` and `yref` are both set to `paper`,","image is drawn below the entire plot area."].join(" ")},sizex:{valType:"number",dflt:0,editType:"arraydraw",description:["Sets the image container size horizontally.","The image will be sized based on the `position` value.","When `xref` is set to `paper`, units are sized relative","to the plot width.","When `xref` ends with ` domain`, units are sized relative","to the axis width."].join(" ")},sizey:{valType:"number",dflt:0,editType:"arraydraw",description:["Sets the image container size vertically.","The image will be sized based on the `position` value.","When `yref` is set to `paper`, units are sized relative","to the plot height.","When `yref` ends with ` domain`, units are sized relative","to the axis height."].join(" ")},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw",description:["Specifies which dimension of the image to constrain."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw",description:"Sets the opacity of the image."},x:{valType:"any",dflt:0,editType:"arraydraw",description:["Sets the image's x position.","When `xref` is set to `paper`, units are sized relative","to the plot height.","See `xref` for more info"].join(" ")},y:{valType:"any",dflt:0,editType:"arraydraw",description:["Sets the image's y position.","When `yref` is set to `paper`, units are sized relative","to the plot height.","See `yref` for more info"].join(" ")},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw",description:"Sets the anchor for the x position"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw",description:"Sets the anchor for the y position."},xref:{valType:"enumerated",values:["paper",Ooe.idRegex.x.toString()],dflt:"paper",editType:"arraydraw",description:["Sets the images's x coordinate axis.",Boe.axisRefDescription("x","left","right")].join(" ")},yref:{valType:"enumerated",values:["paper",Ooe.idRegex.y.toString()],dflt:"paper",editType:"arraydraw",description:["Sets the images's y coordinate axis.",Boe.axisRefDescription("y","bottom","top")].join(" ")},editType:"arraydraw"})});var joe=J((RIt,Hoe)=>{"use strict";var Rit=gt(),NR=nn(),Pit=Bu(),Iit=zR(),qit="images";Hoe.exports=function(t,r){var n={name:qit,handleItemDefaults:Fit};Pit(t,r,n)};function Fit(e,t,r){function n(h,d){return Rit.coerce(e,t,Iit,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],l=0;l<2;l++){var u=s[l],f=NR.coerceRef(e,t,o,u,"paper",void 0);if(f!=="paper"){var c=NR.getFromId(o,f);c._imgIndices.push(t._index)}NR.coercePosition(t,o,n,f,u,0)}return t}});var Woe=J((PIt,Goe)=>{"use strict";var Voe=Nr(),zit=ln(),_y=nn(),Yoe=jo(),Nit=Gh();Goe.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s{"use strict";var Xoe=dn(),Oit=vT();Zoe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,f,c=0;c{"use strict";$oe.exports={moduleType:"component",name:"images",layoutAttributes:zR(),supplyLayoutDefaults:joe(),includeBasePlot:H2()("images"),draw:Woe(),convertCoords:Joe()}});var mk=J((FIt,Qoe)=>{"use strict";Qoe.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var OR=J((zIt,tse)=>{"use strict";var Bit=xa(),Uit=Ho(),Hit=cn().extendFlat,jit=La().overrideAll,Vit=kT(),ese=ki().templatedArray,Yit=ese("button",{visible:{valType:"boolean",description:"Determines whether or not this button is visible."},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle",description:["Sets the Plotly method to be called on click.","If the `skip` method is used, the API updatemenu will function as normal","but will perform no API calls and will not bind automatically to state","updates. This may be used to create a component interface and attach to","updatemenu events manually via JavaScript."].join(" ")},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}],description:["Sets the arguments values to be passed to the Plotly","method set in `method` on click."].join(" ")},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}],description:["Sets a 2nd set of `args`,","these arguments values are passed to the Plotly","method set in `method` when clicking this button while in the active state.","Use this to create toggle buttons."].join(" ")},label:{valType:"string",dflt:"",description:"Sets the text label to appear on the button."},execute:{valType:"boolean",dflt:!0,description:["When true, the API method is executed. When false, all other behaviors are the same","and command execution is skipped. This may be useful when hooking into, for example,","the `plotly_buttonclicked` method and executing the API command manually without losing","the benefit of the updatemenu automatically binding to the state of the plot through the","specification of `method` and `args`."].join(" ")}});tse.exports=jit(ese("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean",description:["Determines whether or not the update menu is visible."].join(" ")},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown",description:["Determines whether the buttons are accessible via a dropdown menu","or whether the buttons are stacked horizontally or vertically"].join(" ")},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down",description:["Determines the direction in which the buttons are laid out, whether","in a dropdown menu or a row/column of buttons. For `left` and `up`,","the buttons will still appear in left-to-right or top-to-bottom order","respectively."].join(" ")},active:{valType:"integer",min:-1,dflt:0,description:["Determines which button (by index starting from 0) is","considered active."].join(" ")},showactive:{valType:"boolean",dflt:!0,description:"Highlights active dropdown item or active button if true."},buttons:Yit,x:{valType:"number",min:-2,max:3,dflt:-.05,description:"Sets the x position (in normalized coordinates) of the update menu."},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right",description:["Sets the update menu's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the range selector."].join(" ")},y:{valType:"number",min:-2,max:3,dflt:1,description:"Sets the y position (in normalized coordinates) of the update menu."},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top",description:["Sets the update menu's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the range selector."].join(" ")},pad:Hit(Vit({editType:"arraydraw"}),{description:"Sets the padding around the buttons or dropdown menu."}),font:Bit({description:"Sets the font of the update menu button text."}),bgcolor:{valType:"color",description:"Sets the background color of the update menu buttons."},bordercolor:{valType:"color",dflt:Uit.borderLine,description:"Sets the color of the border enclosing the update menu."},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw",description:"Sets the width (in px) of the border enclosing the update menu."}}),"arraydraw","from-root")});var ase=J((NIt,ise)=>{"use strict";var yk=gt(),rse=Bu(),nse=OR(),Git=mk(),Wit=Git.name,Xit=nse.buttons;ise.exports=function(t,r){var n={name:Wit,handleItemDefaults:Zit};rse(t,r,n)};function Zit(e,t,r){function n(o,s){return yk.coerce(e,t,nse,o,s)}var i=rse(e,t,{name:"buttons",handleItemDefaults:Jit}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),yk.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),yk.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function Jit(e,t){function r(i,a){return yk.coerce(e,t,Xit,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var lse=J((OIt,sse)=>{"use strict";sse.exports=Ha;var fh=Nr(),ose=qr(),Ty=ln(),xk=gt();function Ha(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}Ha.barWidth=2;Ha.barLength=20;Ha.barRadius=2;Ha.barPad=1;Ha.barColor="#808BA4";Ha.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,l=this.position.w,u=this.position.t,f=this.position.h,c=this.position.direction,h=c==="down",d=c==="left",v=c==="right",m=c==="up",b=l,g=f,_,T,w,k;!h&&!d&&!v&&!m&&(this.position.direction="down",h=!0);var x=h||m;x?(_=s,T=_+b,h?(w=u,k=Math.min(w+g,o),g=k-w):(k=u+g,w=Math.max(k-g,0),g=k-w)):(w=u,k=w+g,d?(T=s+b,_=Math.max(T-b,0),b=T-_):(_=s,T=Math.min(_+b,a),b=T-_)),this._box={l:_,t:w,w:b,h:g};var M=l>b,A=Ha.barLength+2*Ha.barPad,p=Ha.barWidth+2*Ha.barPad,S=s,y=u+f;y+p>o&&(y=o-p);var E=this.container.selectAll("rect.scrollbar-horizontal").data(M?[0]:[]);E.exit().on(".drag",null).remove(),E.enter().append("rect").classed("scrollbar-horizontal",!0).call(ose.fill,Ha.barColor),M?(this.hbar=E.attr({rx:Ha.barRadius,ry:Ha.barRadius,x:S,y,width:A,height:p}),this._hbarXMin=S+A/2,this._hbarTranslateMax=b-A):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var C=f>g,L=Ha.barWidth+2*Ha.barPad,R=Ha.barLength+2*Ha.barPad,I=s+l,P=u;I+L>a&&(I=a-L);var D=this.container.selectAll("rect.scrollbar-vertical").data(C?[0]:[]);D.exit().on(".drag",null).remove(),D.enter().append("rect").classed("scrollbar-vertical",!0).call(ose.fill,Ha.barColor),C?(this.vbar=D.attr({rx:Ha.barRadius,ry:Ha.barRadius,x:I,y:P,width:L,height:R}),this._vbarYMin=P+R/2,this._vbarTranslateMax=g-R):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var q=this.id,N=_-.5,U=C?T+L+.5:T+.5,G=w-.5,ee=M?k+p+.5:k+.5,Q=i._topdefs.selectAll("#"+q).data(M||C?[0]:[]);if(Q.exit().remove(),Q.enter().append("clipPath").attr("id",q).append("rect"),M||C?(this._clipRect=Q.select("rect").attr({x:Math.floor(N),y:Math.floor(G),width:Math.ceil(U)-Math.floor(N),height:Math.ceil(ee)-Math.floor(G)}),this.container.call(Ty.setClipUrl,q,this.gd),this.bg.attr({x:s,y:u,width:l,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Ty.setClipUrl,null),delete this._clipRect),M||C){var j=fh.behavior.drag().on("dragstart",function(){fh.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(j);var O=fh.behavior.drag().on("dragstart",function(){fh.event.sourceEvent.preventDefault(),fh.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));M&&this.hbar.on(".drag",null).call(O),C&&this.vbar.on(".drag",null).call(O)}this.setTranslate(r,n)};Ha.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(Ty.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)};Ha.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=fh.event.dx),this.vbar&&(r-=fh.event.dy),this.setTranslate(t,r)};Ha.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=fh.event.deltaY),this.vbar&&(r+=fh.event.deltaY),this.setTranslate(t,r)};Ha.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=xk.constrain(fh.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,f=xk.constrain(fh.event.y,l,u),c=(f-l)/(u-l),h=this.position.h-this._box.h;r=c*h}this.setTranslate(t,r)};Ha.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=xk.constrain(t||0,0,n),r=xk.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(Ty.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(Ty.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(Ty.setTranslate,t,r+o*this._vbarTranslateMax)}}});var yse=J((BIt,mse)=>{"use strict";var Ay=Nr(),yw=ea(),xw=qr(),My=ln(),Df=gt(),bk=ca(),$it=ki().arrayEditor,fse=Vo().LINE_SPACING,gn=mk(),Kit=lse();mse.exports=function(t){var r=t._fullLayout,n=Df.filterVisible(r[gn.name]);function i(h){yw.autoMargin(t,pse(h))}var a=r._menulayer.selectAll("g."+gn.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(gn.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){Ay.select(this).selectAll("g."+gn.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+gn.headerGroupClassName).data(n,Qit);o.enter().append("g").classed(gn.headerGroupClassName,!0);for(var s=Df.ensureSingle(a,"g",gn.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l{"use strict";var oat=mk();xse.exports={moduleType:"component",name:oat.name,layoutAttributes:OR(),supplyLayoutDefaults:ase(),draw:yse()}});var ww=J((HIt,wse)=>{"use strict";wse.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var jR=J((jIt,Ase)=>{"use strict";var _se=xa(),sat=kT(),lat=cn().extendDeepAll,uat=La().overrideAll,fat=Bb(),Tse=ki().templatedArray,Pg=ww(),cat=Tse("step",{visible:{valType:"boolean",dflt:!0,description:["Determines whether or not this step is included in the slider."].join(" ")},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle",description:["Sets the Plotly method to be called when the slider value is changed.","If the `skip` method is used, the API slider will function as normal","but will perform no API calls and will not bind automatically to state","updates. This may be used to create a component interface and attach to","slider events manually via JavaScript."].join(" ")},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}],description:["Sets the arguments values to be passed to the Plotly","method set in `method` on slide."].join(" ")},label:{valType:"string",description:"Sets the text label to appear on the slider"},value:{valType:"string",description:["Sets the value of the slider step, used to refer to the step programatically.","Defaults to the slider label if not provided."].join(" ")},execute:{valType:"boolean",dflt:!0,description:["When true, the API method is executed. When false, all other behaviors are the same","and command execution is skipped. This may be useful when hooking into, for example,","the `plotly_sliderchange` method and executing the API command manually without losing","the benefit of the slider automatically binding to the state of the plot through the","specification of `method` and `args`."].join(" ")}});Ase.exports=uat(Tse("slider",{visible:{valType:"boolean",dflt:!0,description:["Determines whether or not the slider is visible."].join(" ")},active:{valType:"number",min:0,dflt:0,description:["Determines which button (by index starting from 0) is","considered active."].join(" ")},steps:cat,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction",description:["Determines whether this slider length","is set in units of plot *fraction* or in *pixels.","Use `len` to set the value."].join(" ")},len:{valType:"number",min:0,dflt:1,description:["Sets the length of the slider","This measure excludes the padding of both ends.","That is, the slider's length is this length minus the","padding on both ends."].join(" ")},x:{valType:"number",min:-2,max:3,dflt:0,description:"Sets the x position (in normalized coordinates) of the slider."},pad:lat(sat({editType:"arraydraw"}),{description:"Set the padding of the slider component along each side."},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",description:["Sets the slider's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the range selector."].join(" ")},y:{valType:"number",min:-2,max:3,dflt:0,description:"Sets the y position (in normalized coordinates) of the slider."},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top",description:["Sets the slider's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the range selector."].join(" ")},transition:{duration:{valType:"number",min:0,dflt:150,description:"Sets the duration of the slider transition"},easing:{valType:"enumerated",values:fat.transition.easing.values,dflt:"cubic-in-out",description:"Sets the easing function of the slider transition"}},currentvalue:{visible:{valType:"boolean",dflt:!0,description:["Shows the currently-selected value above the slider."].join(" ")},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",description:["The alignment of the value readout relative to the length of the slider."].join(" ")},offset:{valType:"number",dflt:10,description:["The amount of space, in pixels, between the current value label","and the slider."].join(" ")},prefix:{valType:"string",description:"When currentvalue.visible is true, this sets the prefix of the label."},suffix:{valType:"string",description:"When currentvalue.visible is true, this sets the suffix of the label."},font:_se({description:"Sets the font of the current value label text."})},font:_se({description:"Sets the font of the slider step labels."}),activebgcolor:{valType:"color",dflt:Pg.gripBgActiveColor,description:["Sets the background color of the slider grip","while dragging."].join(" ")},bgcolor:{valType:"color",dflt:Pg.railBgColor,description:"Sets the background color of the slider."},bordercolor:{valType:"color",dflt:Pg.railBorderColor,description:"Sets the color of the border enclosing the slider."},borderwidth:{valType:"number",min:0,dflt:Pg.railBorderWidth,description:"Sets the width (in px) of the border enclosing the slider."},ticklen:{valType:"number",min:0,dflt:Pg.tickLength,description:"Sets the length in pixels of step tick marks"},tickcolor:{valType:"color",dflt:Pg.tickColor,description:"Sets the color of the border enclosing the slider."},tickwidth:{valType:"number",min:0,dflt:1,description:"Sets the tick width (in px)."},minorticklen:{valType:"number",min:0,dflt:Pg.minorTickLength,description:"Sets the length in pixels of minor step tick marks"}}),"arraydraw","from-root")});var Cse=J((VIt,Sse)=>{"use strict";var ky=gt(),Mse=Bu(),kse=jR(),hat=ww(),vat=hat.name,dat=kse.steps;Sse.exports=function(t,r){Mse(t,r,{name:vat,handleItemDefaults:pat})};function pat(e,t,r){function n(c,h){return ky.coerce(e,t,kse,c,h)}for(var i=Mse(e,t,{name:"steps",handleItemDefaults:gat}),a=0,o=0;o{"use strict";var ch=Nr(),wk=ea(),D0=qr(),hh=ln(),Rf=gt(),mat=Rf.strTranslate,_w=ca(),yat=ki().arrayEditor,jn=ww(),GR=Vo(),Dse=GR.LINE_SPACING,VR=GR.FROM_TL,YR=GR.FROM_BR;zse.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=xat(n,t),a=n._infolayer.selectAll("g."+jn.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(jn.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(f){f._commandObserver&&(f._commandObserver.remove(),delete f._commandObserver),wk.autoMargin(t,Rse(f))}if(a.exit().each(function(){ch.select(this).selectAll("g."+jn.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+jn.groupClassName).data(i,bat);s.enter().append("g").classed(jn.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",mat(o-jn.gripWidth*.5,t._dims.currentValueTotalHeight))}}function WR(e,t){var r=e._dims;return r.inputAreaStart+jn.stepInset+(r.inputAreaLength-2*jn.stepInset)*Math.min(1,Math.max(0,t))}function Lse(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-jn.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*jn.stepInset-2*r.inputAreaStart)))}function Sat(e,t,r){var n=r._dims,i=Rf.ensureSingle(e,"rect",jn.railTouchRectClass,function(a){a.call(qse,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,jn.tickOffset+r.ticklen+n.labelHeight)}).call(D0.fill,r.bgcolor).attr("opacity",0),hh.setTranslate(i,0,n.currentValueTotalHeight)}function Cat(e,t){var r=t._dims,n=r.inputAreaLength-jn.railInset*2,i=Rf.ensureSingle(e,"rect",jn.railRectClass);i.attr({width:n,height:jn.railWidth,rx:jn.railRadius,ry:jn.railRadius,"shape-rendering":"crispEdges"}).call(D0.stroke,t.bordercolor).call(D0.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),hh.setTranslate(i,jn.railInset,(r.inputAreaWidth-jn.railWidth)*.5+r.currentValueTotalHeight)}});var Bse=J((GIt,Ose)=>{"use strict";var Eat=ww();Ose.exports={moduleType:"component",name:Eat.name,layoutAttributes:jR(),supplyLayoutDefaults:Cse(),draw:Nse()}});var Tk=J((WIt,Hse)=>{"use strict";var Use=Ho();Hse.exports={bgcolor:{valType:"color",dflt:Use.background,editType:"plot",description:"Sets the background color of the range slider."},bordercolor:{valType:"color",dflt:Use.defaultLine,editType:"plot",description:"Sets the border color of the range slider."},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot",description:"Sets the border width of the range slider."},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0},description:["Determines whether or not the range slider range is","computed in relation to the input data.","If `range` is provided, then `autorange` is set to *false*."].join(" ")},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1},description:["Sets the range of the range slider.","If not set, defaults to the full xaxis range.","If the axis `type` is *log*, then you must take the","log of your desired range.","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot",description:["The height of the range slider as a fraction of the","total plot area height."].join(" ")},visible:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether or not the range slider will be visible.","If visible, perpendicular axes will be set to `fixedrange`"].join(" ")},editType:"calc"}});var XR=J((XIt,jse)=>{"use strict";jse.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc",description:["Determines whether or not the range of this axis in","the rangeslider use the same value than in the main plot","when zooming in/out.","If *auto*, the autorange will be used.","If *fixed*, the `range` is used.","If *match*, the current range of the corresponding y-axis on the main subplot is used."].join(" ")},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot",description:["Sets the range of this axis for the rangeslider."].join(" ")},editType:"calc"}});var Ak=J((ZIt,Vse)=>{"use strict";Vse.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var Wse=J(kk=>{"use strict";var Lat=jo(),Dat=ca(),Yse=Ak(),Rat=Vo().LINE_SPACING,Mk=Yse.name;function Gse(e){var t=e&&e[Mk];return t&&t.visible}kk.isVisible=Gse;kk.makeData=function(e){var t=Lat.list({_fullLayout:e},"x",!0),r=e.margin,n=[];if(!e._has("gl2d"))for(var i=0;i{"use strict";var Sk=gt(),Xse=ki(),Zse=jo(),Pat=Tk(),Iat=XR();Jse.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;Sk.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=Xse.newContainer(a,"rangeslider");function l(k,x){return Sk.coerce(o,s,Pat,k,x)}var u,f;function c(k,x){return Sk.coerce(u,f,Iat,k,x)}var h=l("visible");if(h){l("bgcolor",r.plot_bgcolor),l("bordercolor"),l("borderwidth"),l("thickness"),l("autorange",!a.isValidRange(o.range)),l("range");var d=r._subplots;if(d)for(var v=d.cartesian.filter(function(k){return k.substr(0,k.indexOf("y"))===Zse.name2id(n)}).map(function(k){return k.substr(k.indexOf("y"),k.length)}),m=Sk.simpleMap(v,Zse.id2name),b=0;b{"use strict";var qat=jo().list,Fat=ec().getAutoRange,zat=Ak();Kse.exports=function(t){for(var r=qat(t,"x",!0),n=0;n{"use strict";var Ck=Nr(),Nat=zr(),Oat=ea(),no=gt(),Ek=no.strTranslate,tle=ln(),R0=qr(),Bat=tg(),Uat=gs(),ZR=jo(),Hat=iu(),jat=th(),Qn=Ak();rle.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n=D.max)I=y[P+1];else if(R=D.pmax)I=y[P+1];else if(R0?e.touches[0].clientX:0}function Vat(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+Qn.slideBoxClassName).node(),a=e.select("rect."+Qn.grabAreaMinClassName).node(),o=e.select("rect."+Qn.grabAreaMaxClassName).node();function s(){var l=Ck.event,u=l.target,f=ele(l),c=f-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=Hat.coverSlip();this.addEventListener("touchmove",m),this.addEventListener("touchend",b),v.addEventListener("mousemove",m),v.addEventListener("mouseup",b);function m(g){var _=ele(g),T=+_-f,w,k,x;switch(u){case i:if(x="ew-resize",h+T>r._length||d+T<0)return;w=h+T,k=d+T;break;case a:if(x="col-resize",h+T>r._length)return;w=h+T,k=d;break;case o:if(x="col-resize",d+T<0)return;w=h,k=d+T;break;default:x="ew-resize",w=c,k=c+T;break}if(k{"use strict";var eot=gt(),tot=Tk(),rot=XR(),JR=Wse();ile.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:eot.extendFlat({},tot,{yaxis:rot})}}},layoutAttributes:Tk(),handleDefaults:$se(),calcAutorange:Qse(),draw:nle(),isVisible:JR.isVisible,makeData:JR.makeData,autoMarginOpts:JR.autoMarginOpts}});var Lk=J((tqt,sle)=>{"use strict";var not=xa(),ole=Ho(),iot=ki().templatedArray,aot=iot("button",{visible:{valType:"boolean",dflt:!0,editType:"plot",description:"Determines whether or not this button is visible."},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot",description:["The unit of measurement that the `count` value will set the range by."].join(" ")},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot",description:["Sets the range update mode.","If *backward*, the range update shifts the start of range","back *count* times *step* milliseconds.","If *todate*, the range update shifts the start of range","back to the first timestamp from *count* times","*step* milliseconds back.","For example, with `step` set to *year* and `count` set to *1*","the range update shifts the start of the range back to","January 01 of the current year.","Month and year *todate* are currently available only","for the built-in (Gregorian) calendar."].join(" ")},count:{valType:"number",min:0,dflt:1,editType:"plot",description:["Sets the number of steps to take to update the range.","Use with `step` to specify the update interval."].join(" ")},label:{valType:"string",editType:"plot",description:"Sets the text label to appear on the button."},editType:"plot",description:["Sets the specifications for each buttons.","By default, a range selector comes with no buttons."].join(" ")});sle.exports={visible:{valType:"boolean",editType:"plot",description:["Determines whether or not this range selector is visible.","Note that range selectors are only available for x axes of","`type` set to or auto-typed to *date*."].join(" ")},buttons:aot,x:{valType:"number",min:-2,max:3,editType:"plot",description:"Sets the x position (in normalized coordinates) of the range selector."},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot",description:["Sets the range selector's horizontal position anchor.","This anchor binds the `x` position to the *left*, *center*","or *right* of the range selector."].join(" ")},y:{valType:"number",min:-2,max:3,editType:"plot",description:"Sets the y position (in normalized coordinates) of the range selector."},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot",description:["Sets the range selector's vertical position anchor","This anchor binds the `y` position to the *top*, *middle*","or *bottom* of the range selector."].join(" ")},font:not({editType:"plot",description:"Sets the font of the range selector button text."}),bgcolor:{valType:"color",dflt:ole.lightLine,editType:"plot",description:"Sets the background color of the range selector buttons."},activecolor:{valType:"color",editType:"plot",description:"Sets the background color of the active range selector button."},bordercolor:{valType:"color",dflt:ole.defaultLine,editType:"plot",description:"Sets the color of the border enclosing the range selector."},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot",description:"Sets the width (in px) of the border enclosing the range selector."},editType:"plot"}});var $R=J((rqt,lle)=>{"use strict";lle.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var cle=J((nqt,fle)=>{"use strict";var Dk=gt(),oot=qr(),sot=ki(),lot=Bu(),ule=Lk(),KR=$R();fle.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=sot.newContainer(r,"rangeselector");function l(d,v){return Dk.coerce(o,s,ule,d,v)}var u=lot(o,s,{name:"buttons",handleItemDefaults:uot,calendar:a}),f=l("visible",u.length>0);if(f){var c=fot(r,n,i);l("x",c[0]),l("y",c[1]),Dk.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),Dk.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",oot.contrast(h,KR.lightAmount,KR.darkAmount)),l("bordercolor"),l("borderwidth")}};function uot(e,t,r,n){var i=n.calendar;function a(l,u){return Dk.coerce(e,t,ule.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function fot(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a{"use strict";var cot=sE(),hot=gt().titleCase;hle.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=vot(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function vot(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=cot["utc"+hot(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var wle=J((aqt,ble)=>{"use strict";var Pk=Nr(),dot=zr(),pot=ea(),dle=qr(),xle=ln(),ad=gt(),ple=ad.strTranslate,Rk=ca(),got=jo(),tP=Vo(),gle=tP.LINE_SPACING,mle=tP.FROM_TL,yle=tP.FROM_BR,eP=$R(),mot=vle();ble.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(yot(t),xot);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=Pk.select(this),o=i,s=o.rangeselector,l=a.selectAll("g.button").data(ad.filterVisible(s.buttons));l.enter().append("g").classed("button",!0),l.exit().remove(),l.each(function(u){var f=Pk.select(this),c=mot(o,u);u._isActive=bot(o,u,c),f.call(QR,s,u),f.call(_ot,s,u,t),f.on("click",function(){t._dragged||dot.call("_guiRelayout",t,c)}),f.on("mouseover",function(){u._isHovered=!0,f.call(QR,s,u)}),f.on("mouseout",function(){u._isHovered=!1,f.call(QR,s,u)})}),Aot(t,l,s,o._name,a)})};function yot(e){for(var t=got.list(e,"x",!0),r=[],n=0;n{"use strict";_le.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:Lk()}}},layoutAttributes:Lk(),handleDefaults:cle(),draw:wle()}});var Wa=J(rP=>{"use strict";var Ale=cn().extendFlat;rP.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:Ale({},r,{description:["Sets the horizontal domain of this ",n,i,"(in plot fraction).",a].join("")}),y:Ale({},r,{description:["Sets the vertical domain of this ",n,i,"(in plot fraction).",a].join("")}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType,description:["If there is a layout grid, use the domain ","for this row in the grid for this ",n,i,".",a].join("")},o.column={valType:"integer",min:0,dflt:0,editType:e.editType,description:["If there is a layout grid, use the domain ","for this column in the grid for this ",n,i,".",a].join("")}),o};rP.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s{"use strict";var Mot=gt(),kot=_1().counter,Sot=Wa().attributes,Mle=Eo().idRegex,Cot=ki(),nP={rows:{valType:"integer",min:1,editType:"plot",description:["The number of rows in the grid. If you provide a 2D `subplots`","array or a `yaxes` array, its length is used as the default.","But it's also possible to have a different length, if you","want to leave a row at the end for non-cartesian subplots."].join(" ")},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot",description:["Is the first row the top or the bottom? Note that columns","are always enumerated from left to right."].join(" ")},columns:{valType:"integer",min:1,editType:"plot",description:["The number of columns in the grid. If you provide a 2D `subplots`","array, the length of its longest row is used as the default.","If you give an `xaxes` array, its length is used as the default.","But it's also possible to have a different length, if you","want to leave a row at the end for non-cartesian subplots."].join(" ")},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[kot("xy").toString(),""],editType:"plot"},editType:"plot",description:["Used for freeform grids, where some axes may be shared across subplots","but others are not. Each entry should be a cartesian subplot id, like","*xy* or *x3y2*, or ** to leave that cell empty. You may reuse x axes","within the same column, and y axes within the same row.","Non-cartesian subplots and traces that support `domain` can place themselves","in this grid separately using the `gridcell` attribute."].join(" ")},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[Mle.x.toString(),""],editType:"plot"},editType:"plot",description:["Used with `yaxes` when the x and y axes are shared across columns and rows.","Each entry should be an x axis id like *x*, *x2*, etc., or ** to","not put an x axis in that column. Entries other than ** must be unique.","Ignored if `subplots` is present. If missing but `yaxes` is present,","will generate consecutive IDs."].join(" ")},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[Mle.y.toString(),""],editType:"plot"},editType:"plot",description:["Used with `yaxes` when the x and y axes are shared across columns and rows.","Each entry should be an y axis id like *y*, *y2*, etc., or ** to","not put a y axis in that row. Entries other than ** must be unique.","Ignored if `subplots` is present. If missing but `xaxes` is present,","will generate consecutive IDs."].join(" ")},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot",description:["If no `subplots`, `xaxes`, or `yaxes` are given but we do have `rows` and `columns`,","we can generate defaults using consecutive axis IDs, in two ways:","*coupled* gives one x axis per column and one y axis per row.","*independent* uses a new xy pair for each cell, left-to-right across each row","then iterating rows according to `roworder`."].join(" ")},xgap:{valType:"number",min:0,max:1,editType:"plot",description:["Horizontal space between grid cells, expressed as a fraction","of the total width available to one cell. Defaults to 0.1","for coupled-axes grids and 0.2 for independent grids."].join(" ")},ygap:{valType:"number",min:0,max:1,editType:"plot",description:["Vertical space between grid cells, expressed as a fraction","of the total height available to one cell. Defaults to 0.1","for coupled-axes grids and 0.3 for independent grids."].join(" ")},domain:Sot({name:"grid",editType:"plot",noGridCell:!0},{description:["The first and last cells end exactly at the domain","edges, with no grout around the edges."].join(" ")}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot",description:["Sets where the x axis labels and titles go. *bottom* means","the very bottom of the grid. *bottom plot* is the lowest plot","that each x axis is used in. *top* and *top plot* are similar."].join(" ")},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot",description:["Sets where the y axis labels and titles go. *left* means","the very left edge of the grid. *left plot* is the leftmost plot","that each y axis is used in. *right* and *right plot* are similar."].join(" ")},editType:"plot"};function Ik(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function Eot(e,t){var r=e.grid||{},n=Ik(t,r,"x"),i=Ik(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),l=o&&n!==r.xaxes&&s&&i!==r.yaxes,u,f;a?(u=r.subplots.length,f=r.subplots[0].length):(s&&(u=i.length),o&&(f=n.length));var c=Cot.newContainer(t,"grid");function h(x,M){return Mot.coerce(r,c,nP,x,M)}var d=h("rows",u),v=h("columns",f);if(!(d*v>1)){delete t.grid;return}if(!a&&!o&&!s){var m=h("pattern")==="independent";m&&(a=!0)}c._hasSubplotGrid=a;var b=h("roworder"),g=b==="top to bottom",_=a?.2:.1,T=a?.3:.1,w,k;l&&t._splomGridDflt&&(w=t._splomGridDflt.xside,k=t._splomGridDflt.yside),c._domains={x:kle("x",h,_,w,v),y:kle("y",h,T,k,d,g)}}function kle(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],f=(s[1]-u)/(i-o),c=f*(1-o),h=0;h{"use strict";Lle.exports={visible:{valType:"boolean",editType:"calc",description:["Determines whether or not this set of error bars is visible."].join(" ")},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc",description:["Determines the rule used to generate the error bars.","If *constant`, the bar lengths are of a constant value.","Set this constant in `value`.","If *percent*, the bar lengths correspond to a percentage of","underlying data. Set this percentage in `value`.","If *sqrt*, the bar lengths correspond to the square of the","underlying data.","If *data*, the bar lengths are set with data set `array`."].join(" ")},symmetric:{valType:"boolean",editType:"calc",description:["Determines whether or not the error bars have the same length","in both direction","(top/bottom for vertical bars, left/right for horizontal bars."].join(" ")},array:{valType:"data_array",editType:"calc",description:["Sets the data corresponding the length of each error bar.","Values are plotted relative to the underlying data."].join(" ")},arrayminus:{valType:"data_array",editType:"calc",description:["Sets the data corresponding the length of each error bar in the","bottom (left) direction for vertical (horizontal) bars","Values are plotted relative to the underlying data."].join(" ")},value:{valType:"number",min:0,dflt:10,editType:"calc",description:["Sets the value of either the percentage","(if `type` is set to *percent*) or the constant","(if `type` is set to *constant*) corresponding to the lengths of","the error bars."].join(" ")},valueminus:{valType:"number",min:0,dflt:10,editType:"calc",description:["Sets the value of either the percentage","(if `type` is set to *percent*) or the constant","(if `type` is set to *constant*) corresponding to the lengths of","the error bars in the","bottom (left) direction for vertical (horizontal) bars"].join(" ")},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style",description:"Sets the stoke color of the error bars."},thickness:{valType:"number",min:0,dflt:2,editType:"style",description:"Sets the thickness (in px) of the error bars."},width:{valType:"number",min:0,editType:"plot",description:["Sets the width (in px) of the cross-bar at both ends","of the error bars."].join(" ")},editType:"calc",_deprecated:{opacity:{valType:"number",editType:"style",description:["Obsolete.","Use the alpha channel in error bar `color` to set the opacity."].join(" ")}}}});var Ple=J((fqt,Rle)=>{"use strict";var Dle=dn(),Dot=zr(),Rot=gt(),Pot=ki(),Iot=iP();Rle.exports=function(e,t,r,n){var i="error_"+n.axis,a=Pot.newContainer(t,i),o=e[i]||{};function s(v,m){return Rot.coerce(o,a,Iot,v,m)}var l=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=s("visible",l);if(u!==!1){var f=s("type","array"in o?"data":"percent"),c=!0;f!=="sqrt"&&(c=s("symmetric",!((f==="data"?"arrayminus":"valueminus")in o))),f==="data"?(s("array"),s("traceref"),c||(s("arrayminus"),s("tracerefminus"))):(f==="percent"||f==="constant")&&(s("value"),c||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||Dle(o.thickness)||Dle(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",Dot.traceIs(t,"gl3d")?0:4))}}});var aP=J((cqt,qle)=>{"use strict";qle.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,f){var c=+i[f];return[c,c]};var a=t.arrayminus||[];return function(u,f){var c=+i[f],h=+a[f];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=Ile(r,t.value),s=Ile(r,t.valueminus);return n||t.valueminus===void 0?function(u){var f=o(u);return[f,f]}:function(u){return[s(u),o(u)]}}};function Ile(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var Nle=J((hqt,zle)=>{"use strict";var oP=dn(),qot=zr(),sP=nn(),Fot=gt(),zot=aP();zle.exports=function(t){for(var r=t.calcdata,n=0;n{"use strict";var Ole=Nr(),P0=dn(),Not=ln(),Oot=fs();Ble.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(f){var c=f[0].trace,h=c.error_x||{},d=c.error_y||{},v;c.ids&&(v=function(_){return _.id});var m=Oot.hasMarkers(c)&&c.marker.maxdisplayed>0;!d.visible&&!h.visible&&(f=[]);var b=Ole.select(this).selectAll("g.errorbar").data(f,v);if(b.exit().remove(),!!f.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var g=b.enter().append("g").classed("errorbar",!0);l&&g.style("opacity",0).transition().duration(i.duration).style("opacity",1),Not.setClipUrl(b,n.layerClipId,t),b.each(function(_){var T=Ole.select(this),w=Bot(_,o,s);if(!(m&&!_.vis)){var k,x=T.select("path.yerror");if(d.visible&&P0(w.x)&&P0(w.yh)&&P0(w.ys)){var M=d.width;k="M"+(w.x-M)+","+w.yh+"h"+2*M+"m-"+M+",0V"+w.ys,w.noYS||(k+="m-"+M+",0h"+2*M),a=!x.size(),a?x=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):l&&(x=x.transition().duration(i.duration).ease(i.easing)),x.attr("d",k)}else x.remove();var A=T.select("path.xerror");if(h.visible&&P0(w.y)&&P0(w.xh)&&P0(w.xs)){var p=(h.copy_ystyle?d:h).width;k="M"+w.xh+","+(w.y-p)+"v"+2*p+"m0,-"+p+"H"+w.xs,w.noXS||(k+="m0,-"+p+"v"+2*p),a=!A.size(),a?A=T.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(A=A.transition().duration(i.duration).ease(i.easing)),A.attr("d",k)}else A.remove()}})}})};function Bot(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),P0(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),P0(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var Vle=J((dqt,jle)=>{"use strict";var Uot=Nr(),Hle=qr();jle.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=Uot.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(Hle.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(Hle.stroke,a.color)})}});var Wle=J((pqt,Gle)=>{"use strict";var Tw=gt(),Yle=La().overrideAll,Aw=iP(),Ig={error_x:Tw.extendFlat({},Aw),error_y:Tw.extendFlat({},Aw)};delete Ig.error_x.copy_zstyle;delete Ig.error_y.copy_zstyle;delete Ig.error_y.copy_ystyle;var Mw={error_x:Tw.extendFlat({},Aw),error_y:Tw.extendFlat({},Aw),error_z:Tw.extendFlat({},Aw)};delete Mw.error_x.copy_ystyle;delete Mw.error_y.copy_ystyle;delete Mw.error_z.copy_ystyle;delete Mw.error_z.copy_zstyle;Gle.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:Ig,bar:Ig,histogram:Ig,scatter3d:Yle(Mw,"calc","nested"),scattergl:Yle(Ig,"calc","nested")}},supplyDefaults:Ple(),calc:Nle(),makeComputeError:aP(),plot:Ule(),style:Vle(),hoverInfo:Hot};function Hot(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var Zle=J((gqt,Xle)=>{"use strict";Xle.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var rue=J((mqt,tue)=>{"use strict";var I0=Nr(),lP=ls(),Fk=ea(),Jle=zr(),od=nn(),qk=iu(),gc=gt(),dh=gc.strTranslate,eue=cn().extendFlat,uP=th(),vh=ln(),fP=qr(),jot=tg(),Vot=ca(),Yot=nu().flipScale,Got=vw(),Wot=lk(),Xot=hl(),cP=Vo(),$le=cP.LINE_SPACING,Kle=cP.FROM_TL,Qle=cP.FROM_BR,Pa=Zle().cn;function Zot(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Pa.colorbar).data(Jot(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(Pa.colorbar,!0),r.each(function(n){var i=I0.select(this);gc.ensureSingle(i,"rect",Pa.cbbg),gc.ensureSingle(i,"g",Pa.cbfills),gc.ensureSingle(i,"g",Pa.cblines),gc.ensureSingle(i,"g",Pa.cbaxis,function(o){o.classed(Pa.crisp,!0)}),gc.ensureSingle(i,"g",Pa.cbtitleunshift,function(o){o.append("g").classed(Pa.cbtitle,!0)}),gc.ensureSingle(i,"rect",Pa.cboutline);var a=$ot(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&Kot(i,n,e)}),r.exit().each(function(n){Fk.autoMargin(e,n._id)}).remove(),r.order()}function Jot(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(T){return eue(T,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?Yot(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var f=0;f1){var ne=Math.pow(10,Math.floor(Math.log(V)/Math.LN10));oe*=ne*gc.roundUp(V/ne,[2,5,10]),(Math.abs(E.start)/E.size+1e-6)%1<2e-6&&(K.tick0=0)}K.dtick=oe}K.domain=n?[O+v/w.h,O+q-v/w.h]:[O+d/w.w,O+q-d/w.w],K.setScale(),e.attr("transform",dh(Math.round(w.l),Math.round(w.t)));var W=e.select("."+Pa.cbtitleunshift).attr("transform",dh(-Math.round(w.l),-Math.round(w.t))),fe=K.ticklabelposition,ge=K.title.font.size,Ce=e.select("."+Pa.cbaxis),Ne,pe=0,me=0;function Ie(rt,ce){var Ee={propContainer:K,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:T._dfltTitle.colorbar,containerGroup:e.select("."+Pa.cbtitle)},Ae=rt.charAt(0)==="h"?rt.substr(1):"h"+rt;e.selectAll("."+Ae+",."+Ae+"-math-group").remove(),jot.draw(r,rt,eue(Ee,ce||{}))}function Re(){if(n&&$||!n&&!$){var rt,ce;A==="top"&&(rt=d+w.l+N*m,ce=v+w.t+U*(1-O-q)+3+ge*.75),A==="bottom"&&(rt=d+w.l+N*m,ce=v+w.t+U*(1-O)-3-ge*.25),A==="right"&&(ce=v+w.t+U*b+3+ge*.75,rt=d+w.l+N*O),Ie(K._id+"title",{attributes:{x:rt,y:ce,"text-anchor":n?"start":"middle"}})}}function ze(){if(n&&!$||!n&&$){var rt=K.position||0,ce=K._offset+K._length/2,Ee,Ae;if(A==="right")Ae=ce,Ee=w.l+N*rt+10+ge*(K.showticklabels?1:.5);else if(Ee=ce,A==="bottom"&&(Ae=w.t+U*rt+10+(fe.indexOf("inside")===-1?K.tickfont.size:0)+(K.ticks!=="intside"&&t.ticklen||0)),A==="top"){var Pe=M.text.split("
").length;Ae=w.t+U*rt+10-I-$le*ge*Pe}Ie((n?"h":"v")+K._id+"title",{avoid:{selection:I0.select(r).selectAll("g."+K._id+"tick"),side:A,offsetTop:n?0:w.t,offsetLeft:n?w.l:0,maxShift:n?T.width:T.height},attributes:{x:Ee,y:Ae,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Be(){if(!n&&!$||n&&$){var rt=e.select("."+Pa.cbtitle),ce=rt.select("text"),Ee=[-l/2,l/2],Ae=rt.select(".h"+K._id+"title-math-group").node(),Pe=15.6;ce.node()&&(Pe=parseInt(ce.node().style.fontSize,10)*$le);var He;if(Ae?(He=vh.bBox(Ae),me=He.width,pe=He.height,pe>Pe&&(Ee[1]-=(pe-Pe)/2)):ce.node()&&!ce.classed(Pa.jsPlaceholder)&&(He=vh.bBox(ce.node()),me=He.width,pe=He.height),n){if(pe){if(pe+=5,A==="top")K.domain[1]-=pe/w.h,Ee[1]*=-1;else{K.domain[0]+=pe/w.h;var Fe=Vot.lineCount(ce);Ee[1]+=(1-Fe)*Pe}rt.attr("transform",dh(Ee[0],Ee[1])),K.setScale()}}else me&&(A==="right"&&(K.domain[0]+=(me+ge/2)/w.w),rt.attr("transform",dh(Ee[0],Ee[1])),K.setScale())}e.selectAll("."+Pa.cbfills+",."+Pa.cblines).attr("transform",n?dh(0,Math.round(w.h*(1-K.domain[1]))):dh(Math.round(w.w*K.domain[0]),0)),Ce.attr("transform",n?dh(0,Math.round(-w.t)):dh(Math.round(-w.l),0));var ke=e.select("."+Pa.cbfills).selectAll("rect."+Pa.cbfill).attr("style","").data(L);ke.enter().append("rect").classed(Pa.cbfill,!0).attr("style",""),ke.exit().remove();var Ue=p.map(K.c2p).map(Math.round).sort(function(_t,Tt){return _t-Tt});ke.each(function(_t,Tt){var nt=[Tt===0?p[0]:(L[Tt]+L[Tt-1])/2,Tt===L.length-1?p[1]:(L[Tt]+L[Tt+1])/2].map(K.c2p).map(Math.round);n&&(nt[1]=gc.constrain(nt[1]+(nt[1]>nt[0])?1:-1,Ue[0],Ue[1]));var bt=I0.select(this).attr(n?"x":"y",G).attr(n?"y":"x",I0.min(nt)).attr(n?"width":"height",Math.max(I,2)).attr(n?"height":"width",Math.max(I0.max(nt)-I0.min(nt),2));if(t._fillgradient)vh.gradient(bt,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var At=y(_t).replace("e-","");bt.attr("fill",lP(At).toHexString())}});var Ge=e.select("."+Pa.cblines).selectAll("path."+Pa.cbline).data(x.color&&x.width?R:[]);Ge.enter().append("path").classed(Pa.cbline,!0),Ge.exit().remove(),Ge.each(function(_t){var Tt=G,nt=Math.round(K.c2p(_t))+x.width/2%1;I0.select(this).attr("d","M"+(n?Tt+","+nt:nt+","+Tt)+(n?"h":"v")+I).call(vh.lineGroupStyle,x.width,S(_t),x.dash)}),Ce.selectAll("g."+K._id+"tick,path").remove();var lt=G+I+(l||0)/2-(t.ticks==="outside"?1:0),it=od.calcTicks(K),wt=od.getTickSigns(K)[2];return od.drawTicks(r,K,{vals:K.ticks==="inside"?od.clipEnds(K,it):it,layer:Ce,path:od.makeTickPath(K,lt,wt),transFn:od.makeTransTickFn(K)}),od.drawLabels(r,K,{vals:it,layer:Ce,transFn:od.makeTransTickLabelFn(K),labelFns:od.makeLabelFns(K,lt)})}function tt(){var rt,ce=I+l/2;fe.indexOf("inside")===-1&&(rt=vh.bBox(Ce.node()),ce+=n?rt.width:rt.height),Ne=W.select("text");var Ee=0,Ae=n&&A==="top",Pe=!n&&A==="right",He=0;if(Ne.node()&&!Ne.classed(Pa.jsPlaceholder)){var Fe,ke=W.select(".h"+K._id+"title-math-group").node();ke&&(n&&$||!n&&!$)?(rt=vh.bBox(ke),Ee=rt.width,Fe=rt.height):(rt=vh.bBox(W.node()),Ee=rt.right-w.l-(n?G:Z),Fe=rt.bottom-w.t-(n?Z:G),!n&&A==="top"&&(ce+=rt.height,He=rt.height)),Pe&&(Ne.attr("transform",dh(Ee/2+ge/2,0)),Ee*=2),ce=Math.max(ce,n?Ee:Fe)}var Ue=(n?d:v)*2+ce+u+l/2,Ge=0;!n&&M.text&&h==="bottom"&&b<=0&&(Ge=Ue/2,Ue+=Ge,He+=Ge),T._hColorbarMoveTitle=Ge,T._hColorbarMoveCBTitle=He;var lt=u+l,it=(n?G:Z)-lt/2-(n?d:0),wt=(n?Z:G)-(n?D:v+He-Ge);e.select("."+Pa.cbbg).attr("x",it).attr("y",wt).attr(n?"width":"height",Math.max(Ue-Ge,2)).attr(n?"height":"width",Math.max(D+lt,2)).call(fP.fill,f).call(fP.stroke,t.bordercolor).style("stroke-width",u);var _t=Pe?Math.max(Ee-10,0):0;e.selectAll("."+Pa.cboutline).attr("x",(n?G:Z+d)+_t).attr("y",(n?Z+v-D:G)+(Ae?pe:0)).attr(n?"width":"height",Math.max(I,2)).attr(n?"height":"width",Math.max(D-(n?2*v+pe:2*d+_t),2)).call(fP.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Tt=n?ee*Ue:0,nt=n?0:(1-Q)*Ue-He;if(Tt=_?w.l-Tt:-Tt,nt=g?w.t-nt:-nt,e.attr("transform",dh(Tt,nt)),!n&&(u||lP(f).getAlpha()&&!lP.equals(T.paper_bgcolor,f))){var bt=Ce.selectAll("text"),At=bt[0].length,Ye=e.select("."+Pa.cbbg).node(),je=vh.bBox(Ye),$e=vh.getTranslate(e),ve=2;bt.each(function(Vt,er){var _r=0,br=At-1;if(er===_r||er===br){var or=vh.bBox(this),tn=vh.getTranslate(this),Lr;if(er===br){var Gr=or.right+tn.x,sn=je.right+$e.x+Z-u-ve+m;Lr=sn-Gr,Lr>0&&(Lr=0)}else if(er===_r){var Hr=or.left+tn.x,Br=je.left+$e.x+Z+u+ve;Lr=Br-Hr,Lr<0&&(Lr=0)}Lr&&(At<3?this.setAttribute("transform","translate("+Lr+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Y={},ie=Kle[c],Te=Qle[c],Ve=Kle[h],at=Qle[h],ft=Ue-I;n?(a==="pixels"?(Y.y=b,Y.t=D*Ve,Y.b=D*at):(Y.t=Y.b=0,Y.yt=b+i*Ve,Y.yb=b-i*at),s==="pixels"?(Y.x=m,Y.l=Ue*ie,Y.r=Ue*Te):(Y.l=ft*ie,Y.r=ft*Te,Y.xl=m-o*ie,Y.xr=m+o*Te)):(a==="pixels"?(Y.x=m,Y.l=D*ie,Y.r=D*Te):(Y.l=Y.r=0,Y.xl=m+i*ie,Y.xr=m-i*Te),s==="pixels"?(Y.y=1-b,Y.t=Ue*Ve,Y.b=Ue*at):(Y.t=ft*Ve,Y.b=ft*at,Y.yt=b-o*Ve,Y.yb=b+o*at));var Ht=t.y<.5?"b":"t",Xt=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var St={r:T.width-it-Tt,l:it+Y.r,b:T.height-wt-nt,t:wt+Y.b};_&&g?Fk.autoMargin(r,t._id,Y):_?r._fullLayout._reservedMargin[t._id][Ht]=St[Ht]:g||n?r._fullLayout._reservedMargin[t._id][Xt]=St[Xt]:r._fullLayout._reservedMargin[t._id][Ht]=St[Ht]}return gc.syncOrAsync([Fk.previousPromises,Re,Be,ze,Fk.previousPromises,tt],r)}function Kot(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;qk.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),uP(e)},moveFn:function(u,f){e.attr("transform",o+dh(u,f)),s=qk.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=qk.align((n?t._vFrac:1-t._uFrac)-f/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var c=qk.getCursor(s,l,t.xanchor,t.yanchor);uP(e,c)},doneFn:function(){if(uP(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?Jle.call("_guiRestyle",r,u,t._traceIndex):Jle.call("_guiRelayout",r,u)}}})}function Qot(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,f=1.001*r[0]-.001*r[1],c=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>f&&o0?o>=l:o<=l));s++)o>r[0]&&o{"use strict";nue.exports={moduleType:"component",name:"colorbar",attributes:rA(),supplyDefaults:_L(),draw:rue().draw,hasColorbar:pL()}});var oue=J((xqt,aue)=>{"use strict";aue.exports={moduleType:"component",name:"legend",layoutAttributes:xD(),supplyLayoutDefaults:_D(),draw:PD(),style:ED()}});var lue=J((bqt,sue)=>{"use strict";sue.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var fue=J((wqt,uue)=>{"use strict";uue.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var vP=J((_qt,due)=>{"use strict";var tst=zr(),vue=gt(),hP=vue.extendFlat,cue=vue.extendDeep;function hue(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function rst(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}due.exports=function(t,r){var n,i=t.data,a=t.layout,o=cue([],i),s=cue({},a,hue(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n{"use strict";var nst=VT().EventEmitter,ist=zr(),ast=gt(),pue=yg(),ost=vP(),sst=YM(),lst=GM();function ust(e,t){var r=new nst,n=ost(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=pue.getDelay(i._fullLayout);setTimeout(function(){var l=sst(i),u=document.createElement("canvas");u.id=ast.randstr(),r=lst({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=pue.getRedrawFunc(i);return ist.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}gue.exports=ust});var bue=J((Aqt,xue)=>{"use strict";var yue=yg(),fst={getDelay:yue.getDelay,getRedrawFunc:yue.getRedrawFunc,clone:vP(),toSVG:YM(),svgToImg:GM(),toImage:mue(),downloadImage:J8()};xue.exports=fst});var _ue=J(sd=>{"use strict";sd.version=iT().version;MV();gX();var cst=zr(),kw=sd.register=cst.register,pP=zne(),wue=Object.keys(pP);for(zk=0;zk{"use strict";Tue.exports=_ue()});var qg=J((Sqt,Mue)=>{"use strict";Mue.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var ov=J((Cqt,Eue)=>{"use strict";var Xa=ds(),kue=Ga().axisHoverFormat,hst=Jn().hovertemplateAttrs,vst=Jn().texttemplateAttrs,Cue=Da(),dst=xa(),Sue=qg(),pst=Ss().pattern,Fg=cn().extendFlat,gP=dst({editType:"calc",arrayOk:!0,colorEditType:"style",description:""}),gst=Xa.marker,mst=gst.line,yst=Fg({},mst.width,{dflt:0}),xst=Fg({width:yst,editType:"calc"},Cue("marker.line")),bst=Fg({line:xst,editType:"calc"},Cue("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style",description:"Sets the opacity of the bars."},pattern:pst,cornerradius:{valType:"any",editType:"calc",description:["Sets the rounding of corners. May be an integer number of pixels,","or a percentage of bar width (as a string ending in %). Defaults to `layout.barcornerradius`.","In stack or relative barmode, the first trace to set cornerradius is used for the whole stack."].join(" ")}});Eue.exports={x:Xa.x,x0:Xa.x0,dx:Xa.dx,y:Xa.y,y0:Xa.y0,dy:Xa.dy,xperiod:Xa.xperiod,yperiod:Xa.yperiod,xperiod0:Xa.xperiod0,yperiod0:Xa.yperiod0,xperiodalignment:Xa.xperiodalignment,yperiodalignment:Xa.yperiodalignment,xhoverformat:kue("x"),yhoverformat:kue("y"),text:Xa.text,texttemplate:vst({editType:"plot"},{keys:Sue.eventDataKeys}),hovertext:Xa.hovertext,hovertemplate:hst({},{keys:Sue.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc",description:["Specifies the location of the `text`.","*inside* positions `text` inside, next to the bar end","(rotated and scaled if needed).","*outside* positions `text` outside, next to the bar end","(scaled if needed), unless there is another bar stacked on","this one, then the text gets pushed inside.","*auto* tries to position `text` inside the bar, but if","the bar is too small and no bar is stacked on this one","the text is moved outside.","If *none*, no text appears."].join(" ")},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot",description:["Determines if texts are kept at center or start/end points in `textposition` *inside* mode."].join(" ")},textangle:{valType:"angle",dflt:"auto",editType:"plot",description:["Sets the angle of the tick labels with respect to the bar.","For example, a `tickangle` of -90 draws the tick labels","vertically. With *auto* the texts may automatically be","rotated to fit with the maximum size in bars."].join(" ")},textfont:Fg({},gP,{description:"Sets the font used for `text`."}),insidetextfont:Fg({},gP,{description:"Sets the font used for `text` lying inside the bar."}),outsidetextfont:Fg({},gP,{description:"Sets the font used for `text` lying outside the bar."}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc",description:["Constrain the size of text inside or outside a bar to be no","larger than the bar itself."].join(" ")},cliponaxis:Fg({},Xa.cliponaxis,{description:["Determines whether the text nodes","are clipped about the subplot axes.","To show the text nodes above axis lines and tick labels,","make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*."].join(" ")}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes",description:["Sets the orientation of the bars.","With *v* (*h*), the value of the each bar spans","along the vertical (horizontal)."].join(" ")},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc",description:["Sets where the bar base is drawn (in position axis units).","In *stack* or *relative* barmode,","traces that set *base* will be excluded","and drawn in *overlay* mode instead."].join(" ")},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc",description:["Shifts the position where the bar is drawn","(in position axis units).","In *group* barmode,","traces that set *offset* will be excluded","and drawn in *overlay* mode instead."].join(" ")},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc",description:["Sets the bar width (in position axis units)."].join(" ")},marker:bst,offsetgroup:Xa.offsetgroup,alignmentgroup:Xa.alignmentgroup,selected:{marker:{opacity:Xa.selected.marker.opacity,color:Xa.selected.marker.color,editType:"style"},textfont:Xa.selected.textfont,editType:"style"},unselected:{marker:{opacity:Xa.unselected.marker.opacity,color:Xa.unselected.marker.color,editType:"style"},textfont:Xa.unselected.textfont,editType:"style"},zorder:Xa.zorder,_deprecated:{bardir:{valType:"enumerated",editType:"calc",values:["v","h"],description:"Renamed to `orientation`."}}}});var Ok=J((Eqt,Lue)=>{"use strict";Lue.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc",description:["Determines how bars at the same location coordinate","are displayed on the graph.","With *stack*, the bars are stacked on top of one another","With *relative*, the bars are stacked on top of one another,","with negative values below the axis, positive values above","With *group*, the bars are plotted next to one another","centered around the shared location.","With *overlay*, the bars are plotted over one another,","you might need to reduce *opacity* to see multiple bars."].join(" ")},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc",description:["Sets the normalization for bar traces on the graph.","With *fraction*, the value of each bar is divided by the sum of all","values at that location coordinate.","*percent* is the same but multiplied by 100 to show percentages."].join(" ")},bargap:{valType:"number",min:0,max:1,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","adjacent location coordinates."].join(" ")},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","the same location coordinate."].join(" ")},barcornerradius:{valType:"any",editType:"calc",description:["Sets the rounding of bar corners. May be an integer number of pixels,","or a percentage of bar width (as a string ending in %)."].join(" ")}}});var Bk=J((Lqt,Pue)=>{"use strict";var wst=qr(),Due=nu().hasColorscale,Rue=vl(),_st=gt().coercePattern;Pue.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=Due(t,"marker");s&&Rue(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",wst.defaultLine),Due(t,"marker.line")&&Rue(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),_st(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var Pf=J((Dqt,Oue)=>{"use strict";var Iue=dn(),Cy=gt(),que=qr(),Tst=zr(),Ast=rw(),Mst=nv(),kst=Bk(),Sst=Tg(),Fue=ov(),Uk=Cy.coerceFont;function Cst(e,t,r,n){function i(u,f){return Cy.coerce(e,t,Fue,u,f)}var a=Ast(e,t,n,i);if(!a){t.visible=!1;return}Mst(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate");var o=i("textposition");Nue(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),kst(e,t,i,r,n);var s=(t.marker.line||{}).color,l=Tst.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||que.defaultLine,{axis:"y"}),l(e,t,s||que.defaultLine,{axis:"x",inherit:"y"}),Cy.coerceSelectionMarkerOpacity(t,i)}function Est(e,t){var r,n;function i(s,l){return Cy.coerce(n._input,n,Fue,s,l)}for(var a=0;a=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&Iue(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function Nue(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,f=a.moduleHasTextangle!==!1,c=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",m=d||i==="outside";if(v||m){var b=Uk(n,"textfont",r.font),g=Cy.extendFlat({},b),_=e.textfont&&e.textfont.color,T=!_;if(T&&delete g.color,Uk(n,"insidetextfont",g),h){var w=Cy.extendFlat({},b);T&&delete w.color,Uk(n,"pathbar.textfont",w)}m&&Uk(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),l&&n("constraintext"),u&&n("cliponaxis"),f&&n("textangle"),n("texttemplate")}v&&c&&n("insidetextanchor")}Oue.exports={supplyDefaults:Cst,crossTraceDefaults:Est,handleText:Nue,validateCornerradius:zue}});var mP=J((Rqt,Bue)=>{"use strict";var Lst=zr(),Dst=nn(),Rst=gt(),Pst=Ok(),Ist=Pf().validateCornerradius;Bue.exports=function(e,t,r){function n(v,m){return Rst.coerce(e,t,Pst,v,m)}for(var i=!1,a=!1,o=!1,s={},l=n("barmode"),u=0;u{"use strict";var Ey=gt();Uue.exports=function(t,r){for(var n=0;n{"use strict";var Hue=nn(),jue=iv(),Vue=nu().hasColorscale,Yue=Uu(),qst=Sw(),Fst=oh();Gue.exports=function(t,r){var n=Hue.getFromId(t,r.xaxis||"x"),i=Hue.getFromId(t,r.yaxis||"y"),a,o,s,l,u,f,c={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",c),s=i.makeCalcdata(r,"y"),l=jue(r,i,"y",s),u=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y",c),s=n.makeCalcdata(r,"x"),l=jue(r,n,"x",s),u=!!r.xperiodalignment,f="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v{"use strict";var zst=Nr(),Nst=gt();function Ost(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var l=s.transform;if(l){l.scale=a&&l.hide?0:i/l.fontSize;var u=zst.select(this).select("text");Nst.setTransormAndDisplay(u,l)}})}}function Bst(e,t,r){if(r.uniformtext.mode){var n=Xue(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a{"use strict";var Hst=dn(),jst=ls(),Jue=gt().isArrayOrTypedArray;zg.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};zg.coerceNumber=function(e,t,r){if(Hst(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&ti;if(!a)return t}return r!==void 0?r:e.dflt};zg.coerceColor=function(e,t,r){return jst(t).isValid()?t:r!==void 0?r:e.dflt};zg.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};zg.getValue=function(e,t){var r;return Jue(e)?t{"use strict";var Cw=Nr(),Vst=qr(),Ew=ln(),$ue=gt(),Kue=zr(),Que=xl().resizeText,yP=ov(),Yst=yP.textfont,Gst=yP.insidetextfont,Wst=yP.outsidetextfont,Zs=Hk();function Xst(e){var t=Cw.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");Que(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&Cw.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=Cw.select(this),o=i[0].trace;efe(a,o,e)}),Kue.getComponentMethod("errorbars","style")(t)}function efe(e,t,r){Ew.pointStyle(e.selectAll("path"),t,r),tfe(e,t,r)}function tfe(e,t,r){e.selectAll("text").each(function(n){var i=Cw.select(this),a=$ue.ensureUniformFontSize(r,rfe(i,n,t,r));Ew.font(i,a)})}function Zst(e,t,r){var n=t[0].trace;n.selectedpoints?Jst(r,n,e):(efe(r,n,e),Kue.getComponentMethod("errorbars","style")(r))}function Jst(e,t,r){Ew.selectedPointStyle(e.selectAll("path"),t),$st(e.selectAll("text"),t,r)}function $st(e,t,r){e.each(function(n){var i=Cw.select(this),a;if(n.selected){a=$ue.ensureUniformFontSize(r,rfe(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),Ew.font(i,a)}else Ew.selectedTextStyle(i,t)})}function rfe(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=ofe(t,r);a=ife(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=afe(r,t.i,i));return a}function nfe(e,t,r){return xP(Yst,e.textfont,t,r)}function ife(e,t,r,n){var i=nfe(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:Vst.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),xP(Gst,e.insidetextfont,t,i)}function afe(e,t,r){var n=nfe(e,t,r);return xP(Wst,e.outsidetextfont,t,n)}function xP(e,t,r,n){t=t||{};var i=Zs.getValue(t.family,r),a=Zs.getValue(t.size,r),o=Zs.getValue(t.color,r),s=Zs.getValue(t.weight,r),l=Zs.getValue(t.style,r),u=Zs.getValue(t.variant,r),f=Zs.getValue(t.textcase,r),c=Zs.getValue(t.lineposition,r),h=Zs.getValue(t.shadow,r);return{family:Zs.coerceString(e.family,i,n.family),size:Zs.coerceNumber(e.size,a,n.size),color:Zs.coerceColor(e.color,o,n.color),weight:Zs.coerceString(e.weight,s,n.weight),style:Zs.coerceString(e.style,l,n.style),variant:Zs.coerceString(e.variant,u,n.variant),textcase:Zs.coerceString(e.variant,f,n.textcase),lineposition:Zs.coerceString(e.variant,c,n.lineposition),shadow:Zs.coerceString(e.variant,h,n.shadow)}}function ofe(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}sfe.exports={style:Xst,styleTextPoints:tfe,styleOnSelect:Zst,getInsideTextFont:ife,getOutsideTextFont:afe,getBarColor:ofe,resizeText:Que}});var Og=J((Nqt,pfe)=>{"use strict";var jk=Nr(),Vk=dn(),Es=gt(),Kst=ca(),Qst=qr(),q0=ln(),elt=zr(),Yk=nn().tickText,lfe=xl(),tlt=lfe.recordMinTextSize,rlt=lfe.clearMinTextSize,bP=mc(),Ly=Hk(),nlt=qg(),ufe=ov(),ilt=ufe.text,alt=ufe.textposition,olt=Qf().appendArrayPointValue,Bl=nlt.TEXTPAD;function slt(e){return e.id}function llt(e){if(e.ids)return slt}function wP(e){return(e>0)-(e<0)}function sv(e,t){return e0}function flt(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},rlt("bar",l));var f=Es.makeTraceGroups(n,r,"trace bars").each(function(c){var h=jk.select(this),d=c[0].trace,v=c[0].t,m=d.type==="waterfall",b=d.type==="funnel",g=d.type==="histogram",_=d.type==="bar",T=_||b,w=0;m&&d.connector.visible&&d.connector.mode==="between"&&(w=d.connector.line.width/2);var k=d.orientation==="h",x=cfe(i),M=Es.ensureSingle(h,"g","points"),A=llt(d),p=M.selectAll("g.point").data(Es.identity,A);p.enter().append("g").classed("point",!0),p.exit().remove(),p.each(function(y,E){var C=jk.select(this),L=ult(y,o,s,k),R=L[0][0],I=L[0][1],P=L[1][0],D=L[1][1],q=(k?I-R:D-P)===0;q&&T&&Ly.getLineWidth(d,y)&&(q=!1),q||(q=!Vk(R)||!Vk(I)||!Vk(P)||!Vk(D)),y.isBlank=q,q&&(k?I=R:D=P),w&&!q&&(k?(R-=sv(R,I)*w,I+=sv(R,I)*w):(P-=sv(P,D)*w,D+=sv(P,D)*w));var N,U;if(d.type==="waterfall"){if(!q){var G=d[y.dir].marker;N=G.line.width,U=G.color}}else N=Ly.getLineWidth(d,y),U=y.mc||d.marker.color;function ee(ce){var Ee=jk.round(N/2%1,2);return i.gap===0&&i.groupgap===0?jk.round(Math.round(ce)-Ee,2):ce}function Q(ce,Ee,Ae){return Ae&&ce===Ee?ce:Math.abs(ce-Ee)>=2?ee(ce):ce>Ee?Math.ceil(ce):Math.floor(ce)}var j=Qst.opacity(U),O=j<1||N>.01?ee:Q;e._context.staticPlot||(R=O(R,I,k),I=O(I,R,k),P=O(P,D,!k),D=O(D,P,!k));var Z=k?o.c2p:s.c2p,K;y.s0>0?K=y._sMax:y.s0<0?K=y._sMin:K=y.s1>0?y._sMax:y._sMin;function $(ce,Ee){if(!ce)return 0;var Ae=Math.abs(k?D-P:I-R),Pe=Math.abs(k?I-R:D-P),He=O(Math.abs(Z(K,!0)-Z(0,!0))),Fe=y.hasB?Math.min(Ae/2,Pe/2):Math.min(Ae/2,He),ke;if(Ee==="%"){var Ue=Math.min(50,ce);ke=Ae*(Ue/100)}else ke=ce;return O(Math.max(Math.min(ke,Fe),0))}var oe=_||g?$(v.cornerradiusvalue,v.cornerradiusform):0,te,V,ne="M"+R+","+P+"V"+D+"H"+I+"V"+P+"Z",W=0;if(oe&&y.s){var fe=wP(y.s0)===0||wP(y.s)===wP(y.s0)?y.s1:y.s0;if(W=O(y.hasB?0:Math.abs(Z(K,!0)-Z(fe,!0))),W0?Math.sqrt(W*(2*oe-W)):0,Ie=ge>0?Math.max:Math.min;te="M"+R+","+P+"V"+(D-pe*Ce)+"H"+Ie(I-(oe-W)*ge,R)+"A "+oe+","+oe+" 0 0 "+Ne+" "+I+","+(D-oe*Ce-me)+"V"+(P+oe*Ce+me)+"A "+oe+","+oe+" 0 0 "+Ne+" "+Ie(I-(oe-W)*ge,R)+","+(P+pe*Ce)+"Z"}else if(y.hasB)te="M"+(R+oe*ge)+","+P+"A "+oe+","+oe+" 0 0 "+Ne+" "+R+","+(P+oe*Ce)+"V"+(D-oe*Ce)+"A "+oe+","+oe+" 0 0 "+Ne+" "+(R+oe*ge)+","+D+"H"+(I-oe*ge)+"A "+oe+","+oe+" 0 0 "+Ne+" "+I+","+(D-oe*Ce)+"V"+(P+oe*Ce)+"A "+oe+","+oe+" 0 0 "+Ne+" "+(I-oe*ge)+","+P+"Z";else{V=Math.abs(D-P)+W;var Re=V0?Math.sqrt(W*(2*oe-W)):0,Be=Ce>0?Math.max:Math.min;te="M"+(R+Re*ge)+","+P+"V"+Be(D-(oe-W)*Ce,P)+"A "+oe+","+oe+" 0 0 "+Ne+" "+(R+oe*ge-ze)+","+D+"H"+(I-oe*ge+ze)+"A "+oe+","+oe+" 0 0 "+Ne+" "+(I-Re*ge)+","+Be(D-(oe-W)*Ce,P)+"V"+P+"Z"}}else te=ne}else te=ne;var tt=ffe(Es.ensureSingle(C,"path"),l,i,a);if(tt.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((I-R)*(D-P))||q&&e._context.staticPlot?"M0,0Z":te).call(q0.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&x){var rt=q0.makePointStyleFns(d);q0.singlePointStyle(y,tt,d,rt,e)}clt(e,t,C,c,E,R,I,P,D,oe,W,i,a),t.layerClipId&&q0.hideOutsideRangePoint(y,C.select("text"),o,s,d.xcalendar,d.ycalendar)});var S=d.cliponaxis===!1;q0.setClipUrl(h,S?null:t.layerClipId,e)});elt.getComponentMethod("errorbars","plot")(e,f,t,i)}function clt(e,t,r,n,i,a,o,s,l,u,f,c,h){var d=t.xaxis,v=t.yaxis,m=e._fullLayout,b;function g(V,ne,W){var fe=Es.ensureSingle(V,"text").text(ne).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(q0.font,W).call(Kst.convertToTspans,e);return fe}var _=n[0].trace,T=_.orientation==="h",w=dlt(m,n,i,d,v);b=plt(_,i);var k=c.mode==="stack"||c.mode==="relative",x=n[i],M=!k||x._outmost,A=x.hasB,p=u&&u-f>Bl;if(!w||b==="none"||(x.isBlank||a===o||s===l)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var S=m.font,y=bP.getBarColor(n[i],_),E=bP.getInsideTextFont(_,i,S,y),C=bP.getOutsideTextFont(_,i,S),L=_.insidetextanchor||"end",R=r.datum();T?d.type==="log"&&R.s0<=0&&(d.range[0]0&&ee>0,O;p?A?O=Ng(D-2*u,q,G,ee,T)||Ng(D,q-2*u,G,ee,T):T?O=Ng(D-(u-f),q,G,ee,T)||Ng(D,q-2*(u-f),G,ee,T):O=Ng(D,q-(u-f),G,ee,T)||Ng(D-2*(u-f),q,G,ee,T):O=Ng(D,q,G,ee,T),j&&O?b="inside":(b="outside",N.remove(),N=null)}else b="inside";if(!N){Q=Es.ensureUniformFontSize(e,b==="outside"?C:E),N=g(r,w,Q);var Z=N.attr("transform");if(N.attr("transform",""),U=q0.bBox(N.node()),G=U.width,ee=U.height,N.attr("transform",Z),G<=0||ee<=0){N.remove();return}}var K=_.textangle,$,oe;b==="outside"?(oe=_.constraintext==="both"||_.constraintext==="outside",$=vlt(a,o,s,l,U,{isHorizontal:T,constrained:oe,angle:K})):(oe=_.constraintext==="both"||_.constraintext==="inside",$=dfe(a,o,s,l,U,{isHorizontal:T,constrained:oe,angle:K,anchor:L,hasB:A,r:u,overhead:f})),$.fontSize=Q.size,tlt(_.type==="histogram"?"bar":_.type,$,m),x.transform=$;var te=ffe(N,m,c,h);Es.setTransormAndDisplay(te,$)}function Ng(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function hfe(e){return e==="auto"?0:e}function vfe(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function dfe(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,f=u==="end",c=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,m=a.hasB,b=a.r,g=a.overhead,_=i.width,T=i.height,w=Math.abs(t-e),k=Math.abs(n-r),x=w>2*Bl&&k>2*Bl?Bl:0;w-=2*x,k-=2*x;var M=hfe(l);l==="auto"&&!(_<=w&&T<=k)&&(_>w||T>k)&&(!(_>k||T>w)||_Bl){var y=hlt(e,t,r,n,A,b,g,o,m);p=y.scale,S=y.pad}else p=1,s&&(p=Math.min(1,w/A.x,k/A.y)),S=0;var E=i.left*v+i.right*d,C=(i.top+i.bottom)/2,L=(e+Bl)*v+(t-Bl)*d,R=(r+n)/2,I=0,P=0;if(c||f){var D=(o?A.x:A.y)/2;b&&(f||m)&&(x+=S);var q=o?sv(e,t):sv(r,n);o?c?(L=e+q*x,I=-q*D):(L=t-q*x,I=q*D):c?(R=r+q*x,P=-q*D):(R=n-q*x,P=q*D)}return{textX:E,textY:C,targetX:L,targetY:R,anchorX:I,anchorY:P,scale:p,rotate:M}}function hlt(e,t,r,n,i,a,o,s,l){var u=Math.max(0,Math.abs(t-e)-2*Bl),f=Math.max(0,Math.abs(n-r)-2*Bl),c=a-Bl,h=o?c-Math.sqrt(c*c-(c-o)*(c-o)):c,d=l?c*2:s?c-o:2*h,v=l?c*2:s?2*h:c-o,m,b,g,_,T;return i.y/i.x>=f/(u-d)?_=f/i.y:i.y/i.x<=(f-v)/u?_=u/i.x:!l&&s?(m=i.x*i.x+i.y*i.y/4,b=-2*i.x*(u-c)-i.y*(f/2-c),g=(u-c)*(u-c)+(f/2-c)*(f/2-c)-c*c,_=(-b+Math.sqrt(b*b-4*m*g))/(2*m)):l?(m=(i.x*i.x+i.y*i.y)/4,b=-i.x*(u/2-c)-i.y*(f/2-c),g=(u/2-c)*(u/2-c)+(f/2-c)*(f/2-c)-c*c,_=(-b+Math.sqrt(b*b-4*m*g))/(2*m)):(m=i.x*i.x/4+i.y*i.y,b=-i.x*(u/2-c)-2*i.y*(f-c),g=(u/2-c)*(u/2-c)+(f-c)*(f-c)-c*c,_=(-b+Math.sqrt(b*b-4*m*g))/(2*m)),_=Math.min(1,_),s?T=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(f-i.y*_)/2)*(c-(f-i.y*_)/2)))-o):T=Math.max(0,c-Math.sqrt(Math.max(0,c*c-(c-(u-i.x*_)/2)*(c-(u-i.x*_)/2)))-o),{scale:_,pad:T}}function vlt(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=i.width,f=i.height,c=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Bl?Bl:0:d=c>2*Bl?Bl:0;var v=1;s&&(v=o?Math.min(1,h/f):Math.min(1,c/u));var m=hfe(l),b=vfe(i,m),g=(o?b.x:b.y)/2,_=(i.left+i.right)/2,T=(i.top+i.bottom)/2,w=(e+t)/2,k=(r+n)/2,x=0,M=0,A=o?sv(t,e):sv(r,n);return o?(w=t-A*d,x=A*g):(k=n+A*d,M=-A*g),{textX:_,textY:T,targetX:w,targetY:k,anchorX:x,anchorY:M,scale:v,rotate:m}}function dlt(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=glt(e,t,r,n,i):a.textinfo?s=mlt(t,r,n,i):s=Ly.getValue(a.text,r),Ly.coerceString(ilt,s)}function plt(e,t){var r=Ly.getValue(e.textposition,t);return Ly.coerceEnumerated(alt,r)}function glt(e,t,r,n,i){var a=t[0].trace,o=Es.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",f=a.orientation==="h",c,h,d,v;f?(c="y",h=i,d="x",v=n):(c="x",h=n,d="y",v=i);function m(x){return Yk(h,h.c2l(x),!0).text}function b(x){return Yk(v,v.c2l(x),!0).text}var g=t[r],_={};_.label=g.p,_.labelLabel=_[c+"Label"]=m(g.p);var T=Es.castOption(a,g.i,"text");(T===0||T)&&(_.text=T),_.value=g.s,_.valueLabel=_[d+"Label"]=b(g.s);var w={};olt(w,a,g.i),(s||w.x===void 0)&&(w.x=f?_.value:_.label),(s||w.y===void 0)&&(w.y=f?_.label:_.value),(s||w.xLabel===void 0)&&(w.xLabel=f?_.valueLabel:_.labelLabel),(s||w.yLabel===void 0)&&(w.yLabel=f?_.labelLabel:_.valueLabel),l&&(_.delta=+g.rawS||g.s,_.deltaLabel=b(_.delta),_.final=g.v,_.finalLabel=b(_.final),_.initial=_.final-_.delta,_.initialLabel=b(_.initial)),u&&(_.value=g.s,_.valueLabel=b(_.value),_.percentInitial=g.begR,_.percentInitialLabel=Es.formatPercent(g.begR),_.percentPrevious=g.difR,_.percentPreviousLabel=Es.formatPercent(g.difR),_.percentTotal=g.sumR,_.percenTotalLabel=Es.formatPercent(g.sumR));var k=Es.castOption(a,g.i,"customdata");return k&&(_.customdata=k),Es.texttemplateString(o,_,e._d3locale,w,_,a._meta||{})}function mlt(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function l(k){var x=a?n:r;return Yk(x,k,!0).text}function u(k){var x=a?r:n;return Yk(x,+k,!0).text}var f=i.textinfo,c=e[t],h=f.split("+"),d=[],v,m=function(k){return h.indexOf(k)!==-1};if(m("label")&&d.push(l(e[t].p)),m("text")&&(v=Es.castOption(i,c.i,"text"),(v===0||v)&&d.push(v)),o){var b=+c.rawS||c.s,g=c.v,_=g-b;m("initial")&&d.push(u(_)),m("delta")&&d.push(u(b)),m("final")&&d.push(u(g))}if(s){m("value")&&d.push(u(c.s));var T=0;m("percent initial")&&T++,m("percent previous")&&T++,m("percent total")&&T++;var w=T>1;m("percent initial")&&(v=Es.formatPercent(c.begR),w&&(v+=" of initial"),d.push(v)),m("percent previous")&&(v=Es.formatPercent(c.difR),w&&(v+=" of previous"),d.push(v)),m("percent total")&&(v=Es.formatPercent(c.sumR),w&&(v+=" of total"),d.push(v))}return d.join("
")}pfe.exports={plot:flt,toMoveInsideBar:dfe}});var Dy=J((Oqt,xfe)=>{"use strict";var Lw=go(),ylt=zr(),gfe=qr(),xlt=gt().fillText,blt=Hk().getLineWidth,_P=nn().hoverLabelText,wlt=oi().BADNUM;function _lt(e,t,r,n,i){var a=mfe(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=yfe(s,l),ylt.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function mfe(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",f=e.maxHoverDistance,c=e.maxSpikeDistance,h,d,v,m,b,g,_;o.orientation==="h"?(h=r,d=t,v="y",m="x",b=R,g=E):(h=t,d=r,v="x",m="y",g=R,b=E);var T=o[v+"period"],w=l||T;function k(O){return M(O,-1)}function x(O){return M(O,1)}function M(O,Z){var K=O.w;return O[v]+Z*K/2}function A(O){return O[v+"End"]-O[v+"Start"]}var p=l?k:T?function(O){return O.p-A(O)/2}:function(O){return Math.min(k(O),O.p-s.bardelta/2)},S=l?x:T?function(O){return O.p+A(O)/2}:function(O){return Math.max(x(O),O.p+s.bardelta/2)};function y(O,Z,K){return i.finiteRange&&(K=0),Lw.inbox(O-h,Z-h,K+Math.min(1,Math.abs(Z-O)/_)-1)}function E(O){return y(p(O),S(O),f)}function C(O){return y(k(O),x(O),c)}function L(O){var Z=O[m];if(u){var K=Math.abs(O.rawS)||0;d>0?Z+=K:d<0&&(Z-=K)}return Z}function R(O){var Z=d,K=O.b,$=L(O);return Lw.inbox(K-Z,$-Z,f+($-Z)/($-K)-1)}function I(O){var Z=d,K=O.b,$=L(O);return Lw.inbox(K-Z,$-Z,c+($-Z)/($-K)-1)}var P=e[v+"a"],D=e[m+"a"];_=Math.abs(P.r2c(P.range[1])-P.r2c(P.range[0]));function q(O){return(b(O)+g(O))/2}var N=Lw.getDistanceFunction(n,b,g,q);if(Lw.getClosest(a,N,e),e.index!==!1&&a[e.index].p!==wlt){w||(p=function(O){return Math.min(k(O),O.p-s.bargroupwidth/2)},S=function(O){return Math.max(x(O),O.p+s.bargroupwidth/2)});var U=e.index,G=a[U],ee=o.base?G.b+G.s:G.s;e[m+"0"]=e[m+"1"]=D.c2p(G[m],!0),e[m+"LabelVal"]=ee;var Q=s.extents[s.extents.round(G.p)];e[v+"0"]=P.c2p(l?p(G):Q[0],!0),e[v+"1"]=P.c2p(l?S(G):Q[1],!0);var j=G.orig_p!==void 0;return e[v+"LabelVal"]=j?G.orig_p:G.p,e.labelLabel=_P(P,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=_P(D,e[m+"LabelVal"],o[m+"hoverformat"]),e.baseLabel=_P(D,G.b,o[m+"hoverformat"]),e.spikeDistance=(I(G)+C(G))/2,e[v+"Spike"]=P.c2p(G.p,!0),xlt(G,o,e),e.hovertemplate=o.hovertemplate,e}}function yfe(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=blt(e,t);if(gfe.opacity(r))return r;if(gfe.opacity(n)&&i)return n}xfe.exports={hoverPoints:_lt,hoverOnBars:mfe,getTraceColor:yfe}});var wfe=J((Bqt,bfe)=>{"use strict";bfe.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var Ry=J((Uqt,_fe)=>{"use strict";_fe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],f;if(r===!1)for(f=0;f{"use strict";Tfe.exports={attributes:ov(),layoutAttributes:Ok(),supplyDefaults:Pf().supplyDefaults,crossTraceDefaults:Pf().crossTraceDefaults,supplyLayoutDefaults:mP(),calc:Wue(),crossTraceCalc:kg().crossTraceCalc,colorbar:pc(),arraysToCalcdata:Sw(),plot:Og().plot,style:mc().style,styleOnSelect:mc().styleOnSelect,hoverPoints:Dy().hoverPoints,eventData:wfe(),selectPoints:Ry(),moduleType:"trace",name:"bar",basePlotModule:gs(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{description:["The data visualized by the span of the bars is set in `y`","if `orientation` is set to *v* (the default)","and the labels are set in `x`.","By setting `orientation` to *h*, the roles are interchanged."].join(" ")}}});var kfe=J((jqt,Mfe)=>{"use strict";Mfe.exports=Afe()});var Dw=J((Vqt,Lfe)=>{"use strict";var Alt=gg(),yc=ds(),Sfe=ov(),Mlt=Ho(),Cfe=Ga().axisHoverFormat,klt=Jn().hovertemplateAttrs,ld=cn().extendFlat,Py=yc.marker,Efe=Py.line;Lfe.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the y sample data or coordinates.","See overview for more info."].join(" ")},x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the x sample data or coordinates.","See overview for more info."].join(" ")},x0:{valType:"any",editType:"calc+clearAxisTypes",description:["Sets the x coordinate for single-box traces","or the starting coordinate for multi-box traces","set using q1/median/q3.","See overview for more info."].join(" ")},y0:{valType:"any",editType:"calc+clearAxisTypes",description:["Sets the y coordinate for single-box traces","or the starting coordinate for multi-box traces","set using q1/median/q3.","See overview for more info."].join(" ")},dx:{valType:"number",editType:"calc",description:["Sets the x coordinate step for multi-box traces","set using q1/median/q3."].join(" ")},dy:{valType:"number",editType:"calc",description:["Sets the y coordinate step for multi-box traces","set using q1/median/q3."].join(" ")},xperiod:yc.xperiod,yperiod:yc.yperiod,xperiod0:yc.xperiod0,yperiod0:yc.yperiod0,xperiodalignment:yc.xperiodalignment,yperiodalignment:yc.yperiodalignment,xhoverformat:Cfe("x"),yhoverformat:Cfe("y"),name:{valType:"string",editType:"calc+clearAxisTypes",description:["Sets the trace name.","The trace name appears as the legend item and on hover.","For box traces, the name will also be used for the position","coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are","missing and the position axis is categorical"].join(" ")},q1:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the Quartile 1 values.","There should be as many items as the number of boxes desired."].join(" ")},median:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the median values.","There should be as many items as the number of boxes desired."].join(" ")},q3:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the Quartile 3 values.","There should be as many items as the number of boxes desired."].join(" ")},lowerfence:{valType:"data_array",editType:"calc",description:["Sets the lower fence values.","There should be as many items as the number of boxes desired.","This attribute has effect only under the q1/median/q3 signature.","If `lowerfence` is not provided but a sample (in `y` or `x`) is set,","we compute the lower as the last sample point below 1.5 times the IQR."].join(" ")},upperfence:{valType:"data_array",editType:"calc",description:["Sets the upper fence values.","There should be as many items as the number of boxes desired.","This attribute has effect only under the q1/median/q3 signature.","If `upperfence` is not provided but a sample (in `y` or `x`) is set,","we compute the upper as the last sample point above 1.5 times the IQR."].join(" ")},notched:{valType:"boolean",editType:"calc",description:["Determines whether or not notches are drawn.","Notches displays a confidence interval around the median.","We compute the confidence interval as median +/- 1.57 * IQR / sqrt(N),","where IQR is the interquartile range and N is the sample size.","If two boxes' notches do not overlap there is 95% confidence their medians differ.","See https://sites.google.com/site/davidsstatistics/home/notched-box-plots for more info.","Defaults to *false* unless `notchwidth` or `notchspan` is set."].join(" ")},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc",description:["Sets the width of the notches relative to","the box' width.","For example, with 0, the notches are as wide as the box(es)."].join(" ")},notchspan:{valType:"data_array",editType:"calc",description:["Sets the notch span from the boxes' `median` values.","There should be as many items as the number of boxes desired.","This attribute has effect only under the q1/median/q3 signature.","If `notchspan` is not provided but a sample (in `y` or `x`) is set,","we compute it as 1.57 * IQR / sqrt(N),","where N is the sample size."].join(" ")},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc",description:["If *outliers*, only the sample points lying outside the whiskers","are shown","If *suspectedoutliers*, the outlier points are shown and","points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1","are highlighted (see `outliercolor`)","If *all*, all sample points are shown","If *false*, only the box(es) are shown with no sample points","Defaults to *suspectedoutliers* when `marker.outliercolor` or","`marker.line.outliercolor` is set.","Defaults to *all* under the q1/median/q3 signature.","Otherwise defaults to *outliers*."].join(" ")},jitter:{valType:"number",min:0,max:1,editType:"calc",description:["Sets the amount of jitter in the sample points drawn.","If *0*, the sample points align along the distribution axis.","If *1*, the sample points are drawn in a random jitter of width","equal to the width of the box(es)."].join(" ")},pointpos:{valType:"number",min:-2,max:2,editType:"calc",description:["Sets the position of the sample points in relation to the box(es).","If *0*, the sample points are places over the center of the box(es).","Positive (negative) values correspond to positions to the","right (left) for vertical boxes and above (below) for horizontal boxes"].join(" ")},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1,description:["Scales the box size when sizemode=sd","Allowing boxes to be drawn across any stddev range","For example 1-stddev, 3-stddev, 5-stddev"].join(" ")},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles",description:["Sets the upper and lower bound for the boxes","quartiles means box is drawn between Q1 and Q3","SD means the box is drawn between Mean +- Standard Deviation","Argument sdmultiple (default 1) to scale the box size","So it could be drawn 1-stddev, 3-stddev etc"].join(" ")},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc",description:["If *true*, the mean of the box(es)' underlying distribution is","drawn as a dashed line inside the box(es).","If *sd* the standard deviation is also drawn.","Defaults to *true* when `mean` is set.","Defaults to *sd* when `sd` is set","Otherwise defaults to *false*."].join(" ")},mean:{valType:"data_array",editType:"calc",description:["Sets the mean values.","There should be as many items as the number of boxes desired.","This attribute has effect only under the q1/median/q3 signature.","If `mean` is not provided but a sample (in `y` or `x`) is set,","we compute the mean for each box using the sample values."].join(" ")},sd:{valType:"data_array",editType:"calc",description:["Sets the standard deviation values.","There should be as many items as the number of boxes desired.","This attribute has effect only under the q1/median/q3 signature.","If `sd` is not provided but a sample (in `y` or `x`) is set,","we compute the standard deviation for each box using the sample values."].join(" ")},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes",description:["Sets the orientation of the box(es).","If *v* (*h*), the distribution is visualized along","the vertical (horizontal)."].join(" ")},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc",description:["Sets the method used to compute the sample's Q1 and Q3 quartiles.","The *linear* method uses the 25th percentile for Q1 and 75th percentile for Q3","as computed using method #10 (listed on http://jse.amstat.org/v14n3/langford.html).","The *exclusive* method uses the median to divide the ordered dataset into two halves","if the sample is odd, it does not include the median in either half -","Q1 is then the median of the lower half and","Q3 the median of the upper half.","The *inclusive* method also uses the median to divide the ordered dataset into two halves","but if the sample is odd, it includes the median in both halves -","Q1 is then the median of the lower half and","Q3 the median of the upper half."].join(" ")},width:{valType:"number",min:0,dflt:0,editType:"calc",description:["Sets the width of the box in data coordinate","If *0* (default value) the width is automatically selected based on the positions","of other box traces in the same subplot."].join(" ")},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style",description:"Sets the color of the outlier sample points."},symbol:ld({},Py.symbol,{arrayOk:!1,editType:"plot"}),opacity:ld({},Py.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:ld({},Py.angle,{arrayOk:!1,editType:"calc"}),size:ld({},Py.size,{arrayOk:!1,editType:"calc"}),color:ld({},Py.color,{arrayOk:!1,editType:"style"}),line:{color:ld({},Efe.color,{arrayOk:!1,dflt:Mlt.defaultLine,editType:"style"}),width:ld({},Efe.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style",description:["Sets the border line color of the outlier sample points.","Defaults to marker.color"].join(" ")},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style",description:["Sets the border line width (in px) of the outlier sample points."].join(" ")},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style",description:"Sets the color of line bounding the box(es)."},width:{valType:"number",min:0,dflt:2,editType:"style",description:"Sets the width (in px) of line bounding the box(es)."},editType:"plot"},fillcolor:Alt(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc",description:["Sets the width of the whiskers relative to","the box' width.","For example, with 1, the whiskers are as wide as the box(es)."].join(" ")},showwhiskers:{valType:"boolean",editType:"calc",description:["Determines whether or not whiskers are visible.","Defaults to true for `sizemode` *quartiles*, false for *sd*."].join(" ")},offsetgroup:Sfe.offsetgroup,alignmentgroup:Sfe.alignmentgroup,selected:{marker:yc.selected.marker,editType:"style"},unselected:{marker:yc.unselected.marker,editType:"style"},text:ld({},yc.text,{description:["Sets the text elements associated with each sample value.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (x,y) coordinates.","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")}),hovertext:ld({},yc.hovertext,{description:"Same as `text`."}),hovertemplate:klt({description:["N.B. This only has an effect when hovering on points."].join(" ")}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style",description:["Do the hover effects highlight individual boxes ","or sample points or both?"].join(" ")},zorder:yc.zorder}});var Rw=J((Yqt,Dfe)=>{"use strict";Dfe.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc",description:["Determines how boxes at the same location coordinate","are displayed on the graph.","If *group*, the boxes are plotted next to one another","centered around the shared location.","If *overlay*, the boxes are plotted over one another,","you might need to set *opacity* to see them multiple boxes.","Has no effect on traces that have *width* set."].join(" ")},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc",description:["Sets the gap (in plot fraction) between boxes of","adjacent location coordinates.","Has no effect on traces that have *width* set."].join(" ")},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc",description:["Sets the gap (in plot fraction) between boxes of","the same location coordinate.","Has no effect on traces that have *width* set."].join(" ")}}});var Iw=J((Gqt,qfe)=>{"use strict";var xc=gt(),Slt=zr(),Clt=qr(),Elt=nv(),Llt=Tg(),Rfe=V1(),Pw=Dw();function Dlt(e,t,r,n){function i(v,m){return xc.coerce(e,t,Pw,v,m)}if(Pfe(e,t,i,n),t.visible!==!1){Elt(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",Clt.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),l=i("sd");s&&s.length&&(o=!0,l&&l.length&&(o="sd"))}i("whiskerwidth");var u=i("sizemode"),f;u==="quartiles"&&(f=i("boxmean",o)),i("showwhiskers",u==="quartiles"),(u==="sd"||f==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var c=!1;if(a){var h=i("notchspan");h&&h.length&&(c=!0)}else xc.validate(e.notchwidth,Pw.notchwidth)&&(c=!0);var d=i("notched",c);d&&i("notchwidth"),Ife(e,t,i,{prefix:"box"}),i("zorder")}}function Pfe(e,t,r,n){function i(S){var y=0;return S&&S.length&&(y+=1,xc.isArrayOrTypedArray(S[0])&&S[0].length&&(y+=1)),y}function a(S){return xc.validate(e[S],Pw[S])}var o=r("y"),s=r("x"),l;if(t.type==="box"){var u=r("q1"),f=r("median"),c=r("q3");t._hasPreCompStats=u&&u.length&&f&&f.length&&c&&c.length,l=Math.min(xc.minRowLength(u),xc.minRowLength(f),xc.minRowLength(c))}var h=i(o),d=i(s),v=h&&xc.minRowLength(o),m=d&&xc.minRowLength(s),b=n.calendar,g={autotypenumbers:n.autotypenumbers},_,T;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var w=a("x0")||a("dx"),k=a("y0")||a("dy");k&&!w?_="h":_="v",T=l;break;case"10":_="v",T=Math.min(l,m);break;case"20":_="h",T=Math.min(l,s.length);break;case"01":_="h",T=Math.min(l,v);break;case"02":_="v",T=Math.min(l,o.length);break;case"12":_="v",T=Math.min(l,m,o.length);break;case"21":_="h",T=Math.min(l,s.length,v);break;case"11":T=0;break;case"22":var x=!1,M;for(M=0;M0?(_="v",d>0?T=Math.min(m,v):T=Math.min(v)):d>0?(_="h",T=Math.min(m)):T=0;if(!T){t.visible=!1;return}t._length=T;var A=r("orientation",_);t._hasPreCompStats?A==="v"&&d===0?(r("x0",0),r("dx",1)):A==="h"&&h===0&&(r("y0",0),r("dy",1)):A==="v"&&d===0?r("x0"):A==="h"&&h===0&&r("y0");var p=Slt.getComponentMethod("calendars","handleTraceDefaults");p(e,t,["x","y"],n)}function Ife(e,t,r,n){var i=n.prefix,a=xc.coerce2(e,t,Pw,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var l=r(i+"points",s);l?(r("jitter",l==="all"?.3:0),r("pointpos",l==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),l==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var u=r("hoveron");(u==="all"||u.indexOf("points")!==-1)&&r("hovertemplate"),xc.coerceSelectionMarkerOpacity(t,r)}function Rlt(e,t){var r,n;function i(s){return xc.coerce(n._input,n,Pw,s)}for(var a=0;a{"use strict";var Plt=zr(),Ilt=gt(),qlt=Rw();function Ffe(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s{"use strict";var AP=dn(),Wk=nn(),zlt=iv(),mo=gt(),If=oi().BADNUM,ud=mo._;Gfe.exports=function(t,r){var n=t._fullLayout,i=Wk.getFromId(t,r.xaxis||"x"),a=Wk.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",l,u,f,c,h,d,v;r.orientation==="h"?(f=i,c="x",h=a,d="y",v=!!r.yperiodalignment):(f=a,c="y",h=i,d="x",v=!!r.xperiodalignment);var m=Nlt(r,d,h,n[s]),b=m[0],g=m[1],_=mo.distinctVals(b,h),T=_.vals,w=_.minDiff/2,k,x,M,A,p,S,y=(r.boxpoints||r.points)==="all"?mo.identity:function(Ne){return Ne.vk.uf};if(r._hasPreCompStats){var E=r[c],C=function(Ne){return f.d2c((r[Ne]||[])[l])},L=1/0,R=-1/0;for(l=0;l=k.q1&&k.q3>=k.med){var P=C("lowerfence");k.lf=P!==If&&P<=k.q1?P:Ufe(k,M,A);var D=C("upperfence");k.uf=D!==If&&D>=k.q3?D:Hfe(k,M,A);var q=C("mean");k.mean=q!==If?q:A?mo.mean(M,A):(k.q1+k.q3)/2;var N=C("sd");k.sd=q!==If&&N>=0?N:A?mo.stdev(M,A,k.mean):k.q3-k.q1,k.lo=jfe(k),k.uo=Vfe(k);var U=C("notchspan");U=U!==If&&U>0?U:Yfe(k,A),k.ln=k.med-U,k.un=k.med+U;var G=k.lf,ee=k.uf;r.boxpoints&&M.length&&(G=Math.min(G,M[0]),ee=Math.max(ee,M[A-1])),r.notched&&(G=Math.min(G,k.ln),ee=Math.max(ee,k.un)),k.min=G,k.max=ee}else{mo.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+k.q1,"median = "+k.med,"q3 = "+k.q3].join(` +`));var Q;k.med!==If?Q=k.med:k.q1!==If?k.q3!==If?Q=(k.q1+k.q3)/2:Q=k.q1:k.q3!==If?Q=k.q3:Q=0,k.med=Q,k.q1=k.q3=Q,k.lf=k.uf=Q,k.mean=k.sd=Q,k.ln=k.un=Q,k.min=k.max=Q}L=Math.min(L,k.min),R=Math.max(R,k.max),k.pts2=x.filter(y),o.push(k)}}r._extremes[f._id]=Wk.findExtremes(f,[L,R],{padded:!0})}else{var j=f.makeCalcdata(r,c),O=Olt(T,w),Z=T.length,K=Blt(Z);for(l=0;l=0&&$0){if(k={},k.pos=k[d]=T[l],x=k.pts=K[l].sort(Ofe),M=k[c]=x.map(Bfe),A=M.length,k.min=M[0],k.max=M[A-1],k.mean=mo.mean(M,A),k.sd=mo.stdev(M,A,k.mean)*r.sdmultiple,k.med=mo.interp(M,.5),A%2&&(ne||W)){var fe,ge;ne?(fe=M.slice(0,A/2),ge=M.slice(A/2+1)):W&&(fe=M.slice(0,A/2+1),ge=M.slice(A/2)),k.q1=mo.interp(fe,.5),k.q3=mo.interp(ge,.5)}else k.q1=mo.interp(M,.25),k.q3=mo.interp(M,.75);k.lf=Ufe(k,M,A),k.uf=Hfe(k,M,A),k.lo=jfe(k),k.uo=Vfe(k);var Ce=Yfe(k,A);k.ln=k.med-Ce,k.un=k.med+Ce,oe=Math.min(oe,k.ln),te=Math.max(te,k.un),k.pts2=x.filter(y),o.push(k)}r.notched&&mo.isTypedArray(j)&&(j=Array.from(j)),r._extremes[f._id]=Wk.findExtremes(f,r.notched?j.concat([oe,te]):j,{padded:!0})}return Ult(o,r),o.length>0?(o[0].t={num:n[s],dPos:w,posLetter:d,valLetter:c,labels:{med:ud(t,"median:"),min:ud(t,"min:"),q1:ud(t,"q1:"),q3:ud(t,"q3:"),max:ud(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?ud(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):ud(t,"mean:"),lf:ud(t,"lower fence:"),uf:ud(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function Nlt(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),l=zlt(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||AP(e.name)&&["linear","log"].indexOf(r.type)!==-1||mo.isDateTime(e.name)&&r.type==="date")?u=e.name:u=n;for(var f=r.type==="multicategory"?r.r2c_just_indices(u):r.d2c(u,0,e[t+"calendar"]),c=e._length,h=new Array(c),d=0;d{"use strict";var Wfe=nn(),Hlt=gt(),jlt=_0().getAxisGroup,Xfe=["v","h"];function Vlt(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a1,_=1-a[e+"gap"],T=1-a[e+"groupgap"];for(l=0;l0;if(M==="positive"?(D=A*(x?1:.5),U=N,q=U=S):M==="negative"?(D=U=S,q=A*(x?1:.5),G=N):(D=q=A,U=G=N),K){var $=w.pointpos,oe=w.jitter,te=w.marker.size/2,V=0;$+oe>=0&&(V=N*($+oe),V>D?(Z=!0,j=te,ee=V):V>U&&(j=te,ee=D)),V<=D&&(ee=D);var ne=0;$-oe<=0&&(ne=-N*($-oe),ne>q?(Z=!0,O=te,Q=ne):ne>G&&(O=te,Q=q)),ne<=q&&(Q=q)}else ee=D,Q=q;var W=new Array(f.length);for(u=0;u{"use strict";var Iy=Nr(),Bg=gt(),Ylt=ln(),$fe=5,Glt=.01;function Wlt(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;Bg.makeTraceGroups(n,r,"trace boxes").each(function(s){var l=Iy.select(this),u=s[0],f=u.t,c=u.trace;if(f.wdPos=f.bdPos*c.whiskerwidth,c.visible!==!0||f.empty){l.remove();return}var h,d;c.orientation==="h"?(h=o,d=a):(h=a,d=o),Kfe(l,{pos:h,val:d},c,f,i),Qfe(l,{x:a,y:o},c,f),ece(l,{pos:h,val:d},c,f)})}function Kfe(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,f=n.wdPos||0,c=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,m=v?1-2*r.notchwidth:1,b,g;Array.isArray(n.bdPos)?(b=n.bdPos[0],g=n.bdPos[1]):(b=n.bdPos,g=n.bdPos);var _=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?Bg.identity:[]);_.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),_.exit().remove(),_.each(function(T){if(T.empty)return Iy.select(this).attr("d","M0,0Z");var w=s.c2l(T.pos+u,!0),k=s.l2p(w-b)+c,x=s.l2p(w+g)+c,M=l?(k+x)/2:s.l2p(w)+c,A=r.whiskerwidth,p=l?k*A+(1-A)*M:s.l2p(w-f)+c,S=l?x*A+(1-A)*M:s.l2p(w+f)+c,y=s.l2p(w-b*m)+c,E=s.l2p(w+g*m)+c,C=r.sizemode==="sd",L=o.c2p(C?T.mean-T.sd:T.q1,!0),R=C?o.c2p(T.mean+T.sd,!0):o.c2p(T.q3,!0),I=Bg.constrain(C?o.c2p(T.mean,!0):o.c2p(T.med,!0),Math.min(L,R)+1,Math.max(L,R)-1),P=T.lf===void 0||r.boxpoints===!1||C,D=o.c2p(P?T.min:T.lf,!0),q=o.c2p(P?T.max:T.uf,!0),N=o.c2p(T.ln,!0),U=o.c2p(T.un,!0);a?Iy.select(this).attr("d","M"+I+","+y+"V"+E+"M"+L+","+k+"V"+x+(v?"H"+N+"L"+I+","+E+"L"+U+","+x:"")+"H"+R+"V"+k+(v?"H"+U+"L"+I+","+y+"L"+N+","+k:"")+"Z"+(d?"M"+L+","+M+"H"+D+"M"+R+","+M+"H"+q+(h===0?"":"M"+D+","+p+"V"+S+"M"+q+","+p+"V"+S):"")):Iy.select(this).attr("d","M"+y+","+I+"H"+E+"M"+k+","+L+"H"+x+(v?"V"+N+"L"+E+","+I+"L"+x+","+U:"")+"V"+R+"H"+k+(v?"V"+U+"L"+y+","+I+"L"+k+","+N:"")+"Z"+(d?"M"+M+","+L+"V"+D+"M"+M+","+R+"V"+q+(h===0?"":"M"+p+","+D+"H"+S+"M"+p+","+q+"H"+S):""))})}function Qfe(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;Bg.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},f=e.selectAll("g.points").data(l?u:[]);f.enter().append("g").attr("class","points"),f.exit().remove();var c=f.selectAll("path").data(function(h){var d,v=h.pts2,m=Math.max((h.max-h.min)/10,h.q3-h.q1),b=m*1e-9,g=m*Glt,_=[],T=0,w;if(r.jitter){if(m===0)for(T=1,_=new Array(v.length),d=0;dh.lo&&(S.so=!0)}return v});c.enter().append("path").classed("point",!0),c.exit().remove(),c.call(Ylt.translatePoints,i,a)}function ece(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,f,c;Array.isArray(n.bdPos)?(f=n.bdPos[0],c=n.bdPos[1]):(f=n.bdPos,c=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?Bg.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var v=a.c2l(d.pos+s,!0),m=a.l2p(v-f)+l,b=a.l2p(v+c)+l,g=o?(m+b)/2:a.l2p(v)+l,_=i.c2p(d.mean,!0),T=i.c2p(d.mean-d.sd,!0),w=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?Iy.select(this).attr("d","M"+_+","+m+"V"+b+(u==="sd"?"m0,0L"+T+","+g+"L"+_+","+m+"L"+w+","+g+"Z":"")):Iy.select(this).attr("d","M"+m+","+_+"H"+b+(u==="sd"?"m0,0L"+g+","+T+"L"+m+","+_+"L"+g+","+w+"Z":""))})}tce.exports={plot:Wlt,plotBoxAndWhiskers:Kfe,plotPoints:Qfe,plotBoxMean:ece}});var Jk=J(($qt,rce)=>{"use strict";var kP=Nr(),SP=qr(),CP=ln();function Xlt(e,t,r){var n=r||kP.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=kP.select(this),o=i[0].trace,s=o.line.width;function l(c,h,d,v){c.style("stroke-width",h+"px").call(SP.stroke,d).call(SP.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(c){if(!c.empty){var h=kP.select(this),d=o[c.dir];l(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!c.selected?.3:1)}});else{l(u,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(SP.stroke,o.line.color);var f=a.selectAll("path.point");CP.pointStyle(f,o,e)}})}function Zlt(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?CP.selectedPointStyle(i,n):CP.pointStyle(i,n,e)}rce.exports={style:Xlt,styleOnSelect:Zlt}});var LP=J((Kqt,oce)=>{"use strict";var Jlt=nn(),EP=gt(),F0=go(),nce=qr(),$lt=EP.fillText;function Klt(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(ice(e,t,r,n))),o.indexOf("points")!==-1&&(l=ace(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function ice(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",f,c,h,d,v,m,b,g,_,T,w,k=l.bdPos,x,M,A=l.wHover,p=function(te){return h.c2l(te.pos)+l.bPos-h.c2l(m)};u&&s.side!=="both"?(s.side==="positive"&&(_=function(te){var V=p(te);return F0.inbox(V,V+A,T)},x=k,M=0),s.side==="negative"&&(_=function(te){var V=p(te);return F0.inbox(V-A,V,T)},x=0,M=k)):(_=function(te){var V=p(te);return F0.inbox(V-A,V+A,T)},x=M=k);var S;u?S=function(te){return F0.inbox(te.span[0]-v,te.span[1]-v,T)}:S=function(te){return F0.inbox(te.min-v,te.max-v,T)},s.orientation==="h"?(v=t,m=r,b=S,g=_,f="y",h=o,c="x",d=a):(v=r,m=t,b=_,g=S,f="x",h=a,c="y",d=o);var y=Math.min(1,k/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));T=e.maxHoverDistance-y,w=e.maxSpikeDistance-y;function E(te){return(b(te)+g(te))/2}var C=F0.getDistanceFunction(n,b,g,E);if(F0.getClosest(i,C,e),e.index===!1)return[];var L=i[e.index],R=s.line.color,I=(s.marker||{}).color;nce.opacity(R)&&s.line.width?e.color=R:nce.opacity(I)&&s.boxpoints?e.color=I:e.color=s.fillcolor,e[f+"0"]=h.c2p(L.pos+l.bPos-M,!0),e[f+"1"]=h.c2p(L.pos+l.bPos+x,!0),e[f+"LabelVal"]=L.orig_p!==void 0?L.orig_p:L.pos;var P=f+"Spike";e.spikeDistance=E(L)*w/T,e[P]=h.c2p(L.pos,!0);var D=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,q=s.boxpoints||s.points,N=q&&D?["max","uf","q3","med","mean","q1","lf","min"]:q&&!D?["max","uf","q3","med","q1","lf","min"]:!q&&D?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],U=d.range[1]{"use strict";sce.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var DP=J((e7t,uce)=>{"use strict";uce.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s{"use strict";fce.exports={attributes:Dw(),layoutAttributes:Rw(),supplyDefaults:Iw().supplyDefaults,crossTraceDefaults:Iw().crossTraceDefaults,supplyLayoutDefaults:Gk().supplyLayoutDefaults,calc:MP(),crossTraceCalc:Xk().crossTraceCalc,plot:Zk().plot,style:Jk().style,styleOnSelect:Jk().styleOnSelect,hoverPoints:LP().hoverPoints,eventData:lce(),selectPoints:DP(),moduleType:"trace",name:"box",basePlotModule:gs(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{description:["Each box spans from quartile 1 (Q1) to quartile 3 (Q3).","The second quartile (Q2, i.e. the median) is marked by a line inside the box.","The fences grow outward from the boxes' edges,","by default they span +/- 1.5 times the interquartile range (IQR: Q3-Q1),","The sample mean and standard deviation as well as notches and","the sample, outlier and suspected outliers points can be optionally","added to the box plot.","The values and positions corresponding to each boxes can be input","using two signatures.","The first signature expects users to supply the sample values in the `y`","data array for vertical boxes (`x` for horizontal boxes).","By supplying an `x` (`y`) array, one box per distinct `x` (`y`) value is drawn","If no `x` (`y`) {array} is provided, a single box is drawn.","In this case, the box is positioned with the trace `name` or with `x0` (`y0`) if provided.","The second signature expects users to supply the boxes corresponding Q1, median and Q3","statistics in the `q1`, `median` and `q3` data arrays respectively.","Other box features relying on statistics namely `lowerfence`, `upperfence`, `notchspan`","can be set directly by the users.","To have plotly compute them or to show sample points besides the boxes,","users can set the `y` data array for vertical boxes (`x` for horizontal boxes)","to a 2D array with the outer length corresponding","to the number of boxes in the traces and the inner length corresponding the sample size."].join(" ")}}});var vce=J((r7t,hce)=>{"use strict";hce.exports=cce()});var Ug=J((n7t,dce)=>{"use strict";var qf=ds(),Qlt=Qi(),eut=xa(),RP=Ga().axisHoverFormat,tut=Jn().hovertemplateAttrs,rut=Jn().texttemplateAttrs,nut=Da(),Wu=cn().extendFlat;dce.exports=Wu({z:{valType:"data_array",editType:"calc",description:"Sets the z data."},x:Wu({},qf.x,{impliedEdits:{xtype:"array"}}),x0:Wu({},qf.x0,{impliedEdits:{xtype:"scaled"}}),dx:Wu({},qf.dx,{impliedEdits:{xtype:"scaled"}}),y:Wu({},qf.y,{impliedEdits:{ytype:"array"}}),y0:Wu({},qf.y0,{impliedEdits:{ytype:"scaled"}}),dy:Wu({},qf.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Wu({},qf.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Wu({},qf.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Wu({},qf.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Wu({},qf.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Wu({},qf.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Wu({},qf.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc",description:"Sets the text elements associated with each z value."},hovertext:{valType:"data_array",editType:"calc",description:"Same as `text`."},transpose:{valType:"boolean",dflt:!1,editType:"calc",description:"Transposes the z data."},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes",description:["If *array*, the heatmap's x coordinates are given by *x*","(the default behavior when `x` is provided).","If *scaled*, the heatmap's x coordinates are given by *x0* and *dx*","(the default behavior when `x` is not provided)."].join(" ")},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes",description:["If *array*, the heatmap's y coordinates are given by *y*","(the default behavior when `y` is provided)","If *scaled*, the heatmap's y coordinates are given by *y0* and *dy*","(the default behavior when `y` is not provided)"].join(" ")},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc",description:["Picks a smoothing algorithm use to smooth `z` data."].join(" ")},hoverongaps:{valType:"boolean",dflt:!0,editType:"none",description:["Determines whether or not gaps","(i.e. {nan} or missing values)","in the `z` data have hover labels associated with them."].join(" ")},connectgaps:{valType:"boolean",editType:"calc",description:["Determines whether or not gaps","(i.e. {nan} or missing values)","in the `z` data are filled in.","It is defaulted to true if `z` is a","one dimensional array and `zsmooth` is not false;","otherwise it is defaulted to false."].join(" ")},xgap:{valType:"number",dflt:0,min:0,editType:"plot",description:"Sets the horizontal gap (in pixels) between bricks."},ygap:{valType:"number",dflt:0,min:0,editType:"plot",description:"Sets the vertical gap (in pixels) between bricks."},xhoverformat:RP("x"),yhoverformat:RP("y"),zhoverformat:RP("z",1),hovertemplate:tut(),texttemplate:rut({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:eut({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style",description:"Sets the text font."}),showlegend:Wu({},Qlt.showlegend,{dflt:!1}),zorder:qf.zorder},{transforms:void 0},nut("",{cLetter:"z",autoColorDflt:!1}))});var qw=J((i7t,gce)=>{"use strict";var iut=dn(),$k=gt(),aut=zr();gce.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var l,u;if(s===void 0||!s.length)return 0;if($k.isArray1D(s)){l=n(a),u=n(o);var f=$k.minRowLength(l),c=$k.minRowLength(u);if(f===0||c===0)return 0;r._length=Math.min(f,c,s.length)}else{if(l=pce(a,n),u=pce(o,n),!out(s))return 0;n("transpose"),r._length=null}if(t.type==="heatmapgl")return!0;var h=aut.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function pce(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function out(e){for(var t=!0,r=!1,n=!1,i,a=0;a0&&(r=!0);for(var o=0;o{"use strict";var mce=gt();yce.exports=function(t,r){t("texttemplate");var n=mce.extendFlat({},r.font,{color:"auto",size:"auto"});mce.coerceFont(t,"textfont",n)}});var PP=J((o7t,xce)=>{"use strict";xce.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var _ce=J((s7t,wce)=>{"use strict";var bce=gt(),sut=qw(),lut=Fw(),uut=nv(),fut=PP(),cut=vl(),hut=Ug();wce.exports=function(t,r,n,i){function a(s,l){return bce.coerce(t,r,hut,s,l)}var o=sut(t,r,a,i);if(!o){r.visible=!1;return}uut(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),lut(a,i),fut(t,r,a,i),a("hoverongaps"),a("connectgaps",bce.isArray1D(r.z)&&r.zsmooth!==!1),cut(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var IP=J((l7t,Tce)=>{"use strict";var qy=dn();Tce.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return qy(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return qy(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(qy(i))if(i=Number(i),qy(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(qy(i))if(i=Number(i),qy(r[e])){if(r[e]{"use strict";Ace.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i{"use strict";Mce.exports=function(t,r){for(var n=t.length,i=0,a=0;a{"use strict";var Fy=oi(),Hg=Fy.ONEAVGYEAR,kce=Fy.ONEAVGMONTH,Qk=Fy.ONEDAY,Sce=Fy.ONEHOUR,Cce=Fy.ONEMIN,Ece=Fy.ONESEC,Lce=nn().tickIncrement;Pce.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,l=t-s,u=n[0],f=n[1],c=Math.min(Kk(u+s,u+l,i,a),Kk(f+s,f+l,i,a)),h=Math.min(Kk(u+o,u+s,i,a),Kk(f+o,f+s,i,a)),d,v;if(c>h&&hQk){var m=d===Hg?1:6,b=d===Hg?"M12":"M1";return function(g,_){var T=i.c2d(g,Hg,a),w=T.indexOf("-",m);w>0&&(T=T.substr(0,w));var k=i.d2c(T,0,a);if(kEce?e>Qk?e>Hg*1.1?Hg:e>kce*1.1?kce:Qk:e>Sce?Sce:e>Cce?Cce:Ece:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function vut(e,t,r,n,i,a){if(n&&e>Qk){var o=Rce(t,i,a),s=Rce(r,i,a),l=e===Hg?0:1;return o[l]!==s[l]}return Math.floor(r/e)-Math.floor(t/e)>.1}function Rce(e,t,r){var n=t.c2d(e,Hg,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var BP=J((h7t,Fce)=>{"use strict";var NP=dn(),Ul=gt(),Ice=zr(),bc=nn(),dut=Sw(),qce=IP(),put=qP(),gut=FP(),mut=zP();function yut(e,t){var r=[],n=[],i=t.orientation==="h",a=bc.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,f,c=OP(e,t,a,o),h=c[0],d=c[1],v=typeof h.size=="string",m=[],b=v?m:h,g=[],_=[],T=[],w=0,k=t.histnorm,x=t.histfunc,M=k.indexOf("density")!==-1,A,p,S;u.enabled&&M&&(k=k.replace(/ ?density$/,""),M=!1);var y=x==="max"||x==="min",E=y?null:0,C=qce.count,L=put[k],R=!1,I=function(V){return a.r2c(V,0,l)},P;for(Ul.isArrayOrTypedArray(t[s])&&x!=="count"&&(P=t[s],R=x==="avg",C=qce[x]),f=I(h.start),p=I(h.end)+(f-bc.tickIncrement(f,h.size,!1,l))/1e6;f=0&&S=$;f--)if(n[f]){oe=f;break}for(f=$;f<=oe;f++)if(NP(r[f])&&NP(n[f])){var te={p:r[f],s:n[f],b:0};u.enabled||(te.pts=T[f],U?te.ph0=te.ph1=T[f].length?d[T[f][0]]:r[f]:(t._computePh=!0,te.ph0=O(m[f]),te.ph1=O(m[f+1],!0))),K.push(te)}return K.length===1&&(K[0].width1=bc.tickIncrement(K[0].p,h.size,!1,l)-K[0].p),dut(K,t),Ul.isArrayOrTypedArray(t.selectedpoints)&&Ul.tagSelected(K,t,Q),K}function OP(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],l=o._histogramBinOpts[s],u=o.barmode==="overlay",f,c,h,d,v,m,b,g=function(j){return r.r2c(j,0,d)},_=function(j){return r.c2r(j,0,d)},T=r.type==="date"?function(j){return j||j===0?Ul.cleanDate(j,null,d):null}:function(j){return NP(j)?Number(j):null};function w(j,O,Z){O[j+"Found"]?(O[j]=T(O[j]),O[j]===null&&(O[j]=Z[j])):(m[j]=O[j]=Z[j],Ul.nestedProperty(c[0],a+"."+j).set(Z[j]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{c=l.traces;var k=[],x=!0,M=!1,A=!1;for(f=0;f"u"){if(i)return[S,v,!0];S=xut(e,t,r,n,a)}b=h.cumulative||{},b.enabled&&b.currentbin!=="include"&&(b.direction==="decreasing"?S.start=_(bc.tickIncrement(g(S.start),S.size,!0,d)):S.end=_(bc.tickIncrement(g(S.end),S.size,!1,d))),l.size=S.size,l.sizeFound||(m.size=S.size,Ul.nestedProperty(c[0],a+".size").set(S.size)),w("start",l,S),w("end",l,S)}v=t["_"+n+"pos0"],delete t["_"+n+"pos0"];var E=t._input[a]||{},C=Ul.extendFlat({},l),L=l.start,R=r.r2l(E.start),I=R!==void 0;if((l.startFound||I)&&R!==r.r2l(L)){var P=I?R:Ul.aggNums(Math.min,null,v),D={type:r.type==="category"||r.type==="multicategory"?"linear":r.type,r2l:r.r2l,dtick:l.size,tick0:L,calendar:d,range:[P,bc.tickIncrement(P,l.size,!1,d)].map(r.l2r)},q=bc.tickFirst(D);q>r.r2l(P)&&(q=bc.tickIncrement(q,l.size,!0,d)),C.start=r.l2r(q),I||Ul.nestedProperty(t,a+".start").set(C.start)}var N=l.end,U=r.r2l(E.end),G=U!==void 0;if((l.endFound||G)&&U!==r.r2l(N)){var ee=G?U:Ul.aggNums(Math.max,null,v);C.end=r.l2r(ee),G||Ul.nestedProperty(t,a+".start").set(C.end)}var Q="autobin"+n;return t._input[Q]===!1&&(t._input[a]=Ul.extendFlat({},t[a]||{}),delete t._input[Q],delete t[Q]),[C,v]}function xut(e,t,r,n,i){var a=e._fullLayout,o=but(e,t),s=!1,l=1/0,u=[t],f,c,h;for(f=0;f=0;n--)s(n);else if(t==="increasing"){for(n=1;n=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}Fce.exports={calc:yut,calcAllAutoBins:OP}});var Vce=J((v7t,jce)=>{"use strict";var zce=gt(),zy=nn(),Nce=IP(),_ut=qP(),Tut=FP(),Aut=zP(),Oce=BP().calcAllAutoBins;jce.exports=function(t,r){var n=zy.getFromId(t,r.xaxis),i=zy.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(Fe){return n.r2c(Fe,0,a)},l=function(Fe){return i.r2c(Fe,0,o)},u=function(Fe){return n.c2r(Fe,0,a)},f=function(Fe){return i.c2r(Fe,0,o)},c,h,d,v,m=Oce(t,r,n,"x"),b=m[0],g=m[1],_=Oce(t,r,i,"y"),T=_[0],w=_[1],k=r._length;g.length>k&&g.splice(k,g.length-k),w.length>k&&w.splice(k,w.length-k);var x=[],M=[],A=[],p=typeof b.size=="string",S=typeof T.size=="string",y=[],E=[],C=p?y:b,L=S?E:T,R=0,I=[],P=[],D=r.histnorm,q=r.histfunc,N=D.indexOf("density")!==-1,U=q==="max"||q==="min",G=U?null:0,ee=Nce.count,Q=_ut[D],j=!1,O=[],Z=[],K="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";K&&q!=="count"&&(j=q==="avg",ee=Nce[q]);var $=b.size,oe=s(b.start),te=s(b.end)+(oe-zy.tickIncrement(oe,$,!1,a))/1e6;for(c=oe;c=0&&d=0&&v{"use strict";var lv=gt(),Yce=oi().BADNUM,Gce=iv();Wce.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=Gce(t,r,i,l).vals,u=Gce(t,n,a,u).vals;var f=t.text,c=f!==void 0&&lv.isArray1D(f),h=t.hovertext,d=h!==void 0&&lv.isArray1D(h),v,m,b=lv.distinctVals(l),g=b.vals,_=lv.distinctVals(u),T=_.vals,w=[],k,x,M=T.length,A=g.length;for(v=0;v{"use strict";var Mut=dn(),kut=gt(),tS=oi().BADNUM;Xce.exports=function(t,r,n,i){var a,o,s,l,u,f;function c(g){if(Mut(g))return+g}if(r&&r.transpose){for(a=0,u=0;u{"use strict";var Sut=gt(),Zce=.01,Cut=[[-1,0],[1,0],[0,-1],[0,1]];function Eut(e){return .5-.25*Math.min(1,e*.5)}$ce.exports=function(t,r){var n=1,i;for(Jce(t,r),i=0;iZce;i++)n=Jce(t,r,Eut(n));return n>Zce&&Sut.log("interp2d didn't converge quickly",n),t};function Jce(e,t,r){var n=0,i,a,o,s,l,u,f,c,h,d,v,m,b;for(s=0;sm&&(n=Math.max(n,Math.abs(e[a][o]-v)/(b-m))))}return n}});var iS=J((m7t,Kce)=>{"use strict";var Lut=gt().maxRowLength;Kce.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=Lut(t),u,f,c,h,d,v,m,b;for(f=0;f=0;d--)h=i[d],f=h[0],c=h[1],v=((n[[f-1,c]]||s)[2]+(n[[f+1,c]]||s)[2]+(n[[f,c-1]]||s)[2]+(n[[f,c+1]]||s)[2])/20,v&&(m[h]=[f,c,v],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in m)n[h]=m[h],r.push(m[h])}return r.sort(function(g,_){return _[2]-g[2]})}});var HP=J((y7t,ehe)=>{"use strict";var UP=zr(),Qce=gt().isArrayOrTypedArray;ehe.exports=function(t,r,n,i,a,o){var s=[],l=UP.traceIs(t,"contour"),u=UP.traceIs(t,"histogram"),f=UP.traceIs(t,"gl2d"),c,h,d,v=Qce(r)&&r.length>1;if(v&&!u&&o.type!=="category"){var m=r.length;if(m<=a){if(l||f)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],d=1;d{"use strict";var jP=zr(),VP=gt(),aS=nn(),the=iv(),Dut=Vce(),Rut=Uu(),Put=eS(),Iut=rS(),qut=nS(),Fut=iS(),oS=HP(),YP=oi().BADNUM;nhe.exports=function(t,r){var n=aS.getFromId(t,r.xaxis||"x"),i=aS.getFromId(t,r.yaxis||"y"),a=jP.traceIs(r,"contour"),o=jP.traceIs(r,"histogram"),s=jP.traceIs(r,"gl2d"),l=a?"best":r.zsmooth,u,f,c,h,d,v,m,b,g,_,T;if(n._minDtick=0,i._minDtick=0,o)T=Dut(t,r),h=T.orig_x,u=T.x,f=T.x0,c=T.dx,b=T.orig_y,d=T.y,v=T.y0,m=T.dy,g=T.z;else{var w=r.z;VP.isArray1D(w)?(Put(r,n,i,"x","y",["z"]),u=r._x,d=r._y,w=r._z):(h=r.x?n.makeCalcdata(r,"x"):[],b=r.y?i.makeCalcdata(r,"y"):[],u=the(r,n,"x",h).vals,d=the(r,i,"y",b).vals,r._x=u,r._y=d),f=r.x0,c=r.dx,v=r.y0,m=r.dy,g=Iut(w,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(g=zut(u,d,g),o||(u=rhe(u),d=rhe(d),r._x=u,r._y=d)),!o&&(a||r.connectgaps)&&(r._emptypoints=Fut(g),qut(g,r._emptypoints));function k(L){l=r._input.zsmooth=r.zsmooth=!1,VP.warn('cannot use zsmooth: "fast": '+L)}function x(L){if(L.length>1){var R=(L[L.length-1]-L[0])/(L.length-1),I=Math.abs(R/100);for(_=0;_I)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?l==="fast"&&k("log axis found"):x(u)?x(d)?r._islinear=!0:l==="fast"&&k("y scale is not linear"):l==="fast"&&k("x scale is not linear");var M=VP.maxRowLength(g),A=r.xtype==="scaled"?"":u,p=oS(r,A,f,c,M,n),S=r.ytype==="scaled"?"":d,y=oS(r,S,v,m,g.length,i);s||(r._extremes[n._id]=aS.findExtremes(n,p),r._extremes[i._id]=aS.findExtremes(i,y));var E={x:p,y,z:g,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&h&&(E.orig_x=h),r.yperiodalignment&&b&&(E.orig_y=b),A&&A.length===p.length-1&&(E.xCenter=A),S&&S.length===y.length-1&&(E.yCenter=S),o&&(E.xRanges=T.xRanges,E.yRanges=T.yRanges,E.pts=T.pts),a||Rut(t,r,{vals:g,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var C={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};E.xfill=oS(C,A,f,c,M,n),E.yfill=oS(C,S,v,m,g.length,i)}return[E]};function rhe(e){for(var t=[],r=e.length,n=0;n{"use strict";sS.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];sS.STYLE=sS.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var ohe=J((w7t,ahe)=>{"use strict";var ihe=GP(),Nut=ln(),WP=gt(),Ny=null;function Out(){if(Ny!==null)return Ny;Ny=!1;var e=WP.isIE()||WP.isSafari()||WP.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(ihe.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")Ny=t.some(function(o){return r.apply(null,o)});else{var n=Nut.tester.append("image").attr("style",ihe.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;Ny=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return Ny}ahe.exports=Out});var lS=J((_7t,phe)=>{"use strict";var she=Nr(),But=ls(),Uut=zr(),Hut=ln(),jut=nn(),wc=gt(),lhe=ca(),Vut=cR(),Yut=qr(),Gut=Qa().extractOpts,Wut=Qa().makeColorScaleFuncFromTrace,Xut=Gh(),Zut=Vo(),XP=Zut.LINE_SPACING,Jut=ohe(),$ut=GP().STYLE,vhe="heatmap-label";function dhe(e){return e.selectAll("g."+vhe)}function uhe(e){dhe(e).remove()}phe.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;wc.makeTraceGroups(n,r,"hm").each(function(o){var s=she.select(this),l=o[0],u=l.trace,f=u.xgap||0,c=u.ygap||0,h=l.z,d=l.x,v=l.y,m=l.xCenter,b=l.yCenter,g=Uut.traceIs(u,"contour"),_=g?"best":u.zsmooth,T=h.length,w=wc.maxRowLength(h),k=!1,x=!1,M,A,p,S,y,E,C,L;for(E=0;M===void 0&&E0;)A=i.c2p(d[E]),E--;for(A0;)y=a.c2p(v[E]),E--;y=i._length||A<=0||S>=a._length||y<=0;if(q){var N=s.selectAll("image").data([]);N.exit().remove(),uhe(s);return}var U,G;R==="fast"?(U=w,G=T):(U=P,G=D);var ee=document.createElement("canvas");ee.width=U,ee.height=G;var Q=ee.getContext("2d",{willReadFrequently:!0}),j=Wut(u,{noNumericCheck:!0,returnArray:!0}),O,Z;R==="fast"?(O=k?function(An){return w-1-An}:wc.identity,Z=x?function(An){return T-1-An}:wc.identity):(O=function(An){return wc.constrain(Math.round(i.c2p(d[An])-M),0,P)},Z=function(An){return wc.constrain(Math.round(a.c2p(v[An])-S),0,D)});var K=Z(0),$=[K,K],oe=k?0:1,te=x?0:1,V=0,ne=0,W=0,fe=0,ge,Ce,Ne,pe,me;function Ie(An,Ji){if(An!==void 0){var ii=j(An);return ii[0]=Math.round(ii[0]),ii[1]=Math.round(ii[1]),ii[2]=Math.round(ii[2]),V+=Ji,ne+=ii[0]*Ji,W+=ii[1]*Ji,fe+=ii[2]*Ji,ii}return[0,0,0,0]}function Re(An,Ji,ii,bo){var ga=An[ii.bin0];if(ga===void 0)return Ie(void 0,1);var Ia=An[ii.bin1],si=Ji[ii.bin0],aa=Ji[ii.bin1],wo=Ia-ga||0,ma=si-ga||0,oa;return Ia===void 0?aa===void 0?oa=0:si===void 0?oa=2*(aa-ga):oa=(2*aa-si-ga)*2/3:aa===void 0?si===void 0?oa=0:oa=(2*ga-Ia-si)*2/3:si===void 0?oa=(2*aa-Ia-ga)*2/3:oa=aa+ga-Ia-si,Ie(ga+ii.frac*wo+bo.frac*(ma+ii.frac*oa))}if(R!=="default"){var ze=0,Be;try{Be=new Uint8Array(U*G*4)}catch{Be=new Array(U*G*4)}if(R==="smooth"){var tt=m||d,rt=b||v,ce=new Array(tt.length),Ee=new Array(rt.length),Ae=new Array(P),Pe=m?che:fhe,He=b?che:fhe,Fe,ke,Ue;for(E=0;Eft||ft>a._length))for(C=ie;CXt||Xt>i._length)){var St=Vut({x:Ht,y:at},u,e._fullLayout);St.x=Ht,St.y=at;var Vt=l.z[E][C];Vt===void 0?(St.z="",St.zLabel=""):(St.z=Vt,St.zLabel=jut.tickText(Ye,Vt,"hover").text);var er=l.text&&l.text[E]&&l.text[E][C];(er===void 0||er===!1)&&(er=""),St.text=er;var _r=wc.texttemplateString(bt,St,e._fullLayout._d3locale,St,u._meta||{});if(_r){var br=_r.split("
"),or=br.length,tn=0;for(L=0;L{"use strict";ghe.exports={min:"zmin",max:"zmax"}});var uS=J((A7t,mhe)=>{"use strict";var Kut=Nr();mhe.exports=function(t){Kut.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var cS=J((M7t,xhe)=>{"use strict";var yhe=go(),Ow=gt(),fS=Ow.isArrayOrTypedArray,Qut=nn(),eft=Qa().extractOpts;xhe.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],l=s.trace,u=t.xa,f=t.ya,c=s.x,h=s.y,d=s.z,v=s.xCenter,m=s.yCenter,b=s.zmask,g=l.zhoverformat,_=c,T=h,w,k,x,M;if(t.index!==!1){try{x=Math.round(t.index[1]),M=Math.round(t.index[0])}catch{Ow.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(x<0||x>=d[0].length||M<0||M>d.length)return}else{if(yhe.inbox(r-c[0],r-c[c.length-1],0)>0||yhe.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var A;for(_=[2*c[0]-c[1]],A=1;A{"use strict";bhe.exports={attributes:Ug(),supplyDefaults:_ce(),calc:zw(),plot:lS(),colorbar:Nw(),style:uS(),hoverPoints:cS(),moduleType:"trace",name:"heatmap",basePlotModule:gs(),categories:["cartesian","svg","2dMap","showLegend"],meta:{description:["The data that describes the heatmap value-to-color mapping","is set in `z`.","Data in `z` can either be a {2D array} of values (ragged or not)","or a 1D array of values.","In the case where `z` is a {2D array},","say that `z` has N rows and M columns.","Then, by default, the resulting heatmap will have N partitions along","the y axis and M partitions along the x axis.","In other words, the i-th row/ j-th column cell in `z`","is mapped to the i-th partition of the y axis","(starting from the bottom of the plot) and the j-th partition","of the x-axis (starting from the left of the plot).","This behavior can be flipped by using `transpose`.","Moreover, `x` (`y`) can be provided with M or M+1 (N or N+1) elements.","If M (N), then the coordinates correspond to the center of the","heatmap cells and the cells have equal width.","If M+1 (N+1), then the coordinates correspond to the edges of the","heatmap cells.","In the case where `z` is a 1D {array}, the x and y coordinates must be","provided in `x` and `y` respectively to form data triplets."].join(" ")}}});var The=J((S7t,_he)=>{"use strict";_he.exports=whe()});var ZP=J((C7t,Ahe)=>{"use strict";Ahe.exports=function(t,r){return{start:{valType:"any",editType:"calc",description:["Sets the starting value for the",t,"axis bins. Defaults to the minimum data value,","shifted down if necessary to make nice round values","and to remove ambiguous bin edges. For example, if most of the","data is integers we shift the bin edges 0.5 down, so a `size`","of 5 would have a default `start` of -0.5, so it is clear","that 0-4 are in the first bin, 5-9 in the second, but","continuous data gets a start of 0 and bins [0,5), [5,10) etc.","Dates behave similarly, and `start` should be a date string.","For category data, `start` is based on the category serial","numbers, and defaults to -0.5.",r?"If multiple non-overlaying histograms share a subplot, the first explicit `start` is used exactly and all others are shifted down (if necessary) to differ from that one by an integer number of bins.":""].join(" ")},end:{valType:"any",editType:"calc",description:["Sets the end value for the",t,"axis bins. The last bin may not end exactly at this value,","we increment the bin edge by `size` from `start` until we","reach or exceed `end`. Defaults to the maximum data value.","Like `start`, for dates use a date string, and for category","data `end` is based on the category serial numbers."].join(" ")},size:{valType:"any",editType:"calc",description:["Sets the size of each",t,"axis bin.","Default behavior: If `nbins"+t+"` is 0 or omitted,","we choose a nice round bin size such that the number of bins","is about the same as the typical number of samples in each bin.","If `nbins"+t+"` is provided, we choose a nice round","bin size giving no more than that many bins.","For date data, use milliseconds or *M* for months, as in","`axis.dtick`. For category data, the number of categories to","bin together (always defaults to 1).",r?"If multiple non-overlaying histograms share a subplot, the first explicit `size` is used and all others discarded. If no `size` is provided,the sample data from all traces is combined to determine `size` as described above.":""].join(" ")},editType:"calc"}}});var khe=J((E7t,Mhe)=>{"use strict";Mhe.exports={eventDataKeys:["binNumber"]}});var hS=J((L7t,Ehe)=>{"use strict";var fu=ov(),She=Ga().axisHoverFormat,tft=Jn().hovertemplateAttrs,rft=Jn().texttemplateAttrs,JP=xa(),Che=ZP(),nft=khe(),$P=cn().extendFlat;Ehe.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the sample data to be binned on the x axis."].join(" ")},y:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the sample data to be binned on the y axis."].join(" ")},xhoverformat:She("x"),yhoverformat:She("y"),text:$P({},fu.text,{description:["Sets hover text elements associated with each bar.","If a single string, the same string appears over all bars.","If an array of string, the items are mapped in order to the","this trace's coordinates."].join(" ")}),hovertext:$P({},fu.hovertext,{description:"Same as `text`."}),orientation:fu.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc",description:["Specifies the binning function used for this histogram trace.","If *count*, the histogram values are computed by counting the","number of values lying inside each bin.","If *sum*, *avg*, *min*, *max*,","the histogram values are computed using","the sum, the average, the minimum or the maximum","of the values lying inside each bin respectively."].join(" ")},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc",description:["Specifies the type of normalization used for this histogram trace.","If **, the span of each bar corresponds to the number of","occurrences (i.e. the number of data points lying inside the bins).","If *percent* / *probability*, the span of each bar corresponds to","the percentage / fraction of occurrences with respect to the total","number of sample points","(here, the sum of all bin HEIGHTS equals 100% / 1).","If *density*, the span of each bar corresponds to the number of","occurrences in a bin divided by the size of the bin interval","(here, the sum of all bin AREAS equals the","total number of sample points).","If *probability density*, the area of each bar corresponds to the","probability that an event will fall into the corresponding bin","(here, the sum of all bin AREAS equals 1)."].join(" ")},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc",description:["If true, display the cumulative distribution by summing the","binned values. Use the `direction` and `centralbin` attributes","to tune the accumulation method.","Note: in this mode, the *density* `histnorm` settings behave","the same as their equivalents without *density*:","** and *density* both rise to the number of data points, and","*probability* and *probability density* both rise to the","number of sample points."].join(" ")},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc",description:["Only applies if cumulative is enabled.","If *increasing* (default) we sum all prior bins, so the result","increases from left to right. If *decreasing* we sum later bins","so the result decreases from left to right."].join(" ")},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc",description:["Only applies if cumulative is enabled.","Sets whether the current bin is included, excluded, or has half","of its value included in the current cumulative value.","*include* is the default for compatibility with various other","tools, however it introduces a half-bin bias to the results.","*exclude* makes the opposite half-bin bias, and *half* removes","it."].join(" ")},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc",description:["Specifies the maximum number of desired bins. This value will be used","in an algorithm that will decide the optimal bin size such that the","histogram best visualizes the distribution of the data.","Ignored if `xbins.size` is provided."].join(" ")},xbins:Che("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc",description:["Specifies the maximum number of desired bins. This value will be used","in an algorithm that will decide the optimal bin size such that the","histogram best visualizes the distribution of the data.","Ignored if `ybins.size` is provided."].join(" ")},ybins:Che("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc",description:["Obsolete: since v1.42 each bin attribute is auto-determined","separately and `autobinx` is not needed. However, we accept","`autobinx: true` or `false` and will update `xbins` accordingly","before deleting `autobinx` from the trace."].join(" ")},autobiny:{valType:"boolean",dflt:null,editType:"calc",description:["Obsolete: since v1.42 each bin attribute is auto-determined","separately and `autobiny` is not needed. However, we accept","`autobiny: true` or `false` and will update `ybins` accordingly","before deleting `autobiny` from the trace."].join(" ")},bingroup:{valType:"string",dflt:"",editType:"calc",description:["Set a group of histogram traces which will have compatible bin settings.","Note that traces on the same subplot and with the same *orientation*","under `barmode` *stack*, *relative* and *group* are forced into the same bingroup,","Using `bingroup`, traces under `barmode` *overlay* and on different axes","(of the same axis type) can have compatible bin settings.","Note that histogram and histogram2d* trace can share the same `bingroup`"].join(" ")},hovertemplate:tft({},{keys:nft.eventDataKeys}),texttemplate:rft({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:$P({},fu.textposition,{arrayOk:!1}),textfont:JP({arrayOk:!1,editType:"plot",colorEditType:"style",description:"Sets the text font."}),outsidetextfont:JP({arrayOk:!1,editType:"plot",colorEditType:"style",description:"Sets the font used for `text` lying outside the bar."}),insidetextfont:JP({arrayOk:!1,editType:"plot",colorEditType:"style",description:"Sets the font used for `text` lying inside the bar."}),insidetextanchor:fu.insidetextanchor,textangle:fu.textangle,cliponaxis:fu.cliponaxis,constraintext:fu.constraintext,marker:fu.marker,offsetgroup:fu.offsetgroup,alignmentgroup:fu.alignmentgroup,selected:fu.selected,unselected:fu.unselected,_deprecated:{bardir:fu._deprecated.bardir},zorder:fu.zorder}});var Phe=J((D7t,Rhe)=>{"use strict";var Lhe=zr(),Bw=gt(),Dhe=qr(),ift=Pf().handleText,aft=Bk(),oft=hS();Rhe.exports=function(t,r,n,i){function a(_,T){return Bw.coerce(t,r,oft,_,T)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");ift(t,r,i,a,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat");var f=a("orientation",s&&!o?"h":"v"),c=f==="v"?"x":"y",h=f==="v"?"y":"x",d=o&&s?Math.min(Bw.minRowLength(o)&&Bw.minRowLength(s)):Bw.minRowLength(r[c]||[]);if(!d){r.visible=!1;return}r._length=d;var v=Lhe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var m=r[h];m&&a("histfunc"),a("histnorm"),a("autobin"+c),aft(t,r,a,n,i),Bw.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,g=Lhe.getComponentMethod("errorbars","supplyDefaults");g(t,r,b||Dhe.defaultLine,{axis:"y"}),g(t,r,b||Dhe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var dS=J((R7t,Fhe)=>{"use strict";var Uw=gt(),sft=jo(),vS=zr().traceIs,lft=Tg(),uft=Pf().validateCornerradius,Ihe=Uw.nestedProperty,KP=_0().getAxisGroup,qhe=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],fft=["x","y"];Fhe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,f,c,h,d;function v(R,I){return Uw.coerce(s._input,s,s._module.attributes,R,I)}function m(R){return R.orientation==="v"?"x":"y"}function b(R,I){var P=sft.getFromTrace({_fullLayout:r},R,I);return P.type}function g(R,I,P){var D=R.uid+"__"+P;I||(I=D);var q=b(R,P),N=R[P+"calendar"]||"",U=n[I],G=!0;U&&(q===U.axType&&N===U.calendar?(G=!1,U.traces.push(R),U.dirs.push(P)):(I=D,q!==U.axType&&Uw.warn(["Attempted to group the bins of trace",R.index,"set on a","type:"+q,"axis","with bins on","type:"+U.axType,"axis."].join(" ")),N!==U.calendar&&Uw.warn(["Attempted to group the bins of trace",R.index,"set with a",N,"calendar","with bins",U.calendar?"on a "+U.calendar+" calendar":"w/o a set calendar"].join(" ")))),G&&(n[I]={traces:[R],dirs:[P],axType:q,calendar:R[P+"calendar"]||""}),R["_"+P+"bingroup"]=I}for(c=0;c{"use strict";var cft=Dy().hoverPoints,hft=nn().hoverLabelText;zhe.exports=function(t,r,n,i,a){var o=cft(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var u=l.orientation==="h"?"y":"x";t[u+"Label"]=hft(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var QP=J((I7t,Ohe)=>{"use strict";Ohe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var l=0;l{"use strict";Bhe.exports={attributes:hS(),layoutAttributes:Ok(),supplyDefaults:Phe(),crossTraceDefaults:dS(),supplyLayoutDefaults:mP(),calc:BP().calc,crossTraceCalc:kg().crossTraceCalc,plot:Og().plot,layerName:"barlayer",style:mc().style,styleOnSelect:mc().styleOnSelect,colorbar:pc(),hoverPoints:Nhe(),selectPoints:Ry(),eventData:QP(),moduleType:"trace",name:"histogram",basePlotModule:gs(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{description:["The sample data from which statistics are computed is set in `x`","for vertically spanning histograms and","in `y` for horizontally spanning histograms.","Binning options are set `xbins` and `ybins` respectively","if no aggregation data is provided."].join(" ")}}});var jhe=J((F7t,Hhe)=>{"use strict";Hhe.exports=Uhe()});var gS=J((z7t,Yhe)=>{"use strict";var ph=hS(),Vhe=ZP(),pS=Ug(),vft=Qi(),eI=Ga().axisHoverFormat,dft=Jn().hovertemplateAttrs,pft=Jn().texttemplateAttrs,gft=Da(),Hw=cn().extendFlat;Yhe.exports=Hw({x:ph.x,y:ph.y,z:{valType:"data_array",editType:"calc",description:"Sets the aggregation data."},marker:{color:{valType:"data_array",editType:"calc",description:"Sets the aggregation data."},editType:"calc"},histnorm:ph.histnorm,histfunc:ph.histfunc,nbinsx:ph.nbinsx,xbins:Vhe("x"),nbinsy:ph.nbinsy,ybins:Vhe("y"),autobinx:ph.autobinx,autobiny:ph.autobiny,bingroup:Hw({},ph.bingroup,{description:["Set the `xbingroup` and `ybingroup` default prefix","For example, setting a `bingroup` of *1* on two histogram2d traces","will make them their x-bins and y-bins match separately."].join(" ")}),xbingroup:Hw({},ph.bingroup,{description:["Set a group of histogram traces which will have compatible x-bin settings.","Using `xbingroup`, histogram2d and histogram2dcontour traces ","(on axes of the same axis type) can have compatible x-bin settings.","Note that the same `xbingroup` value can be used to set (1D) histogram `bingroup`"].join(" ")}),ybingroup:Hw({},ph.bingroup,{description:["Set a group of histogram traces which will have compatible y-bin settings.","Using `ybingroup`, histogram2d and histogram2dcontour traces ","(on axes of the same axis type) can have compatible y-bin settings.","Note that the same `ybingroup` value can be used to set (1D) histogram `bingroup`"].join(" ")}),xgap:pS.xgap,ygap:pS.ygap,zsmooth:pS.zsmooth,xhoverformat:eI("x"),yhoverformat:eI("y"),zhoverformat:eI("z",1),hovertemplate:dft({},{keys:"z"}),texttemplate:pft({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:pS.textfont,showlegend:Hw({},vft.showlegend,{dflt:!1})},gft("",{cLetter:"z",autoColorDflt:!1}))});var tI=J((N7t,Whe)=>{"use strict";var mft=zr(),Ghe=gt();Whe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=Ghe.minRowLength(a),l=Ghe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=mft.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y"],i);var f=n("z")||n("marker.color");f&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var Zhe=J((O7t,Xhe)=>{"use strict";var yft=gt(),xft=tI(),bft=PP(),wft=vl(),_ft=Fw(),Tft=gS();Xhe.exports=function(t,r,n,i){function a(o,s){return yft.coerce(t,r,Tft,o,s)}xft(t,r,a,i),r.visible!==!1&&(bft(t,r,a,i),wft(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),_ft(a,i),a("xhoverformat"),a("yhoverformat"))}});var Khe=J((B7t,$he)=>{"use strict";var Aft=cS(),Jhe=nn().hoverLabelText;$he.exports=function(t,r,n,i,a){var o=Aft(t,r,n,i,a);if(o){t=o[0];var s=t.index,l=s[0],u=s[1],f=t.cd[0],c=f.trace,h=f.xRanges[u],d=f.yRanges[l];return t.xLabel=Jhe(t.xa,[h[0],h[1]],c.xhoverformat),t.yLabel=Jhe(t.ya,[d[0],d[1]],c.yhoverformat),o}}});var eve=J((U7t,Qhe)=>{"use strict";Qhe.exports={attributes:gS(),supplyDefaults:Zhe(),crossTraceDefaults:dS(),calc:zw(),plot:lS(),layerName:"heatmaplayer",colorbar:Nw(),style:uS(),hoverPoints:Khe(),eventData:QP(),moduleType:"trace",name:"histogram2d",basePlotModule:gs(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{hrName:"histogram_2d",description:["The sample data from which statistics are computed is set in `x`","and `y` (where `x` and `y` represent marginal distributions,","binning is set in `xbins` and `ybins` in this case)","or `z` (where `z` represent the 2D distribution and binning set,","binning is set by `x` and `y` in this case).","The resulting distribution is visualized as a heatmap."].join(" ")}}});var rve=J((H7t,tve)=>{"use strict";tve.exports=eve()});var jw=J((j7t,nve)=>{"use strict";nve.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var Vw=J((V7t,uve)=>{"use strict";var yo=Ug(),mS=ds(),sve=Ga(),rI=sve.axisHoverFormat,Mft=sve.descriptionOnlyNumbers,kft=Da(),Sft=Ss().dash,Cft=xa(),Oy=cn().extendFlat,lve=jw(),ive=lve.COMPARISON_OPS2,ave=lve.INTERVAL_OPS,ove=mS.line;uve.exports=Oy({z:yo.z,x:yo.x,x0:yo.x0,dx:yo.dx,y:yo.y,y0:yo.y0,dy:yo.dy,xperiod:yo.xperiod,yperiod:yo.yperiod,xperiod0:mS.xperiod0,yperiod0:mS.yperiod0,xperiodalignment:yo.xperiodalignment,yperiodalignment:yo.yperiodalignment,text:yo.text,hovertext:yo.hovertext,transpose:yo.transpose,xtype:yo.xtype,ytype:yo.ytype,xhoverformat:rI("x"),yhoverformat:rI("y"),zhoverformat:rI("z",1),hovertemplate:yo.hovertemplate,texttemplate:Oy({},yo.texttemplate,{description:["For this trace it only has an effect if `coloring` is set to *heatmap*.",yo.texttemplate.description].join(" ")}),textfont:Oy({},yo.textfont,{description:["For this trace it only has an effect if `coloring` is set to *heatmap*.",yo.textfont.description].join(" ")}),hoverongaps:yo.hoverongaps,connectgaps:Oy({},yo.connectgaps,{description:["Determines whether or not gaps","(i.e. {nan} or missing values)","in the `z` data are filled in.","It is defaulted to true if `z` is a","one dimensional array","otherwise it is defaulted to false."].join(" ")}),fillcolor:{valType:"color",editType:"calc",description:["Sets the fill color if `contours.type` is *constraint*.","Defaults to a half-transparent variant of the line color,","marker color, or marker line color, whichever is available."].join(" ")},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0},description:["Determines whether or not the contour level attributes are","picked by an algorithm.","If *true*, the number of contour levels can be set in `ncontours`.","If *false*, set the contour level attributes in `contours`."].join(" ")},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc",description:["Sets the maximum number of contour levels. The actual number","of contours will be chosen automatically to be less than or","equal to the value of `ncontours`.","Has an effect only if `autocontour` is *true* or if","`contours.size` is missing."].join(" ")},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc",description:["If `levels`, the data is represented as a contour plot with multiple","levels displayed. If `constraint`, the data is represented as constraints","with the invalid region shaded as specified by the `operation` and","`value` parameters."].join(" ")},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1},description:["Sets the starting contour level value.","Must be less than `contours.end`"].join(" ")},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1},description:["Sets the end contour level value.","Must be more than `contours.start`"].join(" ")},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1},description:["Sets the step between each contour level.","Must be positive."].join(" ")},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc",description:["Determines the coloring method showing the contour values.","If *fill*, coloring is done evenly between each contour level","If *heatmap*, a heatmap gradient coloring is applied","between each contour level.","If *lines*, coloring is done on the contour lines.","If *none*, no coloring is applied on this trace."].join(" ")},showlines:{valType:"boolean",dflt:!0,editType:"plot",description:["Determines whether or not the contour lines are drawn.","Has an effect only if `contours.coloring` is set to *fill*."].join(" ")},showlabels:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines whether to label the contour lines with their values."].join(" ")},labelfont:Cft({editType:"plot",colorEditType:"style",description:["Sets the font used for labeling the contour levels.","The default color comes from the lines, if shown.","The default family and size come from `layout.font`."].join(" ")}),labelformat:{valType:"string",dflt:"",editType:"plot",description:Mft("contour label")},operation:{valType:"enumerated",values:[].concat(ive).concat(ave),dflt:"=",editType:"calc",description:["Sets the constraint operation.","*=* keeps regions equal to `value`","*<* and *<=* keep regions less than `value`","*>* and *>=* keep regions greater than `value`","*[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]`","*][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]`","Open vs. closed intervals make no difference to constraint display, but","all versions are allowed for consistency with filter transforms."].join(" ")},value:{valType:"any",dflt:0,editType:"calc",description:["Sets the value or values of the constraint boundary.","When `operation` is set to one of the comparison values","("+ive+")","*value* is expected to be a number.","When `operation` is set to one of the interval values","("+ave+")","*value* is expected to be an array of two numbers where the first","is the lower bound and the second is the upper bound."].join(" ")},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:Oy({},ove.color,{editType:"style+colorbars",description:["Sets the color of the contour level.","Has no effect if `contours.coloring` is set to *lines*."].join(" ")}),width:{valType:"number",min:0,editType:"style+colorbars",description:["Sets the contour line width in (in px)","Defaults to *0.5* when `contours.type` is *levels*.","Defaults to *2* when `contour.type` is *constraint*."].join(" ")},dash:Sft,smoothing:Oy({},ove.smoothing,{description:["Sets the amount of smoothing for the contour lines,","where *0* corresponds to no smoothing."].join(" ")}),editType:"plot"},zorder:mS.zorder},kft("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var iI=J((Y7t,cve)=>{"use strict";var Hl=gS(),fd=Vw(),Eft=Da(),nI=Ga().axisHoverFormat,fve=cn().extendFlat;cve.exports=fve({x:Hl.x,y:Hl.y,z:Hl.z,marker:Hl.marker,histnorm:Hl.histnorm,histfunc:Hl.histfunc,nbinsx:Hl.nbinsx,xbins:Hl.xbins,nbinsy:Hl.nbinsy,ybins:Hl.ybins,autobinx:Hl.autobinx,autobiny:Hl.autobiny,bingroup:Hl.bingroup,xbingroup:Hl.xbingroup,ybingroup:Hl.ybingroup,autocontour:fd.autocontour,ncontours:fd.ncontours,contours:fd.contours,line:{color:fd.line.color,width:fve({},fd.line.width,{dflt:.5,description:"Sets the contour line width in (in px)"}),dash:fd.line.dash,smoothing:fd.line.smoothing,editType:"plot"},xhoverformat:nI("x"),yhoverformat:nI("y"),zhoverformat:nI("z",1),hovertemplate:Hl.hovertemplate,texttemplate:fd.texttemplate,textfont:fd.textfont},Eft("",{cLetter:"z",editTypeOverride:"calc"}))});var yS=J((G7t,hve)=>{"use strict";hve.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,l=n("contours.size"),u;s?u=r.autocontour=!0:u=n("autocontour",!1),(u||!l)&&n("ncontours")}});var aI=J((W7t,vve)=>{"use strict";var Lft=gt();vve.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;Lft.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var xS=J((X7t,dve)=>{"use strict";var Dft=vl(),Rft=aI();dve.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,l="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(l=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,Dft(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),Rft(n,i,l,a)}});var yve=J((Z7t,mve)=>{"use strict";var pve=gt(),Pft=tI(),Ift=yS(),qft=xS(),Fft=Fw(),gve=iI();mve.exports=function(t,r,n,i){function a(s,l){return pve.coerce(t,r,gve,s,l)}function o(s){return pve.coerce2(t,r,gve,s)}Pft(t,r,a,i),r.visible!==!1&&(Ift(t,r,a,o),qft(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),r.contours&&r.contours.coloring==="heatmap"&&Fft(a,i))}});var lI=J((J7t,bve)=>{"use strict";var sI=nn(),oI=gt();bve.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=oI.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=oI.aggNums(Math.max,null,r));var o=xve(i,a,t.ncontours);n.size=o.dtick,n.start=sI.tickFirst(o),o.range.reverse(),n.end=sI.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),oI.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,l=n.end,u=t._input.contours;if(s>l&&(n.start=u.start=l,l=n.end=u.end=s,s=n.start),!(n.size>0)){var f;s===l?f=1:f=xve(s,l,t.ncontours).dtick,u.size=n.size=f}}};function xve(e,t,r){var n={type:"linear",range:[e,t]};return sI.autoTicks(n,(t-e)/(r||15)),n}});var Yw=J(($7t,wve)=>{"use strict";wve.exports=function(t){return t.end+t.size/1e6}});var uI=J((K7t,Tve)=>{"use strict";var _ve=Qa(),zft=zw(),Nft=lI(),Oft=Yw();Tve.exports=function(t,r){var n=zft(t,r),i=n[0].z;Nft(r,i);var a=r.contours,o=_ve.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=Oft(a),f=a.size||1,c=Math.floor((u-l)/f)+1;isFinite(f)||(f=1,c=1);var h=l-f/2,d=h+c*f;s=[h,d]}else s=i;return _ve.calc(t,r,{vals:s,cLetter:"z"}),n}});var Gw=J((Q7t,Ave)=>{"use strict";Ave.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[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]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var fI=J((e9t,Mve)=>{"use strict";var bS=Gw();Mve.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,l,u,f,c,h,d,v;for(s=0;se?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var cI=J((t9t,Cve)=>{"use strict";var wS=gt(),By=Gw();Cve.exports=function(t,r,n){var i,a,o,s,l;for(r=r||.01,n=n||.01,o=0;o20?(o=By.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=By.SADDLEREMAINDER[o]):delete e.crossings[a],s=By.NEWDELTA[o],!s){wS.log("Found bad marching index:",o,t,e.level);break}l.push(Sve(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),Ww(l[l.length-1],l[l.length-2],n,i)&&l.pop();var v=s[0]&&(t[0]<0||t[0]>f-2)||s[1]&&(t[1]<0||t[1]>u-2),m=t[0]===c[0]&&t[1]===c[1]&&s[0]===h[0]&&s[1]===h[1];if(m||r&&v)break;o=e.crossings[a]}d===1e4&&wS.log("Infinite loop in contour?");var b=Ww(l[0],l[l.length-1],n,i),g=0,_=.2*e.smoothing,T=[],w=0,k,x,M,A,p,S,y,E,C,L,R;for(d=1;d=w;d--)if(k=T[d],k=w&&k+T[x]E&&C--,e.edgepaths[C]=R.concat(l,L));break}q||(e.edgepaths[E]=l.concat(L))}for(E=0;E20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:By.BOTTOMSTART.indexOf(e)!==-1?i=1:By.LEFTSTART.indexOf(e)!==-1?n=1:By.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function Sve(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var l=(e.level-a)/(e.z[i][n+1]-a),u=(l!==1?(1-l)*o.c2l(e.x[n]):0)+(l!==0?l*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(u),!0),s.c2p(e.y[i],!0),n+l,i]}else{var f=(e.level-a)/(e.z[i+1][n]-a),c=(f!==1?(1-f)*s.c2l(e.y[i]):0)+(f!==0?f*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(c),!0),n,i+f]}}});var Rve=J((r9t,Dve)=>{"use strict";var hI=jw(),jft=dn();Dve.exports={"[]":Eve("[]"),"][":Eve("]["),">":vI(">"),"<":vI("<"),"=":vI("=")};function Lve(e,t){var r=Array.isArray(t),n;function i(a){return jft(a)?+a:null}return hI.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):hI.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:hI.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function Eve(e){return function(t){t=Lve(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function vI(e){return function(t){return t=Lve(e,t),{start:t,end:1/0,size:1/0}}}});var dI=J((n9t,Ive)=>{"use strict";var Pve=gt(),Vft=Rve(),Yft=Yw();Ive.exports=function(t,r,n){for(var i=t.type==="constraint"?Vft[t._operation](t.value):t,a=i.size,o=[],s=Yft(i),l=n.trace._carpetTrace,u=l?{xaxis:l.aaxis,yaxis:l.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},f=i.start;f1e3){Pve.warn("Too many contours, clipping at 1000",t);break}return o}});var pI=J((i9t,Fve)=>{"use strict";var Uy=gt();Fve.exports=function(e,t){var r,n,i,a=function(l){return l.reverse()},o=function(l){return l};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&Uy.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r{"use strict";zve.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;io.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,u=-1/0,f=1/0;for(i=0;i":c>u&&(r.prefixBoundary=!0);break;case"<":(cu||r.starts.length&&d===f)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(c[0],c[1]),d=Math.max(c[0],c[1]),hu&&(r.prefixBoundary=!0);break}break}}});var _S=J(jl=>{"use strict";var Zw=Nr(),Ls=gt(),cd=ln(),Gft=Qa(),Bve=ca(),Nve=nn(),Ove=Zv(),Wft=lS(),Uve=fI(),Hve=cI(),Xft=dI(),Zft=pI(),jve=gI(),Xw=Gw(),uv=Xw.LABELOPTIMIZER;jl.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;Ls.makeTraceGroups(i,n,"contour").each(function(s){var l=Zw.select(this),u=s[0],f=u.trace,c=u.x,h=u.y,d=f.contours,v=Xft(d,r,u),m=Ls.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),Wft(t,r,b,m),Uve(v),Hve(v);var g=a.c2p(c[0],!0),_=a.c2p(c[c.length-1],!0),T=o.c2p(h[0],!0),w=o.c2p(h[h.length-1],!0),k=[[g,w],[_,w],[_,T],[g,T]],x=v;d.type==="constraint"&&(x=Zft(v,d._operation)),Jft(l,k,d),$ft(l,x,k,d),Kft(l,v,t,u,d),ect(l,r,t,u,k)})};function Jft(e,t,r){var n=Ls.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function $ft(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&jve(t,n);var o=Ls.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+Vve(l,r);u?Zw.select(this).attr("d",u).style("stroke","none"):Zw.select(this).remove()})}function Vve(e,t){var r="",n=0,i=e.edgepaths.map(function(g,_){return _}),a=!0,o,s,l,u,f,c;function h(g){return Math.abs(g[1]-t[0][1])<.01}function d(g){return Math.abs(g[1]-t[2][1])<.01}function v(g){return Math.abs(g[0]-t[0][0])<.01}function m(g){return Math.abs(g[0]-t[2][0])<.01}for(;i.length;){for(c=cd.smoothopen(e.edgepaths[n],e.smoothing),r+=a?c:c.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){Ls.log("Missing end?",n,e);break}for(h(o)&&!m(o)?s=t[1]:v(o)?s=t[0]:d(o)?s=t[3]:m(o)&&(s=t[2]),f=0;f=0&&(s=b,u=f):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,u=f):Ls.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,u>=0)break;r+="L"+s}if(u===e.edgepaths.length){Ls.log("unclosed perimeter path");break}n=u,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;nuv.MAXCOST*2)break;h&&(s/=2),o=u-s/2,l=o+s*1.5}if(c<=uv.MAXCOST)return f};function Qft(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,l=e.theta,u=Math.cos(l)*i,f=Math.sin(l)*i,c=(o>n.center?n.right-o:o-n.left)/(u+Math.abs(Math.sin(l)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(f)+Math.cos(l)*a);if(c<1||h<1)return 1/0;var d=uv.EDGECOST*(1/(c-1)+1/(h-1));d+=uv.ANGLECOST*l*l;for(var v=o-u,m=s-f,b=o+u,g=s+f,_=0;_{"use strict";var rct=Nr(),mI=Qa(),nct=Yw();Yve.exports=function(t){var r=t.contours,n=r.start,i=nct(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=mI.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?mI.flipScale(l.colorscale):l.colorscale,f=u.length,c=new Array(f),h=new Array(f),d,v,m=l.min,b=l.max;if(r.coloring==="heatmap"){for(v=0;v=b)&&(n<=m&&(n=m),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),v=0;vm&&(c.unshift(m),h.unshift(h[0])),c[c.length-1]{"use strict";var TS=Nr(),Gve=ln(),ict=uS(),act=yI();Wve.exports=function(t){var r=TS.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=TS.select(this),a=n[0].trace,o=a.contours,s=a.line,l=o.size||1,u=o.start,f=o.type==="constraint",c=!f&&o.coloring==="lines",h=!f&&o.coloring==="fill",d=c||h?act(a):null;i.selectAll("g.contourlevel").each(function(b){TS.select(this).selectAll("path").call(Gve.lineGroupStyle,s.width,c?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){Gve.font(TS.select(this),{weight:v.weight,style:v.style,variant:v.variant,textcase:v.textcase,lineposition:v.lineposition,shadow:v.shadow,family:v.family,size:v.size,color:v.color||(c?d(b.level):s.color)})}),f)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var m;i.selectAll("g.contourfill path").style("fill",function(b){return m===void 0&&(m=b.level),d(b.level+.5*l)}),m===void 0&&(m=u),i.selectAll("g.contourbg path").style("fill",d(m-.5*l))}}),ict(t)}});var MS=J((u9t,Zve)=>{"use strict";var Xve=Qa(),oct=yI(),sct=Yw();function lct(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=oct(t,{isColorbar:!0});if(o==="heatmap"){var l=Xve.extractOpts(t);r._fillgradient=l.reversescale?Xve.flipScale(l.colorscale):l.colorscale,r._zrange=[l.min,l.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:sct(n),size:a}}Zve.exports={min:"zmin",max:"zmax",calc:lct}});var xI=J((f9t,Jve)=>{"use strict";var kS=qr(),uct=cS();Jve.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=uct(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&kS.opacity(l.fillcolor)?s.color=kS.addOpacity(l.fillcolor,1):l.contours.showlines&&kS.opacity(l.line.color)&&(s.color=kS.addOpacity(l.line.color,1)))}),o}});var Kve=J((c9t,$ve)=>{"use strict";$ve.exports={attributes:iI(),supplyDefaults:yve(),crossTraceDefaults:dS(),calc:uI(),plot:_S().plot,layerName:"contourlayer",style:AS(),colorbar:MS(),hoverPoints:xI(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:gs(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{hrName:"histogram_2d_contour",description:["The sample data from which statistics are computed is set in `x`","and `y` (where `x` and `y` represent marginal distributions,","binning is set in `xbins` and `ybins` in this case)","or `z` (where `z` represent the 2D distribution and binning set,","binning is set by `x` and `y` in this case).","The resulting distribution is visualized as a contour plot."].join(" ")}}});var ede=J((h9t,Qve)=>{"use strict";Qve.exports=Kve()});var bI=J((v9t,ode)=>{"use strict";var tde=dn(),fct=aI(),ide=qr(),rde=ide.addOpacity,cct=ide.opacity,ade=jw(),nde=gt().isArrayOrTypedArray,hct=ade.CONSTRAINT_REDUCTION,vct=ade.COMPARISON_OPS2;ode.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,f,c=n("contours.operation");if(s._operation=hct[c],dct(n,s),c==="="?l=s.showlines=!0:(l=n("contours.showlines"),f=n("fillcolor",rde((t.line||{}).color||a,.5))),l){var h=f&&cct(f)?rde(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),fct(n,i,u,o)};function dct(e,t){var r;vct.indexOf(t.operation)===-1?(e("contours.value",[0,1]),nde(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:tde(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),tde(t.value)||(nde(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var ude=J((d9t,lde)=>{"use strict";var wI=gt(),pct=qw(),gct=nv(),mct=bI(),yct=yS(),xct=xS(),bct=Fw(),sde=Vw();lde.exports=function(t,r,n,i){function a(u,f){return wI.coerce(t,r,sde,u,f)}function o(u){return wI.coerce2(t,r,sde,u)}var s=pct(t,r,a,i);if(!s){r.visible=!1;return}gct(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate");var l=a("contours.type")==="constraint";a("connectgaps",wI.isArray1D(r.z)),l?mct(t,r,a,i,n):(yct(t,r,a,o),xct(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&bct(a,i),a("zorder")}});var cde=J((p9t,fde)=>{"use strict";fde.exports={attributes:Vw(),supplyDefaults:ude(),calc:uI(),plot:_S().plot,style:AS(),colorbar:MS(),hoverPoints:xI(),moduleType:"trace",name:"contour",basePlotModule:gs(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{description:["The data from which contour lines are computed is set in `z`.","Data in `z` must be a {2D array} of numbers.","Say that `z` has N rows and M columns, then by default,","these N rows correspond to N y coordinates","(set in `y` or auto-generated) and the M columns","correspond to M x coordinates (set in `x` or auto-generated).","By setting `transpose` to *true*, the above behavior is flipped."].join(" ")}}});var vde=J((g9t,hde)=>{"use strict";hde.exports=cde()});var _I=J((m9t,pde)=>{"use strict";var wct=Jn().hovertemplateAttrs,_ct=Jn().texttemplateAttrs,Tct=gg(),Ff=ds(),Act=Qi(),dde=Da(),Mct=Ss().dash,z0=cn().extendFlat,_c=Ff.marker,Jw=Ff.line,kct=_c.line;pde.exports={a:{valType:"data_array",editType:"calc",description:["Sets the quantity of component `a` in each data point.","If `a`, `b`, and `c` are all provided, they need not be","normalized, only the relative values matter. If only two","arrays are provided they must be normalized to match","`ternary.sum`."].join(" ")},b:{valType:"data_array",editType:"calc",description:["Sets the quantity of component `a` in each data point.","If `a`, `b`, and `c` are all provided, they need not be","normalized, only the relative values matter. If only two","arrays are provided they must be normalized to match","`ternary.sum`."].join(" ")},c:{valType:"data_array",editType:"calc",description:["Sets the quantity of component `a` in each data point.","If `a`, `b`, and `c` are all provided, they need not be","normalized, only the relative values matter. If only two","arrays are provided they must be normalized to match","`ternary.sum`."].join(" ")},sum:{valType:"number",dflt:0,min:0,editType:"calc",description:["The number each triplet should sum to,","if only two of `a`, `b`, and `c` are provided.","This overrides `ternary.sum` to normalize this specific","trace, but does not affect the values displayed on the axes.","0 (or missing) means to use ternary.sum"].join(" ")},mode:z0({},Ff.mode,{dflt:"markers"}),text:z0({},Ff.text,{description:["Sets text elements associated with each (a,b,c) point.","If a single string, the same string appears over","all the data points.","If an array of strings, the items are mapped in order to the","the data points in (a,b,c).","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")}),texttemplate:_ct({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:z0({},Ff.hovertext,{description:["Sets hover text elements associated with each (a,b,c) point.","If a single string, the same string appears over","all the data points.","If an array of strings, the items are mapped in order to the","the data points in (a,b,c).","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")}),line:{color:Jw.color,width:Jw.width,dash:Mct,backoff:Jw.backoff,shape:z0({},Jw.shape,{values:["linear","spline"]}),smoothing:Jw.smoothing,editType:"calc"},connectgaps:Ff.connectgaps,cliponaxis:Ff.cliponaxis,fill:z0({},Ff.fill,{values:["none","toself","tonext"],dflt:"none",description:["Sets the area to fill with a solid color.","Use with `fillcolor` if not *none*.","scatterternary has a subset of the options available to scatter.","*toself* connects the endpoints of the trace (or each segment","of the trace if it has gaps) into a closed shape.","*tonext* fills the space between two traces if one completely","encloses the other (eg consecutive contour lines), and behaves like","*toself* if there is no trace before it. *tonext* should not be","used if one trace does not enclose the other."].join(" ")}),fillcolor:Tct(),marker:z0({symbol:_c.symbol,opacity:_c.opacity,angle:_c.angle,angleref:_c.angleref,standoff:_c.standoff,maxdisplayed:_c.maxdisplayed,size:_c.size,sizeref:_c.sizeref,sizemin:_c.sizemin,sizemode:_c.sizemode,line:z0({width:kct.width,editType:"calc"},dde("marker.line")),gradient:_c.gradient,editType:"calc"},dde("marker")),textfont:Ff.textfont,textposition:Ff.textposition,selected:Ff.selected,unselected:Ff.unselected,hoverinfo:z0({},Act.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:Ff.hoveron,hovertemplate:wct()}});var xde=J((y9t,yde)=>{"use strict";var gde=gt(),Sct=pg(),Hy=fs(),Cct=bg(),Ect=wg(),mde=nw(),Lct=_g(),Dct=uy(),Rct=_I();yde.exports=function(t,r,n,i){function a(h,d){return gde.coerce(t,r,Rct,h,d)}var o=a("a"),s=a("b"),l=a("c"),u;if(o?(u=o.length,s?(u=Math.min(u,s.length),l&&(u=Math.min(u,l.length))):l?u=Math.min(u,l.length):u=0):s&&l&&(u=Math.min(s.length,l.length)),!u){r.visible=!1;return}r._length=u,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate");var f=u{"use strict";var TI=nn();bde.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=TI.tickText(a.aaxis,t.a,!0).text,i.bLabel=TI.tickText(a.baxis,t.b,!0).text,i.cLabel=TI.tickText(a.caxis,t.c,!0).text,i}});var Mde=J((b9t,Ade)=>{"use strict";var AI=dn(),Pct=Ag(),Ict=nd(),qct=oh(),Fct=Mg().calcMarkerSize,_de=["a","b","c"],Tde={a:["b","c"],b:["a","c"],c:["a","b"]};Ade.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s,l,u,f,c,h;for(s=0;s<_de.length;s++)if(u=_de[s],!o[u]){for(c=o[Tde[u][0]],h=o[Tde[u][1]],f=new Array(c.length),l=0;l{"use strict";var zct=lw();kde.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},l=r.layers.frontplot.select("g.scatterlayer"),u=0;u{"use strict";var Nct=uw();Cde.exports=function(t,r,n,i){var a=Nct(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,f=l-u;return o.x0=Math.max(Math.min(o.x0,f),u),o.x1=Math.max(Math.min(o.x1,f),u),a}var c=o.cd[o.index],h=o.trace,d=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var v={};v[h.subplot]={_subplot:d};var m=h._module.formatLabels(c,h,v);o.aLabel=m.aLabel,o.bLabel=m.bLabel,o.cLabel=m.cLabel;var b=c.hi||h.hoverinfo,g=[];function _(w,k){g.push(w._hovertitle+": "+k)}if(!h.hovertemplate){var T=b.split("+");T.indexOf("all")!==-1&&(T=["a","b","c"]),T.indexOf("a")!==-1&&_(d.aaxis,o.aLabel),T.indexOf("b")!==-1&&_(d.baxis,o.bLabel),T.indexOf("c")!==-1&&_(d.caxis,o.cLabel)}return o.extraText=g.join("
"),o.hovertemplate=h.hovertemplate,a}});var Dde=J((T9t,Lde)=>{"use strict";Lde.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var Hde=J((A9t,Ude)=>{"use strict";var zde=Nr(),Oct=ls(),MI=zr(),hd=gt(),fv=hd.strTranslate,SS=hd._,Vy=qr(),CS=ln(),$w=Zv(),kI=cn().extendFlat,Bct=ea(),N0=nn(),Rde=iu(),Pde=go(),Nde=y0(),Ide=Nde.freeMode,Uct=Nde.rectMode,SI=tg(),Hct=ml().prepSelect,jct=ml().selectOnClick,Vct=ml().clearOutline,Yct=ml().clearSelectionsCache,Ode=Eo();function Bde(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}Ude.exports=Bde;var vd=Bde.prototype;vd.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};vd.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;ajy*u?(g=u,b=g*jy):(b=l,g=b/jy),_=o*b/l,T=s*g/u,v=t.l+t.w*i-b/2,m=t.t+t.h*(1-a)-g/2,r.x0=v,r.y0=m,r.w=b,r.h=g,r.sum=f,r.xaxis={type:"linear",range:[c+2*d-f,f-c-2*h],domain:[i-_/2,i+_/2],_id:"x"},$w(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(L){return L.a>=r.aaxis.range[0]&&L.a<=r.aaxis.range[1]&&L.b>=r.baxis.range[1]&&L.b<=r.baxis.range[0]&&L.c>=r.caxis.range[1]&&L.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[c,f-h-d],domain:[a-T/2,a+T/2],_id:"y"},$w(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var w=r.yaxis.domain[0],k=r.aaxis=kI({},e.aaxis,{range:[c,f-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[w,w+T*jy],anchor:"free",position:0,_id:"y",_length:b});$w(k,r.graphDiv._fullLayout),k.setScale();var x=r.baxis=kI({},e.baxis,{range:[f-c-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});$w(x,r.graphDiv._fullLayout),x.setScale();var M=r.caxis=kI({},e.caxis,{range:[f-c-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[w,w+T*jy],anchor:"free",position:0,_id:"y",_length:b});$w(M,r.graphDiv._fullLayout),M.setScale();var A="M"+v+","+(m+g)+"h"+b+"l-"+b/2+",-"+g+"Z";r.clipDef.select("path").attr("d",A),r.layers.plotbg.select("path").attr("d",A);var p="M0,"+g+"h"+b+"l-"+b/2+",-"+g+"Z";r.clipDefRelative.select("path").attr("d",p);var S=fv(v,m);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",S),r.clipDefRelative.select("path").attr("transform",null);var y=fv(v-x._offset,m+g);r.layers.baxis.attr("transform",y),r.layers.bgrid.attr("transform",y);var E=fv(v+b/2,m)+"rotate(30)"+fv(0,-k._offset);r.layers.aaxis.attr("transform",E),r.layers.agrid.attr("transform",E);var C=fv(v+b/2,m)+"rotate(-30)"+fv(0,-M._offset);r.layers.caxis.attr("transform",C),r.layers.cgrid.attr("transform",C),r.drawAxes(!0),r.layers.aline.select("path").attr("d",k.showline?"M"+v+","+(m+g)+"l"+b/2+",-"+g:"M0,0").call(Vy.stroke,k.linecolor||"#000").style("stroke-width",(k.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",x.showline?"M"+v+","+(m+g)+"h"+b:"M0,0").call(Vy.stroke,x.linecolor||"#000").style("stroke-width",(x.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",M.showline?"M"+(v+b/2)+","+m+"l"+b/2+","+g:"M0,0").call(Vy.stroke,M.linecolor||"#000").style("stroke-width",(M.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),CS.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};vd.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=SI.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title",placeholder:SS(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),i["b-title"]=SI.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title",placeholder:SS(r,"Click to enter Component B title"),attributes:{x:t.x0-u,y:t.y0+t.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),i["c-title"]=SI.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title",placeholder:SS(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+u,y:t.y0+t.h+s.title.font.size*.83+u,"text-anchor":"middle"}})}};vd.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,l=i+"tickLayout",u=Gct(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var f=N0.calcTicks(e),c=N0.clipEnds(e,f),h=N0.makeTransTickFn(e),d=N0.getTickSigns(e)[2],v=hd.deg2rad(s),m=d*(e.linewidth||1)/2,b=d*e.ticklen,g=t.w,_=t.h,T=i==="b"?"M0,"+m+"l"+Math.sin(v)*b+","+Math.cos(v)*b:"M"+m+",0l"+Math.cos(v)*b+","+-Math.sin(v)*b,w={a:"M0,0l"+_+",-"+g/2,b:"M0,0l-"+g/2+",-"+_,c:"M0,0l-"+_+","+g/2}[i];N0.drawTicks(r,e,{vals:e.ticks==="inside"?c:f,layer:o,path:T,transFn:h,crisp:!1}),N0.drawGrid(r,e,{vals:c,layer:t.layers[i+"grid"],path:w,transFn:h,crisp:!1}),N0.drawLabels(r,e,{vals:f,layer:o,transFn:h,labelFns:N0.makeLabelFns(e,0,s)})};function Gct(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var ms=Ode.MINZOOM/2+.87,Wct="m-0.87,.5h"+ms+"v3h-"+(ms+5.2)+"l"+(ms/2+2.6)+",-"+(ms*.87+4.5)+"l2.6,1.5l-"+ms/2+","+ms*.87+"Z",Xct="m0.87,.5h-"+ms+"v3h"+(ms+5.2)+"l-"+(ms/2+2.6)+",-"+(ms*.87+4.5)+"l-2.6,1.5l"+ms/2+","+ms*.87+"Z",Zct="m0,1l"+ms/2+","+ms*.87+"l2.6,-1.5l-"+(ms/2+2.6)+",-"+(ms*.87+4.5)+"l-"+(ms/2+2.6)+","+(ms*.87+4.5)+"l2.6,1.5l"+ms/2+",-"+ms*.87+"Z",Jct="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",qde=!0;vd.clearOutline=function(){Yct(this.dragOptions),Vct(this.dragOptions.gd)};vd.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(y,E,C){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var L=e.dragOptions.dragmode=r._fullLayout.dragmode;Ide(L)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,L==="zoom"?(e.dragOptions.moveFn=x,e.dragOptions.clickFn=g,e.dragOptions.doneFn=M,_(y,E,C)):L==="pan"?(e.dragOptions.moveFn=p,e.dragOptions.clickFn=g,e.dragOptions.doneFn=S,A(),e.clearOutline(r)):(Uct(L)||Ide(L))&&Hct(y,E,C,e.dragOptions,L)}};var o,s,l,u,f,c,h,d,v,m;function b(y){var E={};return E[e.id+".aaxis.min"]=y.a,E[e.id+".baxis.min"]=y.b,E[e.id+".caxis.min"]=y.c,E}function g(y,E){var C=r._fullLayout.clickmode;Fde(r),y===2&&(r.emit("plotly_doubleclick",null),MI.call("_guiRelayout",r,b({a:0,b:0,c:0}))),C.indexOf("select")>-1&&y===1&&jct(E,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),C.indexOf("event")>-1&&Pde.click(r,E,e.id)}function _(y,E,C){var L=t.getBoundingClientRect();o=E-L.left,s=C-L.top,r._fullLayout._calcInverseTransform(r);var R=r._fullLayout._invTransform,I=hd.apply3DTransform(R)(o,s);o=I[0],s=I[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=l,u=e.aaxis.range[1]-l.a,c=Oct(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,v=n.append("path").attr("class","zoombox").attr("transform",fv(e.x0,e.y0)).style({fill:c>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),m=n.append("path").attr("class","zoombox-corners").attr("transform",fv(e.x0,e.y0)).style({fill:Vy.background,stroke:Vy.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function T(y,E){return 1-E/e.h}function w(y,E){return 1-(y+(e.h-E)/Math.sqrt(3))/e.w}function k(y,E){return(y-(e.h-E)/Math.sqrt(3))/e.w}function x(y,E){var C=o+y*i,L=s+E*a,R=Math.max(0,Math.min(1,T(o,s),T(C,L))),I=Math.max(0,Math.min(1,w(o,s),w(C,L))),P=Math.max(0,Math.min(1,k(o,s),k(C,L))),D=(R/2+P)*e.w,q=(1-R/2-I)*e.w,N=(D+q)/2,U=q-D,G=(1-R)*e.h,ee=G-U/jy;U.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),m.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(f))}function M(){Fde(r),f!==l&&(MI.call("_guiRelayout",r,b(f)),qde&&r.data&&r._context.showTips&&(hd.notifier(SS(r,"Double-click to zoom back out"),"long"),qde=!1))}function A(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},f=l}function p(y,E){var C=y/e.xaxis._m,L=E/e.yaxis._m;f={a:l.a-L,b:l.b+(C+L)/2,c:l.c-(C-L)/2};var R=[f.a,f.b,f.c].sort(hd.sorterAsc),I={a:R.indexOf(f.a),b:R.indexOf(f.b),c:R.indexOf(f.c)};R[0]<0&&(R[1]+R[0]/2<0?(R[2]+=R[0]+R[1],R[0]=R[1]=0):(R[2]+=R[0]/2,R[1]+=R[0]/2,R[0]=0),f={a:R[I.a],b:R[I.b],c:R[I.c]},E=(l.a-f.a)*e.yaxis._m,y=(l.c-f.c-l.b+f.b)*e.xaxis._m);var P=fv(e.x0+y,e.y0+E);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P);var D=fv(-y,-E);e.clipDefRelative.select("path").attr("transform",D),e.aaxis.range=[f.a,e.sum-f.b-f.c],e.baxis.range=[e.sum-f.a-f.c,f.b],e.caxis.range=[e.sum-f.a-f.b,f.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(CS.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(f))}function S(){MI.call("_guiRelayout",r,b(f))}t.onmousemove=function(y){Pde.hover(r,y,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(y){r._dragging||Rde.unhover(r,y)},Rde.init(this.dragOptions)};function Fde(e){zde.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var LI=J((M9t,jde)=>{"use strict";var $ct=Ho(),Kct=Wa().attributes,Ai=hl(),Qct=La().overrideAll,CI=cn().extendFlat,EI={title:{text:Ai.title.text,font:Ai.title.font},color:Ai.color,tickmode:Ai.minor.tickmode,nticks:CI({},Ai.nticks,{dflt:6,min:1}),tick0:Ai.tick0,dtick:Ai.dtick,tickvals:Ai.tickvals,ticktext:Ai.ticktext,ticks:Ai.ticks,ticklen:Ai.ticklen,tickwidth:Ai.tickwidth,tickcolor:Ai.tickcolor,ticklabelstep:Ai.ticklabelstep,showticklabels:Ai.showticklabels,labelalias:Ai.labelalias,showtickprefix:Ai.showtickprefix,tickprefix:Ai.tickprefix,showticksuffix:Ai.showticksuffix,ticksuffix:Ai.ticksuffix,showexponent:Ai.showexponent,exponentformat:Ai.exponentformat,minexponent:Ai.minexponent,separatethousands:Ai.separatethousands,tickfont:Ai.tickfont,tickangle:Ai.tickangle,tickformat:Ai.tickformat,tickformatstops:Ai.tickformatstops,hoverformat:Ai.hoverformat,showline:CI({},Ai.showline,{dflt:!0}),linecolor:Ai.linecolor,linewidth:Ai.linewidth,showgrid:CI({},Ai.showgrid,{dflt:!0}),gridcolor:Ai.gridcolor,gridwidth:Ai.gridwidth,griddash:Ai.griddash,layer:Ai.layer,min:{valType:"number",dflt:0,min:0,description:["The minimum value visible on this axis.","The maximum is determined by the sum minus the minimum","values of the other two axes. The full view corresponds to","all the minima set to zero."].join(" ")},_deprecated:{title:Ai._deprecated.title,titlefont:Ai._deprecated.titlefont}},ES=jde.exports=Qct({domain:Kct({name:"ternary"}),bgcolor:{valType:"color",dflt:$ct.background,description:"Set the background color of the subplot"},sum:{valType:"number",dflt:1,min:0,description:["The number each triplet should sum to,","and the maximum range of each axis"].join(" ")},aaxis:EI,baxis:EI,caxis:EI},"plot","from-root");ES.uirevision={valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis `min` and `title`,","if not overridden in the individual axes.","Defaults to `layout.uirevision`."].join(" ")};ES.aaxis.uirevision=ES.baxis.uirevision=ES.caxis.uirevision={valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis `min`,","and `title` if in `editable: true` configuration.","Defaults to `ternary.uirevision`."].join(" ")}});var Kw=J((k9t,Vde)=>{"use strict";var eht=gt(),tht=ki(),rht=Wa().defaults;Vde.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,l=i.partition||"x",u=r._subplots[a],f=u.length,c=f&&u[0].replace(/\d+$/,""),h,d;function v(_,T){return eht.coerce(h,d,o,_,T)}for(var m=0;m{"use strict";var nht=qr(),iht=ki(),LS=gt(),aht=Kw(),oht=Xp(),sht=Zp(),lht=N1(),uht=Wp(),fht=ak(),Gde=LI(),Yde=["aaxis","baxis","caxis"];Wde.exports=function(t,r,n){aht(t,r,n,{type:"ternary",attributes:Gde,handleDefaults:cht,font:r.font,paper_bgcolor:r.paper_bgcolor})};function cht(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=nht.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u=a&&(f.min=0,c.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function hht(e,t,r,n){var i=Gde[t._name];function a(d,v){return LS.coerce(e,t,i,d,v)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,l=t._name,u=l.charAt(0).toUpperCase(),f="Component "+u,c=a("title.text",f);t._hovertitle=c===f?c:u,LS.coerceFont(a,"title.font",r.font,{overrideDflt:{size:LS.bigFont(r.font.size),color:s}}),a("min"),uht(e,t,a,"linear"),sht(e,t,a,"linear"),oht(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),lht(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(LS.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),fht(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var Zde=J(gh=>{"use strict";var vht=Hde(),dht=Nu().getSubplotCalcData,pht=gt().counterRegex,Yy="ternary";gh.name=Yy;var ght=gh.attr="subplot";gh.idRoot=Yy;gh.idRegex=gh.attrRegex=pht(Yy);var mht=gh.attributes={};mht[ght]={valType:"subplotid",dflt:"ternary",editType:"calc",description:["Sets a reference between this trace's data coordinates and","a ternary subplot.","If *ternary* (the default value), the data refer to `layout.ternary`.","If *ternary2*, the data refer to `layout.ternary2`, and so on."].join(" ")};gh.layoutAttributes=LI();gh.supplyLayoutDefaults=Xde();gh.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Yy],a=0;a{"use strict";Jde.exports={attributes:_I(),supplyDefaults:xde(),colorbar:pc(),formatLabels:wde(),calc:Mde(),plot:Sde(),style:Ef().style,styleOnSelect:Ef().styleOnSelect,hoverPoints:Ede(),selectPoints:fw(),eventData:Dde(),moduleType:"trace",name:"scatterternary",basePlotModule:Zde(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{hrName:"scatter_ternary",description:["Provides similar functionality to the *scatter* type but on a ternary phase diagram.","The data is provided by at least two arrays out of `a`, `b`, `c` triplets."].join(" ")}}});var Qde=J((L9t,Kde)=>{"use strict";Kde.exports=$de()});var DI=J((D9t,t0e)=>{"use strict";var Wo=Dw(),Gy=cn().extendFlat,e0e=Ga().axisHoverFormat;t0e.exports={y:Wo.y,x:Wo.x,x0:Wo.x0,y0:Wo.y0,xhoverformat:e0e("x"),yhoverformat:e0e("y"),name:Gy({},Wo.name,{description:["Sets the trace name.","The trace name appears as the legend item and on hover.","For violin traces, the name will also be used for the position","coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are","missing and the position axis is categorical.","Note that the trace name is also used as a default value","for attribute `scalegroup` (please see its description for details)."].join(" ")}),orientation:Gy({},Wo.orientation,{description:["Sets the orientation of the violin(s).","If *v* (*h*), the distribution is visualized along","the vertical (horizontal)."].join(" ")}),bandwidth:{valType:"number",min:0,editType:"calc",description:["Sets the bandwidth used to compute the kernel density estimate.","By default, the bandwidth is determined by Silverman's rule of thumb."].join(" ")},scalegroup:{valType:"string",dflt:"",editType:"calc",description:["If there are multiple violins that should be sized according to","to some metric (see `scalemode`), link them by providing a non-empty group id here","shared by every trace in the same group.","If a violin's `width` is undefined, `scalegroup` will default to the trace's name.","In this case, violins with the same names will be linked together"].join(" ")},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc",description:["Sets the metric by which the width of each violin is determined.","*width* means each violin has the same (max) width","*count* means the violins are scaled by the number of sample points making","up each violin."].join(" ")},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc",description:["Sets the method by which the span in data space where the density function will be computed.","*soft* means the span goes from the sample's minimum value minus two bandwidths","to the sample's maximum value plus two bandwidths.","*hard* means the span goes from the sample's minimum to its maximum value.","For custom span settings, use mode *manual* and fill in the `span` attribute."].join(" ")},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc",description:["Sets the span in data space for which the density function will be computed.","Has an effect only when `spanmode` is set to *manual*."].join(" ")},line:{color:{valType:"color",editType:"style",description:"Sets the color of line bounding the violin(s)."},width:{valType:"number",min:0,dflt:2,editType:"style",description:"Sets the width (in px) of line bounding the violin(s)."},editType:"plot"},fillcolor:Wo.fillcolor,points:Gy({},Wo.boxpoints,{description:["If *outliers*, only the sample points lying outside the whiskers","are shown","If *suspectedoutliers*, the outlier points are shown and","points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1","are highlighted (see `outliercolor`)","If *all*, all sample points are shown","If *false*, only the violins are shown with no sample points.","Defaults to *suspectedoutliers* when `marker.outliercolor` or","`marker.line.outliercolor` is set,","otherwise defaults to *outliers*."].join(" ")}),jitter:Gy({},Wo.jitter,{description:["Sets the amount of jitter in the sample points drawn.","If *0*, the sample points align along the distribution axis.","If *1*, the sample points are drawn in a random jitter of width","equal to the width of the violins."].join(" ")}),pointpos:Gy({},Wo.pointpos,{description:["Sets the position of the sample points in relation to the violins.","If *0*, the sample points are places over the center of the violins.","Positive (negative) values correspond to positions to the","right (left) for vertical violins and above (below) for horizontal violins."].join(" ")}),width:Gy({},Wo.width,{description:["Sets the width of the violin in data coordinates.","If *0* (default value) the width is automatically selected based on the positions","of other violin traces in the same subplot."].join(" ")}),marker:Wo.marker,text:Wo.text,hovertext:Wo.hovertext,hovertemplate:Wo.hovertemplate,quartilemethod:Wo.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines if an miniature box plot is drawn inside the violins. "].join(" ")},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot",description:["Sets the width of the inner box plots relative to","the violins' width.","For example, with 1, the inner box plots are as wide as the violins."].join(" ")},fillcolor:{valType:"color",editType:"style",description:"Sets the inner box plot fill color."},line:{color:{valType:"color",editType:"style",description:"Sets the inner box plot bounding line color."},width:{valType:"number",min:0,editType:"style",description:"Sets the inner box plot bounding line width."},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines if a line corresponding to the sample's mean is shown","inside the violins.","If `box.visible` is turned on, the mean line is drawn inside the inner box.","Otherwise, the mean line is drawn from one side of the violin to other."].join(" ")},color:{valType:"color",editType:"style",description:"Sets the mean line color."},width:{valType:"number",min:0,editType:"style",description:"Sets the mean line width."},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc",description:["Determines on which side of the position value the density function making up","one half of a violin is plotted.","Useful when comparing two violin traces under *overlay* mode, where one trace","has `side` set to *positive* and the other to *negative*."].join(" ")},offsetgroup:Wo.offsetgroup,alignmentgroup:Wo.alignmentgroup,selected:Wo.selected,unselected:Wo.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style",description:["Do the hover effects highlight individual violins","or sample points or the kernel density estimate or any combination of them?"].join(" ")},zorder:Wo.zorder}});var II=J((R9t,r0e)=>{"use strict";var RI=Rw(),PI=gt().extendFlat;r0e.exports={violinmode:PI({},RI.boxmode,{description:["Determines how violins at the same location coordinate","are displayed on the graph.","If *group*, the violins are plotted next to one another","centered around the shared location.","If *overlay*, the violins are plotted over one another,","you might need to set *opacity* to see them multiple violins.","Has no effect on traces that have *width* set."].join(" ")}),violingap:PI({},RI.boxgap,{description:["Sets the gap (in plot fraction) between violins of","adjacent location coordinates.","Has no effect on traces that have *width* set."].join(" ")}),violingroupgap:PI({},RI.boxgroupgap,{description:["Sets the gap (in plot fraction) between violins of","the same location coordinate.","Has no effect on traces that have *width* set."].join(" ")})}});var s0e=J((P9t,o0e)=>{"use strict";var n0e=gt(),yht=qr(),i0e=Iw(),a0e=DI();o0e.exports=function(t,r,n,i){function a(k,x){return n0e.coerce(t,r,a0e,k,x)}function o(k,x){return n0e.coerce2(t,r,a0e,k,x)}if(i0e.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var l=a("span"),u;Array.isArray(l)&&(u="manual"),a("spanmode",u);var f=a("line.color",(t.marker||{}).color||n),c=a("line.width"),h=a("fillcolor",yht.addOpacity(r.line.color,.5));i0e.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),v=o("box.fillcolor",h),m=o("box.line.color",f),b=o("box.line.width",c),g=a("box.visible",Boolean(d||v||m||b));g||(r.box={visible:!1});var _=o("meanline.color",f),T=o("meanline.width",c),w=a("meanline.visible",Boolean(_||T));w||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var u0e=J((I9t,l0e)=>{"use strict";var xht=gt(),bht=II(),wht=Gk();l0e.exports=function(t,r,n){function i(a,o){return xht.coerce(t,r,bht,a,o)}wht._supply(t,r,n,i,"violin")}});var DS=J(jg=>{"use strict";var _ht=gt(),Tht={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};jg.makeKDE=function(e,t,r){var n=r.length,i=Tht.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var l=0,u=0;u{"use strict";var qI=gt(),FI=nn(),Aht=MP(),f0e=DS(),Mht=oi().BADNUM;c0e.exports=function(t,r){var n=Aht(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=FI.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,l=0,u=0,f=0;f{"use strict";var Eht=Xk().setPositionOffset,v0e=["v","h"];d0e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o{"use strict";var zI=Nr(),NI=gt(),Lht=ln(),OI=Zk(),Dht=fR(),Rht=DS();g0e.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,l=r.yaxis;function u(f,c){var h=Dht(f,{xaxis:s,yaxis:l,trace:c,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return Lht.smoothopen(h[0],1)}NI.makeTraceGroups(i,n,"trace violins").each(function(f){var c=zI.select(this),h=f[0],d=h.t,v=h.trace;if(v.visible!==!0||d.empty){c.remove();return}var m=d.bPos,b=d.bdPos,g=r[d.valLetter+"axis"],_=r[d.posLetter+"axis"],T=v.side==="both",w=T||v.side==="positive",k=T||v.side==="negative",x=c.selectAll("path.violin").data(NI.identity);x.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),x.exit().remove(),x.each(function(L){var R=zI.select(this),I=L.density,P=I.length,D=_.c2l(L.pos+m,!0),q=_.l2p(D),N;if(v.width)N=d.maxKDE/b;else{var U=o._violinScaleGroupStats[v.scalegroup];N=v.scalemode==="count"?U.maxKDE/b*(U.maxCount/L.pts.length):U.maxKDE/b}var G,ee,Q,j,O,Z,K;if(w){for(Z=new Array(P),j=0;j{"use strict";var y0e=Nr(),Wy=qr(),Pht=Ef().stylePoints;x0e.exports=function(t){var r=y0e.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=y0e.select(this),o=i.box||{},s=o.line||{},l=i.meanline||{},u=l.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(Wy.stroke,i.line.color).call(Wy.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(Wy.stroke,s.color).call(Wy.fill,o.fillcolor);var f={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};a.selectAll("path.mean").style(f).call(Wy.stroke,l.color),a.selectAll("path.meanline").style(f).call(Wy.stroke,l.color),Pht(a,i,t)})}});var A0e=J((B9t,T0e)=>{"use strict";var Iht=qr(),BI=gt(),qht=nn(),w0e=LP(),_0e=DS();T0e.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,l=s[0].trace,u=l.hoveron,f=u.indexOf("violins")!==-1,c=u.indexOf("kde")!==-1,h=[],d,v;if(f||c){var m=w0e.hoverOnBoxes(t,r,n,i);if(c&&m.length>0){var b=t.xa,g=t.ya,_,T,w,k,x;l.orientation==="h"?(x=r,_="y",w=g,T="x",k=b):(x=n,_="x",w=b,T="y",k=g);var M=s[t.index];if(x>=M.span[0]&&x<=M.span[1]){var A=BI.extendFlat({},t),p=k.c2p(x,!0),S=_0e.getKdeValue(M,l,x),y=_0e.getPositionOnKdePath(M,l,p),E=w._offset,C=w._length;A[_+"0"]=y[0],A[_+"1"]=y[1],A[T+"0"]=A[T+"1"]=p,A[T+"Label"]=T+": "+qht.hoverLabelText(k,x,l[T+"hoverformat"])+", "+s[0].t.labels.kde+" "+S.toFixed(3);for(var L=0,R=0;R{"use strict";M0e.exports={attributes:DI(),layoutAttributes:II(),supplyDefaults:s0e(),crossTraceDefaults:Iw().crossTraceDefaults,supplyLayoutDefaults:u0e(),calc:h0e(),crossTraceCalc:p0e(),plot:m0e(),style:b0e(),styleOnSelect:Ef().styleOnSelect,hoverPoints:A0e(),selectPoints:DP(),moduleType:"trace",name:"violin",basePlotModule:gs(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{description:["In vertical (horizontal) violin plots,","statistics are computed using `y` (`x`) values.","By supplying an `x` (`y`) array, one violin per distinct x (y) value","is drawn","If no `x` (`y`) {array} is provided, a single violin is drawn.","That violin position is then positioned with","with `name` or with `x0` (`y0`) if provided."].join(" ")}}});var C0e=J((H9t,S0e)=>{"use strict";S0e.exports=k0e()});var L0e=J((j9t,E0e)=>{"use strict";E0e.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var HI=J((V9t,P0e)=>{"use strict";var ha=ov(),UI=ds().line,Fht=Qi(),D0e=Ga().axisHoverFormat,zht=Jn().hovertemplateAttrs,Nht=Jn().texttemplateAttrs,R0e=L0e(),dd=cn().extendFlat,Oht=qr();P0e.exports={x:ha.x,x0:ha.x0,dx:ha.dx,y:ha.y,y0:ha.y0,dy:ha.dy,xperiod:ha.xperiod,yperiod:ha.yperiod,xperiod0:ha.xperiod0,yperiod0:ha.yperiod0,xperiodalignment:ha.xperiodalignment,yperiodalignment:ha.yperiodalignment,xhoverformat:D0e("x"),yhoverformat:D0e("y"),hovertext:ha.hovertext,hovertemplate:zht({},{keys:R0e.eventDataKeys}),hoverinfo:dd({},Fht.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1,description:["Determines which trace information appear on the graph.","In the case of having multiple funnels, percentages & totals","are computed separately (per trace)."].join(" ")},texttemplate:Nht({editType:"plot"},{keys:R0e.eventDataKeys.concat(["label","value"])}),text:ha.text,textposition:ha.textposition,insidetextanchor:dd({},ha.insidetextanchor,{dflt:"middle"}),textangle:dd({},ha.textangle,{dflt:0}),textfont:ha.textfont,insidetextfont:ha.insidetextfont,outsidetextfont:ha.outsidetextfont,constraintext:ha.constraintext,cliponaxis:ha.cliponaxis,orientation:dd({},ha.orientation,{description:["Sets the orientation of the funnels.","With *v* (*h*), the value of the each bar spans","along the vertical (horizontal).","By default funnels are tend to be oriented horizontally;","unless only *y* array is presented or orientation is set to *v*.","Also regarding graphs including only 'horizontal' funnels,","*autorange* on the *y-axis* are set to *reversed*."].join(" ")}),offset:dd({},ha.offset,{arrayOk:!1}),width:dd({},ha.width,{arrayOk:!1}),marker:Bht(),connector:{fillcolor:{valType:"color",editType:"style",description:["Sets the fill color."].join(" ")},line:{color:dd({},UI.color,{dflt:Oht.defaultLine}),width:dd({},UI.width,{dflt:0,editType:"plot"}),dash:UI.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot",description:["Determines if connector regions and lines are drawn."].join(" ")},editType:"plot"},offsetgroup:ha.offsetgroup,alignmentgroup:ha.alignmentgroup,zorder:ha.zorder};function Bht(){var e=dd({},ha.marker);return delete e.pattern,delete e.cornerradius,e}});var jI=J((Y9t,I0e)=>{"use strict";I0e.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc",description:["Determines how bars at the same location coordinate","are displayed on the graph.","With *stack*, the bars are stacked on top of one another","With *group*, the bars are plotted next to one another","centered around the shared location.","With *overlay*, the bars are plotted over one another,","you might need to reduce *opacity* to see multiple bars."].join(" ")},funnelgap:{valType:"number",min:0,max:1,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","adjacent location coordinates."].join(" ")},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","the same location coordinate."].join(" ")}}});var YI=J((G9t,F0e)=>{"use strict";var RS=gt(),Uht=Tg(),Hht=Pf().handleText,jht=rw(),Vht=nv(),q0e=HI(),VI=qr();function Yht(e,t,r,n){function i(c,h){return RS.coerce(e,t,q0e,c,h)}var a=jht(e,t,n,i);if(!a){t.visible=!1;return}Vht(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate");var s=i("textposition");Hht(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",RS.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",VI.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",Ght(l));var f=i("connector.line.width");f&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function Ght(e){var t=RS.isArrayOrTypedArray(e)?"#000":e;return VI.addOpacity(t,.5*VI.opacity(t))}function Wht(e,t){var r,n;function i(o){return RS.coerce(n._input,n,q0e,o)}if(t.funnelmode==="group")for(var a=0;a{"use strict";var Xht=gt(),Zht=jI();z0e.exports=function(e,t,r){var n=!1;function i(s,l){return Xht.coerce(e,t,Zht,s,l)}for(var a=0;a{"use strict";var Xy=gt();O0e.exports=function(t,r){for(var n=0;n{"use strict";var U0e=nn(),H0e=iv(),Jht=B0e(),$ht=oh(),Qw=oi().BADNUM;j0e.exports=function(t,r){var n=U0e.getFromId(t,r.xaxis||"x"),i=U0e.getFromId(t,r.yaxis||"y"),a,o,s,l,u,f,c,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=H0e(r,i,"y",s),u=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=H0e(r,n,"x",s),u=!!r.xperiodalignment,f="x"),o=l.vals;var d=Math.min(o.length,a.length),v=new Array(d);for(r._base=[],c=0;c{"use strict";var Y0e=kg().setGroupPositions;G0e.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],f=[],c,h;for(h=0;h{"use strict";var PS=Nr(),B0=gt(),X0e=ln(),O0=oi().BADNUM,Kht=Og(),Qht=xl().clearMinTextSize;J0e.exports=function(t,r,n,i){var a=t._fullLayout;Qht("funnel",a),evt(t,r,n,i),tvt(t,r,n,i),Kht.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function evt(e,t,r,n){var i=t.xaxis,a=t.yaxis;B0.makeTraceGroups(n,r,"trace bars").each(function(o){var s=PS.select(this),l=o[0].trace,u=B0.ensureSingle(s,"g","regions");if(!l.connector||!l.connector.visible){u.remove();return}var f=l.orientation==="h",c=u.selectAll("g.region").data(B0.identity);c.enter().append("g").classed("region",!0),c.exit().remove();var h=c.size();c.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var m=Z0e(d,i,a,f),b=m[0],g=m[1],_="";b[0]!==O0&&g[0]!==O0&&b[1]!==O0&&g[1]!==O0&&b[2]!==O0&&g[2]!==O0&&b[3]!==O0&&g[3]!==O0&&(f?_+="M"+b[0]+","+g[1]+"L"+b[2]+","+g[2]+"H"+b[3]+"L"+b[1]+","+g[1]+"Z":_+="M"+b[1]+","+g[1]+"L"+b[2]+","+g[3]+"V"+g[2]+"L"+b[1]+","+g[0]+"Z"),_===""&&(_="M0,0Z"),B0.ensureSingle(PS.select(this),"path").attr("d",_).call(X0e.setClipUrl,t.layerClipId,e)}})})}function tvt(e,t,r,n){var i=t.xaxis,a=t.yaxis;B0.makeTraceGroups(n,r,"trace bars").each(function(o){var s=PS.select(this),l=o[0].trace,u=B0.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){u.remove();return}var f=l.orientation==="h",c=u.selectAll("g.line").data(B0.identity);c.enter().append("g").classed("line",!0),c.exit().remove();var h=c.size();c.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var m=Z0e(d,i,a,f),b=m[0],g=m[1],_="";b[3]!==void 0&&g[3]!==void 0&&(f?(_+="M"+b[0]+","+g[1]+"L"+b[2]+","+g[2],_+="M"+b[1]+","+g[1]+"L"+b[3]+","+g[2]):(_+="M"+b[1]+","+g[1]+"L"+b[2]+","+g[3],_+="M"+b[1]+","+g[0]+"L"+b[2]+","+g[2])),_===""&&(_="M0,0Z"),B0.ensureSingle(PS.select(this),"path").attr("d",_).call(X0e.setClipUrl,t.layerClipId,e)}})})}function Z0e(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var epe=J((K9t,Q0e)=>{"use strict";var e_=Nr(),K0e=ln(),WI=qr(),rvt=w1().DESELECTDIM,nvt=mc(),ivt=xl().resizeText,avt=nvt.styleTextPoints;function ovt(e,t,r){var n=r||e_.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");ivt(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=e_.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;e_.select(this).call(WI.fill,s.mc||l.color).call(WI.stroke,s.mlc||l.line.color).call(K0e.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?rvt:1)}}),avt(a,o,e),a.selectAll(".regions").each(function(){e_.select(this).selectAll("path").style("stroke-width",0).call(WI.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;K0e.lineGroupStyle(e_.select(this).selectAll("path"),s.width,s.color,s.dash)})})}Q0e.exports={style:ovt}});var npe=J((Q9t,rpe)=>{"use strict";var tpe=qr().opacity,svt=Dy().hoverOnBars,XI=gt().formatPercent;rpe.exports=function(t,r,n,i,a){var o=svt(t,r,n,i,a);if(o){var s=o.cd,l=s[0].trace,u=l.orientation==="h",f=o.index,c=s[f],h=u?"x":"y";o[h+"LabelVal"]=c.s,o.percentInitial=c.begR,o.percentInitialLabel=XI(c.begR,1),o.percentPrevious=c.difR,o.percentPreviousLabel=XI(c.difR,1),o.percentTotal=c.sumR,o.percentTotalLabel=XI(c.sumR,1);var d=c.hi||l.hoverinfo,v=[];if(d&&d!=="none"&&d!=="skip"){var m=d==="all",b=d.split("+"),g=function(_){return m||b.indexOf(_)!==-1};g("percent initial")&&v.push(o.percentInitialLabel+" of initial"),g("percent previous")&&v.push(o.percentPreviousLabel+" of previous"),g("percent total")&&v.push(o.percentTotalLabel+" of total")}return o.extraText=v.join("
"),o.color=lvt(l,c),[o]}};function lvt(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(tpe(n))return n;if(tpe(i)&&a)return i}});var ape=J((eFt,ipe)=>{"use strict";ipe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var spe=J((tFt,ope)=>{"use strict";ope.exports={attributes:HI(),layoutAttributes:jI(),supplyDefaults:YI().supplyDefaults,crossTraceDefaults:YI().crossTraceDefaults,supplyLayoutDefaults:N0e(),calc:V0e(),crossTraceCalc:W0e(),plot:$0e(),style:epe().style,hoverPoints:npe(),eventData:ape(),selectPoints:Ry(),moduleType:"trace",name:"funnel",basePlotModule:gs(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{description:["Visualize stages in a process using length-encoded bars. This trace can be used","to show data in either a part-to-whole representation wherein each item appears",'in a single stage, or in a "drop-off" representation wherein each item appears in','each stage it traversed. See also the "funnelarea" trace type for a different',"approach to visualizing funnel data."].join(" ")}}});var upe=J((rFt,lpe)=>{"use strict";lpe.exports=spe()});var cpe=J((nFt,fpe)=>{"use strict";fpe.exports={eventDataKeys:["initial","delta","final"]}});var $I=J((iFt,dpe)=>{"use strict";var na=ov(),ZI=ds().line,uvt=Qi(),hpe=Ga().axisHoverFormat,fvt=Jn().hovertemplateAttrs,cvt=Jn().texttemplateAttrs,vpe=cpe(),Zy=cn().extendFlat,hvt=qr();function JI(e){return{marker:{color:Zy({},na.marker.color,{arrayOk:!1,editType:"style",description:"Sets the marker color of all "+e+" values."}),line:{color:Zy({},na.marker.line.color,{arrayOk:!1,editType:"style",description:"Sets the line color of all "+e+" values."}),width:Zy({},na.marker.line.width,{arrayOk:!1,editType:"style",description:"Sets the line width of all "+e+" values."}),editType:"style"},editType:"style"},editType:"style"}}dpe.exports={measure:{valType:"data_array",dflt:[],editType:"calc",description:["An array containing types of values.","By default the values are considered as 'relative'.","However; it is possible to use 'total' to compute the sums.","Also 'absolute' could be applied to reset the computed total","or to declare an initial value where needed."].join(" ")},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc",description:["Sets where the bar base is drawn (in position axis units)."].join(" ")},x:na.x,x0:na.x0,dx:na.dx,y:na.y,y0:na.y0,dy:na.dy,xperiod:na.xperiod,yperiod:na.yperiod,xperiod0:na.xperiod0,yperiod0:na.yperiod0,xperiodalignment:na.xperiodalignment,yperiodalignment:na.yperiodalignment,xhoverformat:hpe("x"),yhoverformat:hpe("y"),hovertext:na.hovertext,hovertemplate:fvt({},{keys:vpe.eventDataKeys}),hoverinfo:Zy({},uvt.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1,description:["Determines which trace information appear on the graph.","In the case of having multiple waterfalls, totals","are computed separately (per trace)."].join(" ")},texttemplate:cvt({editType:"plot"},{keys:vpe.eventDataKeys.concat(["label"])}),text:na.text,textposition:na.textposition,insidetextanchor:na.insidetextanchor,textangle:na.textangle,textfont:na.textfont,insidetextfont:na.insidetextfont,outsidetextfont:na.outsidetextfont,constraintext:na.constraintext,cliponaxis:na.cliponaxis,orientation:na.orientation,offset:na.offset,width:na.width,increasing:JI("increasing"),decreasing:JI("decreasing"),totals:JI("intermediate sums and total"),connector:{line:{color:Zy({},ZI.color,{dflt:hvt.defaultLine}),width:Zy({},ZI.width,{editType:"plot"}),dash:ZI.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot",description:["Sets the shape of connector lines."].join(" ")},visible:{valType:"boolean",dflt:!0,editType:"plot",description:["Determines if connector lines are drawn. "].join(" ")},editType:"plot"},offsetgroup:na.offsetgroup,alignmentgroup:na.alignmentgroup,zorder:na.zorder}});var KI=J((aFt,ppe)=>{"use strict";ppe.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc",description:["Determines how bars at the same location coordinate","are displayed on the graph.","With *group*, the bars are plotted next to one another","centered around the shared location.","With *overlay*, the bars are plotted over one another,","you might need to reduce *opacity* to see multiple bars."].join(" ")},waterfallgap:{valType:"number",min:0,max:1,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","adjacent location coordinates."].join(" ")},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc",description:["Sets the gap (in plot fraction) between bars of","the same location coordinate."].join(" ")}}});var Jy=J((oFt,gpe)=>{"use strict";gpe.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var eq=J((sFt,bpe)=>{"use strict";var mpe=gt(),vvt=Tg(),dvt=Pf().handleText,pvt=rw(),gvt=nv(),ype=$I(),mvt=qr(),xpe=Jy(),yvt=xpe.INCREASING.COLOR,xvt=xpe.DECREASING.COLOR,bvt="#4499FF";function QI(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",mvt.defaultLine),e(t+".marker.line.width")}function wvt(e,t,r,n){function i(u,f){return mpe.coerce(e,t,ype,u,f)}var a=pvt(e,t,n,i);if(!a){t.visible=!1;return}gvt(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate");var o=i("textposition");dvt(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),t.texttemplate||i("textinfo")),QI(i,"increasing",yvt),QI(i,"decreasing",xvt),QI(i,"totals",bvt);var s=i("connector.visible");if(s){i("connector.mode");var l=i("connector.line.width");l&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function _vt(e,t){var r,n;function i(o){return mpe.coerce(n._input,n,ype,o)}if(t.waterfallmode==="group")for(var a=0;a{"use strict";var Tvt=gt(),Avt=KI();wpe.exports=function(e,t,r){var n=!1;function i(s,l){return Tvt.coerce(e,t,Avt,s,l)}for(var a=0;a{"use strict";var Tpe=nn(),Ape=iv(),Mpe=gt().mergeArray,Mvt=oh(),kpe=oi().BADNUM;function tq(e){return e==="a"||e==="absolute"}function rq(e){return e==="t"||e==="total"}Spe.exports=function(t,r){var n=Tpe.getFromId(t,r.xaxis||"x"),i=Tpe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,f;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=Ape(r,i,"y",s),u=!!r.yperiodalignment,f="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=Ape(r,n,"x",s),u=!!r.xperiodalignment,f="x"),o=l.vals;for(var c=Math.min(o.length,a.length),h=new Array(c),d=0,v,m=!1,b=0;b{"use strict";var Epe=kg().setGroupPositions;Lpe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],f=[],c,h;for(h=0;h{"use strict";var Rpe=Nr(),IS=gt(),kvt=ln(),$y=oi().BADNUM,Svt=Og(),Cvt=xl().clearMinTextSize;Ppe.exports=function(t,r,n,i){var a=t._fullLayout;Cvt("waterfall",a),Svt.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),Evt(t,r,n,i)};function Evt(e,t,r,n){var i=t.xaxis,a=t.yaxis;IS.makeTraceGroups(n,r,"trace bars").each(function(o){var s=Rpe.select(this),l=o[0].trace,u=IS.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible){u.remove();return}var f=l.orientation==="h",c=l.connector.mode,h=u.selectAll("g.line").data(IS.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(v,m){if(!(m!==d-1&&!v.cNext)){var b=Lvt(v,i,a,f),g=b[0],_=b[1],T="";g[0]!==$y&&_[0]!==$y&&g[1]!==$y&&_[1]!==$y&&(c==="spanning"&&!v.isSum&&m>0&&(f?T+="M"+g[0]+","+_[1]+"V"+_[0]:T+="M"+g[1]+","+_[0]+"H"+g[0]),c!=="between"&&(v.isSum||m{"use strict";var qS=Nr(),qpe=ln(),Fpe=qr(),Dvt=w1().DESELECTDIM,Rvt=mc(),Pvt=xl().resizeText,Ivt=Rvt.styleTextPoints;function qvt(e,t,r){var n=r||qS.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");Pvt(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=qS.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;qS.select(this).call(Fpe.fill,l.color).call(Fpe.stroke,l.line.color).call(qpe.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?Dvt:1)}}),Ivt(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;qpe.lineGroupStyle(qS.select(this).selectAll("path"),s.width,s.color,s.dash)})})}zpe.exports={style:qvt}});var jpe=J((vFt,Hpe)=>{"use strict";var Fvt=nn().hoverLabelText,Ope=qr().opacity,zvt=Dy().hoverOnBars,Bpe=Jy(),Upe={increasing:Bpe.INCREASING.SYMBOL,decreasing:Bpe.DECREASING.SYMBOL};Hpe.exports=function(t,r,n,i,a){var o=zvt(t,r,n,i,a);if(!o)return;var s=o.cd,l=s[0].trace,u=l.orientation==="h",f=u?"x":"y",c=u?t.xa:t.ya;function h(x){return Fvt(c,x,l[f+"hoverformat"])}var d=o.index,v=s[d],m=v.isSum?v.b+v.s:v.rawS;o.initial=v.b+v.s-m,o.delta=m,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=m<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var g=v.hi||l.hoverinfo,_=[];if(g&&g!=="none"&&g!=="skip"){var T=g==="all",w=g.split("+"),k=function(x){return T||w.indexOf(x)!==-1};v.isSum||(k("final")&&(u?!k("x"):!k("y"))&&_.push(o.finalLabel),k("delta")&&(m<0?_.push(o.deltaLabel+" "+Upe.decreasing):_.push(o.deltaLabel+" "+Upe.increasing)),k("initial")&&_.push("Initial: "+o.initialLabel))}return _.length&&(o.extraText=_.join("
")),o.color=Nvt(l,v),[o]};function Nvt(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(Ope(n))return n;if(Ope(i)&&a)return i}});var Ype=J((dFt,Vpe)=>{"use strict";Vpe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var Wpe=J((pFt,Gpe)=>{"use strict";Gpe.exports={attributes:$I(),layoutAttributes:KI(),supplyDefaults:eq().supplyDefaults,crossTraceDefaults:eq().crossTraceDefaults,supplyLayoutDefaults:_pe(),calc:Cpe(),crossTraceCalc:Dpe(),plot:Ipe(),style:Npe().style,hoverPoints:jpe(),eventData:Ype(),selectPoints:Ry(),moduleType:"trace",name:"waterfall",basePlotModule:gs(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{description:["Draws waterfall trace which is useful graph to displays the","contribution of various elements (either positive or negative)","in a bar chart. The data visualized by the span of the bars is","set in `y` if `orientation` is set to *v* (the default) and the","labels are set in `x`.","By setting `orientation` to *h*, the roles are interchanged."].join(" ")}}});var Zpe=J((gFt,Xpe)=>{"use strict";Xpe.exports=Wpe()});var Vg=J((mFt,Jpe)=>{"use strict";var Ovt=Qi(),Bvt=Wa().attributes,Uvt=xa(),Hvt=Ho(),jvt=Jn().hovertemplateAttrs,Vvt=Jn().texttemplateAttrs,Ky=cn().extendFlat,Yvt=Ss().pattern,t_=Uvt({editType:"plot",arrayOk:!0,colorEditType:"plot",description:"Sets the font used for `textinfo`."});Jpe.exports={labels:{valType:"data_array",editType:"calc",description:["Sets the sector labels.","If `labels` entries are duplicated, we sum associated `values`","or simply count occurrences if `values` is not provided.","For other array attributes (including color) we use the first","non-empty entry among all occurrences of the label."].join(" ")},label0:{valType:"number",dflt:0,editType:"calc",description:["Alternate to `labels`.","Builds a numeric set of labels.","Use with `dlabel`","where `label0` is the starting label and `dlabel` the step."].join(" ")},dlabel:{valType:"number",dflt:1,editType:"calc",description:"Sets the label step. See `label0` for more info."},values:{valType:"data_array",editType:"calc",description:["Sets the values of the sectors.","If omitted, we count occurrences of each label."].join(" ")},marker:{colors:{valType:"data_array",editType:"calc",description:["Sets the color of each sector.","If not specified, the default trace color set is used","to pick the sector colors."].join(" ")},line:{color:{valType:"color",dflt:Hvt.defaultLine,arrayOk:!0,editType:"style",description:["Sets the color of the line enclosing each sector."].join(" ")},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style",description:["Sets the width (in px) of the line enclosing each sector."].join(" ")},editType:"calc"},pattern:Yvt,editType:"calc"},text:{valType:"data_array",editType:"plot",description:["Sets text elements associated with each sector.","If trace `textinfo` contains a *text* flag, these elements will be seen","on the chart.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style",description:["Sets hover text elements associated with each sector.","If a single string, the same string appears for","all data points.","If an array of string, the items are mapped in order of","this trace's sectors.","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")},scalegroup:{valType:"string",dflt:"",editType:"calc",description:["If there are multiple pie charts that should be sized according to","their totals, link them by providing a non-empty group id here","shared by every trace in the same group."].join(" ")},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc",description:["Determines which trace information appear on the graph."].join(" ")},hoverinfo:Ky({},Ovt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:jvt({},{keys:["label","color","value","percent","text"]}),texttemplate:Vvt({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot",description:["Specifies the location of the `textinfo`."].join(" ")},textfont:Ky({},t_,{description:"Sets the font used for `textinfo`."}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot",description:["Controls the orientation of the text inside chart sectors.","When set to *auto*, text may be oriented in any direction in order","to be as big as possible in the middle of a sector.","The *horizontal* option orients text to be parallel with the bottom","of the chart, and may make text smaller in order to achieve that goal.","The *radial* option orients text along the radius of the sector.","The *tangential* option orients text perpendicular to the radius of the sector."].join(" ")},insidetextfont:Ky({},t_,{description:"Sets the font used for `textinfo` lying inside the sector."}),outsidetextfont:Ky({},t_,{description:"Sets the font used for `textinfo` lying outside the sector."}),automargin:{valType:"boolean",dflt:!1,editType:"plot",description:["Determines whether outside text labels can push the margins."].join(" ")},title:{text:{valType:"string",dflt:"",editType:"plot",description:["Sets the title of the chart.","If it is empty, no title is displayed.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:Ky({},t_,{description:["Sets the font used for `title`.","Note that the title's font used to be set","by the now deprecated `titlefont` attribute."].join(" ")}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot",description:["Specifies the location of the `title`.","Note that the title's position used to be set","by the now deprecated `titleposition` attribute."].join(" ")},editType:"plot"},domain:Bvt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc",description:["Sets the fraction of the radius to cut out of the pie.","Use this to make a donut chart."].join(" ")},sort:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether or not the sectors are reordered","from largest to smallest."].join(" ")},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc",description:["Specifies the direction at which succeeding sectors follow","one another."].join(" ")},rotation:{valType:"angle",dflt:0,editType:"calc",description:["Instead of the first slice starting at 12 o'clock,","rotate to some other angle."].join(" ")},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc",description:["Sets the fraction of larger radius to pull the sectors","out from the center. This can be a constant","to pull all slices apart from each other equally","or an array to highlight one or more slices."].join(" ")},_deprecated:{title:{valType:"string",dflt:"",editType:"calc",description:["Deprecated in favor of `title.text`.","Note that value of `title` is no longer a simple","*string* but a set of sub-attributes."].join(" ")},titlefont:Ky({},t_,{description:"Deprecated in favor of `title.font`."}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc",description:"Deprecated in favor of `title.position`."}}}});var Yg=J((yFt,Qpe)=>{"use strict";var Gvt=dn(),r_=gt(),Wvt=Vg(),Xvt=Wa().defaults,Zvt=Pf().handleText,Jvt=gt().coercePattern;function $pe(e,t){var r=r_.isArrayOrTypedArray(e),n=r_.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function Kpe(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");Jvt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function $vt(e,t,r,n){function i(_,T){return r_.coerce(e,t,Wvt,_,T)}var a=i("labels"),o=i("values"),s=$pe(a,o),l=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!l){t.visible=!1;return}t._length=l,Kpe(e,t,n,i,!0),i("scalegroup");var u=i("text"),f=i("texttemplate"),c;if(f||(c=i("textinfo",r_.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),f||c&&c!=="none"){var h=i("textposition");Zvt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",v=d||h==="outside";v&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else c==="none"&&i("textposition","none");Xvt(t,n,i);var m=i("hole"),b=i("title.text");if(b){var g=i("title.position",m?"middle center":"top center");!m&&g==="middle center"&&(t.title.position="top center"),r_.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}Qpe.exports={handleLabelsAndValues:$pe,handleMarkerDefaults:Kpe,supplyDefaults:$vt}});var FS=J((xFt,ege)=>{"use strict";ege.exports={hiddenlabels:{valType:"data_array",editType:"calc",description:["hiddenlabels is the funnelarea & pie chart analog of","visible:'legendonly'","but it can contain many labels, and can simultaneously","hide slices from several pies/funnelarea charts"].join(" ")},piecolorway:{valType:"colorlist",editType:"calc",description:["Sets the default pie slice colors. Defaults to the main","`colorway` used for trace colors. If you specify a new","list here it can still be extended with lighter and darker","colors, see `extendpiecolors`."].join(" ")},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc",description:["If `true`, the pie slice colors (whether given by `piecolorway` or","inherited from `colorway`) will be extended to three times its","original length by first repeating every color 20% lighter then","each color 20% darker. This is intended to reduce the likelihood","of reusing the same color when you have many slices, but you can","set `false` to disable.","Colors provided in the trace, using `marker.colors`, are never","extended."].join(" ")}}});var rge=J((bFt,tge)=>{"use strict";var Kvt=gt(),Qvt=FS();tge.exports=function(t,r){function n(i,a){return Kvt.coerce(t,r,Qvt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var Qy=J((wFt,age)=>{"use strict";var edt=dn(),nq=ls(),tdt=qr(),rdt={};function ndt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,l=t._length,u=t._hasValues&&l,f,c;if(t.dlabel)for(a=new Array(l),f=0;f=0});var w=t.type==="funnelarea"?m:t.sort;return w&&r.sort(function(k,x){return x.v-k.v}),r[0]&&(r[0].vTotal=v),r}function nge(e){return function(r,n){return!r||(r=nq(r),!r.isValid())?!1:(r=tdt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function idt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=ige(a,rdt));for(var s=0,l=0;l{"use strict";var adt=Qf().appendArrayMultiPointValues;oge.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),adt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var BS=J((TFt,Cge)=>{"use strict";var Xu=Nr(),odt=ea(),zS=go(),vge=qr(),pd=ln(),Js=gt(),sdt=Js.strScale,lge=Js.strTranslate,iq=ca(),dge=xl(),ldt=dge.recordMinTextSize,udt=dge.clearMinTextSize,pge=qg().TEXTPAD,_n=g0(),NS=sge(),uge=gt().isValidTextValue;function fdt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;udt("pie",n),yge(t,e),Mge(t,i);var a=Js.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=Xu.select(this),l=o[0],u=l.trace;xdt(o),s.attr("stroke-linejoin","round"),s.each(function(){var f=Xu.select(this).selectAll("g.slice").data(o);f.enter().append("g").classed("slice",!0),f.exit().remove();var c=[[[],[]],[[],[]]],h=!1;f.each(function(w,k){if(w.hidden){Xu.select(this).selectAll("path,g").remove();return}w.pointNumber=w.i,w.curveNumber=u.index,c[w.pxmid[1]<0?0:1][w.pxmid[0]<0?0:1].push(w);var x=l.cx,M=l.cy,A=Xu.select(this),p=A.selectAll("path.surface").data([w]);if(p.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),A.call(gge,e,o),u.pull){var S=+_n.castOption(u.pull,w.pts)||0;S>0&&(x+=S*w.pxmid[0],M+=S*w.pxmid[1])}w.cxFinal=x,w.cyFinal=M;function y(D,q,N,U){var G=U*(q[0]-D[0]),ee=U*(q[1]-D[1]);return"a"+U*l.r+","+U*l.r+" 0 "+w.largeArc+(N?" 1 ":" 0 ")+G+","+ee}var E=u.hole;if(w.v===l.vTotal){var C="M"+(x+w.px0[0])+","+(M+w.px0[1])+y(w.px0,w.pxmid,!0,1)+y(w.pxmid,w.px0,!0,1)+"Z";E?p.attr("d","M"+(x+E*w.px0[0])+","+(M+E*w.px0[1])+y(w.px0,w.pxmid,!1,E)+y(w.pxmid,w.px0,!1,E)+"Z"+C):p.attr("d",C)}else{var L=y(w.px0,w.px1,!0,1);if(E){var R=1-E;p.attr("d","M"+(x+E*w.px1[0])+","+(M+E*w.px1[1])+y(w.px1,w.px0,!1,E)+"l"+R*w.px0[0]+","+R*w.px0[1]+L+"Z")}else p.attr("d","M"+x+","+M+"l"+w.px0[0]+","+w.px0[1]+L+"Z")}kge(e,w,l);var I=_n.castOption(u.textposition,w.pts),P=A.selectAll("g.slicetext").data(w.text&&I!=="none"?[0]:[]);P.enter().append("g").classed("slicetext",!0),P.exit().remove(),P.each(function(){var D=Js.ensureSingle(Xu.select(this),"text","",function(O){O.attr("data-notex",1)}),q=Js.ensureUniformFontSize(e,I==="outside"?hdt(u,w,n.font):mge(u,w,n.font));D.text(w.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(pd.font,q).call(iq.convertToTspans,e);var N=pd.bBox(D.node()),U;if(I==="outside")U=hge(N,w);else if(U=xge(N,w,l),I==="auto"&&U.scale<1){var G=Js.ensureUniformFontSize(e,u.outsidetextfont);D.call(pd.font,G),N=pd.bBox(D.node()),U=hge(N,w)}var ee=U.textPosAngle,Q=ee===void 0?w.pxmid:OS(l.r,ee);if(U.targetX=x+Q[0]*U.rCenter+(U.x||0),U.targetY=M+Q[1]*U.rCenter+(U.y||0),Sge(U,N),U.outside){var j=U.targetY;w.yLabelMin=j-N.height/2,w.yLabelMid=j,w.yLabelMax=j+N.height/2,w.labelExtraX=0,w.labelExtraY=0,h=!0}U.fontSize=q.size,ldt(u.type,U,n),o[k].transform=U,Js.setTransormAndDisplay(D,U)})});var d=Xu.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var w=Js.ensureSingle(Xu.select(this),"text","",function(M){M.attr("data-notex",1)}),k=u.title.text;u._meta&&(k=Js.templateString(k,u._meta)),w.text(k).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(pd.font,u.title.font).call(iq.convertToTspans,e);var x;u.title.position==="middle center"?x=pdt(l):x=Tge(l,i),w.attr("transform",lge(x.x,x.y)+sdt(Math.min(1,x.scale))+lge(x.tx,x.ty))}),h&&mdt(c,u),cdt(f,u),h&&u.automargin){var v=pd.bBox(s.node()),m=u.domain,b=i.w*(m.x[1]-m.x[0]),g=i.h*(m.y[1]-m.y[0]),_=(.5*b-l.r)/i.w,T=(.5*g-l.r)/i.h;odt.autoMargin(e,"pie."+u.uid+".automargin",{xl:m.x[0]-_,xr:m.x[1]+_,yb:m.y[0]-T,yt:m.y[1]+T,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=Xu.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function cdt(e,t){e.each(function(r){var n=Xu.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,Js.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],f=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(f)?s+="l"+f*r.pxmid[0]/r.pxmid[1]+","+f+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(f-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;Js.ensureSingle(n,"path","textline").call(vge.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function gge(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(l){var u=t._fullLayout,f=t._fullData[o.index];if(!(t._dragging||u.hovermode===!1)){var c=f.hoverinfo;if(Array.isArray(c)&&(c=zS.castHoverinfo({hoverinfo:[_n.castOption(c,l.pts)],_module:o._module},u,0)),c==="all"&&(c="label+text+value+percent+name"),f.hovertemplate||c!=="none"&&c!=="skip"&&c){var h=l.rInscribed||0,d=i+l.pxmid[0]*(1-h),v=a+l.pxmid[1]*(1-h),m=u.separators,b=[];if(c&&c.indexOf("label")!==-1&&b.push(l.label),l.text=_n.castOption(f.hovertext||f.text,l.pts),c&&c.indexOf("text")!==-1){var g=l.text;Js.isValidTextValue(g)&&b.push(g)}l.value=l.v,l.valueLabel=_n.formatPieValue(l.v,m),c&&c.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=_n.formatPiePercent(l.percent,m),c&&c.indexOf("percent")!==-1&&b.push(l.percentLabel);var _=f.hoverlabel,T=_.font,w=[];zS.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:v,_x0:s?i+l.TL[0]:d-h*n.r,_x1:s?i+l.TR[0]:d+h*n.r,_y0:s?a+l.TL[1]:v-h*n.r,_y1:s?a+l.BL[1]:v+h*n.r,text:b.join("
"),name:f.hovertemplate||c.indexOf("name")!==-1?f.name:void 0,idealAlign:l.pxmid[0]<0?"left":"right",color:_n.castOption(_.bgcolor,l.pts)||l.color,borderColor:_n.castOption(_.bordercolor,l.pts),fontFamily:_n.castOption(T.family,l.pts),fontSize:_n.castOption(T.size,l.pts),fontColor:_n.castOption(T.color,l.pts),nameLength:_n.castOption(_.namelength,l.pts),textAlign:_n.castOption(_.align,l.pts),hovertemplate:_n.castOption(f.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[NS(l,f)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:t,inOut_bbox:w}),l.bbox=w[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[NS(l,f)],event:Xu.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,f=t._fullData[o.index],c=Xu.select(this).datum();o._hasHoverEvent&&(l.originalEvent=Xu.event,t.emit("plotly_unhover",{points:[NS(c,f)],event:Xu.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(zS.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(l){var u=t._fullLayout,f=t._fullData[o.index];t._dragging||u.hovermode===!1||(t._hoverdata=[NS(l,f)],zS.click(t,Xu.event))})}function hdt(e,t,r){var n=_n.castOption(e.outsidetextfont.color,t.pts)||_n.castOption(e.textfont.color,t.pts)||r.color,i=_n.castOption(e.outsidetextfont.family,t.pts)||_n.castOption(e.textfont.family,t.pts)||r.family,a=_n.castOption(e.outsidetextfont.size,t.pts)||_n.castOption(e.textfont.size,t.pts)||r.size,o=_n.castOption(e.outsidetextfont.weight,t.pts)||_n.castOption(e.textfont.weight,t.pts)||r.weight,s=_n.castOption(e.outsidetextfont.style,t.pts)||_n.castOption(e.textfont.style,t.pts)||r.style,l=_n.castOption(e.outsidetextfont.variant,t.pts)||_n.castOption(e.textfont.variant,t.pts)||r.variant,u=_n.castOption(e.outsidetextfont.textcase,t.pts)||_n.castOption(e.textfont.textcase,t.pts)||r.textcase,f=_n.castOption(e.outsidetextfont.lineposition,t.pts)||_n.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=_n.castOption(e.outsidetextfont.shadow,t.pts)||_n.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:f,shadow:c}}function mge(e,t,r){var n=_n.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=_n.castOption(e._input.textfont.color,t.pts));var i=_n.castOption(e.insidetextfont.family,t.pts)||_n.castOption(e.textfont.family,t.pts)||r.family,a=_n.castOption(e.insidetextfont.size,t.pts)||_n.castOption(e.textfont.size,t.pts)||r.size,o=_n.castOption(e.insidetextfont.weight,t.pts)||_n.castOption(e.textfont.weight,t.pts)||r.weight,s=_n.castOption(e.insidetextfont.style,t.pts)||_n.castOption(e.textfont.style,t.pts)||r.style,l=_n.castOption(e.insidetextfont.variant,t.pts)||_n.castOption(e.textfont.variant,t.pts)||r.variant,u=_n.castOption(e.insidetextfont.textcase,t.pts)||_n.castOption(e.textfont.textcase,t.pts)||r.textcase,f=_n.castOption(e.insidetextfont.lineposition,t.pts)||_n.castOption(e.textfont.lineposition,t.pts)||r.lineposition,c=_n.castOption(e.insidetextfont.shadow,t.pts)||_n.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||vge.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:f,shadow:c}}function yge(e,t){for(var r,n,i=0;i=-4;_-=2)g(Math.PI*_,"tan");for(_=4;_>=-4;_-=2)g(Math.PI*(_+1),"tan")}if(c||d){for(_=4;_>=-4;_-=2)g(Math.PI*(_+1.5),"rad");for(_=4;_>=-4;_-=2)g(Math.PI*(_+.5),"rad")}}if(s||v||c){var T=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/T,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;m.push(b)}(v||d)&&(b=fge(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,m.push(b)),(v||h)&&(b=cge(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,m.push(b));for(var w=0,k=0,x=0;x=1)break}return m[w]}function vdt(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function pdt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function Tge(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=Age(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var l=gdt(e.r,e.trace.aspectratio),u=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(u=u+l,o.x-=(1+i)*l,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?u*=2:a.title.position.indexOf("right")!==-1&&(u=u+l,o.x+=(1+i)*l,s.tx-=e.titleBox.width/2),r=u/e.titleBox.width,n=aq(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function gdt(e,t){return e/(t===void 0?1:t)}function aq(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function Age(e){var t=e.pull;if(!t)return 0;var r;if(Js.isArrayOrTypedArray(t))for(t=0,r=0;rt&&(t=e.pull[r]);return t}function mdt(e,t){var r,n,i,a,o,s,l,u,f,c,h,d,v;function m(T,w){return T.pxmid[1]-w.pxmid[1]}function b(T,w){return w.pxmid[1]-T.pxmid[1]}function g(T,w){w||(w={});var k=w.labelExtraY+(n?w.yLabelMax:w.yLabelMin),x=n?T.yLabelMin:T.yLabelMax,M=n?T.yLabelMax:T.yLabelMin,A=T.cyFinal+o(T.px0[1],T.px1[1]),p=k-x,S,y,E,C,L,R;if(p*l>0&&(T.labelExtraY=p),!!Js.isArrayOrTypedArray(t.pull))for(y=0;y=(_n.castOption(t.pull,E.pts)||0))&&((T.pxmid[1]-E.pxmid[1])*l>0?(C=E.cyFinal+o(E.px0[1],E.px1[1]),p=C-x-T.labelExtraY,p*l>0&&(T.labelExtraY+=p)):(M+T.labelExtraY-A)*l>0&&(S=3*s*Math.abs(y-c.indexOf(T)),L=E.cxFinal+a(E.px0[0],E.px1[0]),R=L+S-(T.cxFinal+T.pxmid[0])-T.labelExtraX,R*s>0&&(T.labelExtraX+=R)))}for(n=0;n<2;n++)for(i=n?m:b,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,u=e[n][r],u.sort(i),f=e[1-n][r],c=f.concat(u),d=[],h=0;h1?(u=r.r,f=u/i.aspectratio):(f=r.r,u=f*i.aspectratio),u*=(1+i.baseratio)/2,l=u*f}o=Math.min(o,l/r.vTotal)}for(n=0;nt.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/t.vTotal,.5),u.ring=1-n.hole,u.rInscribed=ddt(u,t))}function OS(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function kge(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),l=function(w){return s.indexOf(w)!==-1},u=l("label"),f=l("text"),c=l("value"),h=l("percent"),d=n.separators,v;if(v=u?[t.label]:[],f){var m=_n.getFirstFilled(i.text,t.pts);uge(m)&&v.push(m)}c&&v.push(_n.formatPieValue(t.v,d)),h&&v.push(_n.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("
")}function b(w){return{label:w.label,value:w.v,valueLabel:_n.formatPieValue(w.v,n.separators),percent:w.v/r.vTotal,percentLabel:_n.formatPiePercent(w.v/r.vTotal,n.separators),color:w.color,text:w.text,customdata:Js.castOption(i,w.i,"customdata")}}if(a){var g=Js.castOption(i,t.i,"texttemplate");if(!g)t.text="";else{var _=b(t),T=_n.getFirstFilled(i.text,t.pts);(uge(T)||T==="")&&(_.text=T),t.text=Js.texttemplateString(g,_,e._fullLayout._d3locale,_,i._meta||{})}}}function Sge(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}Cge.exports={plot:fdt,formatSliceLabel:kge,transformInsideText:xge,determineInsideTextFont:mge,positionTitleOutside:Tge,prerenderTitles:yge,layoutAreas:Mge,attachFxHandlers:gge,computeTransform:Sge}});var Dge=J((AFt,Lge)=>{"use strict";var Ege=Nr(),bdt=X1(),wdt=xl().resizeText;Lge.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");wdt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=Ege.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){Ege.select(this).call(bdt,s,a,t)})})}});var Pge=J(ex=>{"use strict";var Rge=ea();ex.name="pie";ex.plot=function(e,t,r,n){Rge.plotBasePlot(ex.name,e,t,r,n)};ex.clean=function(e,t,r,n){Rge.cleanBasePlot(ex.name,e,t,r,n)}});var qge=J((kFt,Ige)=>{"use strict";Ige.exports={attributes:Vg(),supplyDefaults:Yg().supplyDefaults,supplyLayoutDefaults:rge(),layoutAttributes:FS(),calc:Qy().calc,crossTraceCalc:Qy().crossTraceCalc,plot:BS().plot,style:Dge(),styleOne:X1(),moduleType:"trace",name:"pie",basePlotModule:Pge(),categories:["pie-like","pie","showLegend"],meta:{description:["A data visualized by the sectors of the pie is set in `values`.","The sector labels are set in `labels`.","The sector colors are set in `marker.colors`"].join(" ")}}});var zge=J((SFt,Fge)=>{"use strict";Fge.exports=qge()});var Oge=J(tx=>{"use strict";var Nge=ea();tx.name="sunburst";tx.plot=function(e,t,r,n){Nge.plotBasePlot(tx.name,e,t,r,n)};tx.clean=function(e,t,r,n){Nge.cleanBasePlot(tx.name,e,t,r,n)}});var oq=J((EFt,Bge)=>{"use strict";Bge.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var i_=J((LFt,Hge)=>{"use strict";var _dt=Qi(),Tdt=Jn().hovertemplateAttrs,Adt=Jn().texttemplateAttrs,Mdt=Da(),kdt=Wa().attributes,gd=Vg(),Uge=oq(),n_=cn().extendFlat,Sdt=Ss().pattern;Hge.exports={labels:{valType:"data_array",editType:"calc",description:["Sets the labels of each of the sectors."].join(" ")},parents:{valType:"data_array",editType:"calc",description:["Sets the parent sectors for each of the sectors.","Empty string items '' are understood to reference","the root node in the hierarchy.",'If `ids` is filled, `parents` items are understood to be "ids" themselves.',"When `ids` is not set, plotly attempts to find matching items in `labels`,","but beware they must be unique."].join(" ")},values:{valType:"data_array",editType:"calc",description:["Sets the values associated with each of the sectors.","Use with `branchvalues` to determine how the values are summed."].join(" ")},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc",description:["Determines how the items in `values` are summed.","When set to *total*, items in `values` are taken to be value of all its descendants.","When set to *remainder*, items in `values` corresponding to the root and the branches sectors","are taken to be the extra part not part of the sum of the values at their leaves."].join(" ")},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc",description:["Determines default for `values` when it is not provided,","by inferring a 1 for each of the *leaves* and/or *branches*, otherwise 0."].join(" ")},level:{valType:"any",editType:"plot",anim:!0,description:["Sets the level from which this trace hierarchy is rendered.","Set `level` to `''` to start from the root node in the hierarchy.",'Must be an "id" if `ids` is filled in, otherwise plotly attempts to find a matching',"item in `labels`."].join(" ")},maxdepth:{valType:"integer",editType:"plot",dflt:-1,description:["Sets the number of rendered sectors from any given `level`.","Set `maxdepth` to *-1* to render all the levels in the hierarchy."].join(" ")},marker:n_({colors:{valType:"data_array",editType:"calc",description:["Sets the color of each sector of this trace.","If not specified, the default trace color set is used","to pick the sector colors."].join(" ")},line:{color:n_({},gd.marker.line.color,{dflt:null,description:["Sets the color of the line enclosing each sector.","Defaults to the `paper_bgcolor` value."].join(" ")}),width:n_({},gd.marker.line.width,{dflt:1}),editType:"calc"},pattern:Sdt,editType:"calc"},Mdt("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1,description:["Sets the opacity of the leaves. With colorscale","it is defaulted to 1; otherwise it is defaulted to 0.7"].join(" ")},editType:"plot"},text:gd.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot",description:["Determines which trace information appear on the graph."].join(" ")},texttemplate:Adt({editType:"plot"},{keys:Uge.eventDataKeys.concat(["label","value"])}),hovertext:gd.hovertext,hoverinfo:n_({},_dt.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:Tdt({},{keys:Uge.eventDataKeys}),textfont:gd.textfont,insidetextorientation:gd.insidetextorientation,insidetextfont:gd.insidetextfont,outsidetextfont:n_({},gd.outsidetextfont,{description:["Sets the font used for `textinfo` lying outside the sector.","This option refers to the root of the hierarchy","presented at the center of a sunburst graph.","Please note that if a hierarchy has multiple root nodes,","this option won't have any effect and `insidetextfont` would be used."].join(" ")}),rotation:{valType:"angle",dflt:0,editType:"plot",description:["Rotates the whole diagram counterclockwise by some angle.","By default the first slice starts at 3 o'clock."].join(" ")},sort:gd.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)",description:["sets the color of the root node for a sunburst/treemap/icicle trace.","this has no effect when a colorscale is used to set the markers."].join(" ")},editType:"calc"},domain:kdt({name:"sunburst",trace:!0,editType:"calc"})}});var sq=J((DFt,jge)=>{"use strict";jge.exports={sunburstcolorway:{valType:"colorlist",editType:"calc",description:["Sets the default sunburst slice colors. Defaults to the main","`colorway` used for trace colors. If you specify a new","list here it can still be extended with lighter and darker","colors, see `extendsunburstcolors`."].join(" ")},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc",description:["If `true`, the sunburst slice colors (whether given by `sunburstcolorway` or","inherited from `colorway`) will be extended to three times its","original length by first repeating every color 20% lighter then","each color 20% darker. This is intended to reduce the likelihood","of reusing the same color when you have many slices, but you can","set `false` to disable.","Colors provided in the trace, using `marker.colors`, are never","extended."].join(" ")}}});var Wge=J((RFt,Gge)=>{"use strict";var Vge=gt(),Cdt=i_(),Edt=Wa().defaults,Ldt=Pf().handleText,Ddt=Yg().handleMarkerDefaults,Yge=Qa(),Rdt=Yge.hasColorscale,Pdt=Yge.handleDefaults;Gge.exports=function(t,r,n,i){function a(h,d){return Vge.coerce(t,r,Cdt,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),Ddt(t,r,i,a);var u=r._hasColorscale=Rdt(t,"marker","colors")||(t.marker||{}).coloraxis;u&&Pdt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var f=a("text");a("texttemplate"),r.texttemplate||a("textinfo",Vge.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate");var c="auto";Ldt(t,r,i,a,c,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),Edt(r,i,a),r._length=null}});var Zge=J((PFt,Xge)=>{"use strict";var Idt=gt(),qdt=sq();Xge.exports=function(t,r){function n(i,a){return Idt.coerce(t,r,qdt,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var a_=J((US,Jge)=>{(function(e,t){typeof US=="object"&&typeof Jge<"u"?t(US):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(US,function(e){"use strict";function t(Ye,je){return Ye.parent===je.parent?1:2}function r(Ye){return Ye.reduce(n,0)/Ye.length}function n(Ye,je){return Ye+je.x}function i(Ye){return 1+Ye.reduce(a,0)}function a(Ye,je){return Math.max(Ye,je.y)}function o(Ye){for(var je;je=Ye.children;)Ye=je[0];return Ye}function s(Ye){for(var je;je=Ye.children;)Ye=je[je.length-1];return Ye}function l(){var Ye=t,je=1,$e=1,ve=!1;function Y(ie){var Te,Ve=0;ie.eachAfter(function(St){var Vt=St.children;Vt?(St.x=r(Vt),St.y=i(Vt)):(St.x=Te?Ve+=Ye(St,Te):0,St.y=0,Te=St)});var at=o(ie),ft=s(ie),Ht=at.x-Ye(at,ft)/2,Xt=ft.x+Ye(ft,at)/2;return ie.eachAfter(ve?function(St){St.x=(St.x-ie.x)*je,St.y=(ie.y-St.y)*$e}:function(St){St.x=(St.x-Ht)/(Xt-Ht)*je,St.y=(1-(ie.y?St.y/ie.y:1))*$e})}return Y.separation=function(ie){return arguments.length?(Ye=ie,Y):Ye},Y.size=function(ie){return arguments.length?(ve=!1,je=+ie[0],$e=+ie[1],Y):ve?null:[je,$e]},Y.nodeSize=function(ie){return arguments.length?(ve=!0,je=+ie[0],$e=+ie[1],Y):ve?[je,$e]:null},Y}function u(Ye){var je=0,$e=Ye.children,ve=$e&&$e.length;if(!ve)je=1;else for(;--ve>=0;)je+=$e[ve].value;Ye.value=je}function f(){return this.eachAfter(u)}function c(Ye){var je=this,$e,ve=[je],Y,ie,Te;do for($e=ve.reverse(),ve=[];je=$e.pop();)if(Ye(je),Y=je.children,Y)for(ie=0,Te=Y.length;ie=0;--Y)$e.push(ve[Y]);return this}function d(Ye){for(var je=this,$e=[je],ve=[],Y,ie,Te;je=$e.pop();)if(ve.push(je),Y=je.children,Y)for(ie=0,Te=Y.length;ie=0;)$e+=ve[Y].value;je.value=$e})}function m(Ye){return this.eachBefore(function(je){je.children&&je.children.sort(Ye)})}function b(Ye){for(var je=this,$e=g(je,Ye),ve=[je];je!==$e;)je=je.parent,ve.push(je);for(var Y=ve.length;Ye!==$e;)ve.splice(Y,0,Ye),Ye=Ye.parent;return ve}function g(Ye,je){if(Ye===je)return Ye;var $e=Ye.ancestors(),ve=je.ancestors(),Y=null;for(Ye=$e.pop(),je=ve.pop();Ye===je;)Y=Ye,Ye=$e.pop(),je=ve.pop();return Y}function _(){for(var Ye=this,je=[Ye];Ye=Ye.parent;)je.push(Ye);return je}function T(){var Ye=[];return this.each(function(je){Ye.push(je)}),Ye}function w(){var Ye=[];return this.eachBefore(function(je){je.children||Ye.push(je)}),Ye}function k(){var Ye=this,je=[];return Ye.each(function($e){$e!==Ye&&je.push({source:$e.parent,target:$e})}),je}function x(Ye,je){var $e=new y(Ye),ve=+Ye.value&&($e.value=Ye.value),Y,ie=[$e],Te,Ve,at,ft;for(je==null&&(je=A);Y=ie.pop();)if(ve&&(Y.value=+Y.data.value),(Ve=je(Y.data))&&(ft=Ve.length))for(Y.children=new Array(ft),at=ft-1;at>=0;--at)ie.push(Te=Y.children[at]=new y(Ve[at])),Te.parent=Y,Te.depth=Y.depth+1;return $e.eachBefore(S)}function M(){return x(this).eachBefore(p)}function A(Ye){return Ye.children}function p(Ye){Ye.data=Ye.data.data}function S(Ye){var je=0;do Ye.height=je;while((Ye=Ye.parent)&&Ye.height<++je)}function y(Ye){this.data=Ye,this.depth=this.height=0,this.parent=null}y.prototype=x.prototype={constructor:y,count:f,each:c,eachAfter:d,eachBefore:h,sum:v,sort:m,path:b,ancestors:_,descendants:T,leaves:w,links:k,copy:M};var E=Array.prototype.slice;function C(Ye){for(var je=Ye.length,$e,ve;je;)ve=Math.random()*je--|0,$e=Ye[je],Ye[je]=Ye[ve],Ye[ve]=$e;return Ye}function L(Ye){for(var je=0,$e=(Ye=C(E.call(Ye))).length,ve=[],Y,ie;je<$e;)Y=Ye[je],ie&&P(ie,Y)?++je:(ie=q(ve=R(ve,Y)),je=0);return ie}function R(Ye,je){var $e,ve;if(D(je,Ye))return[je];for($e=0;$e0&&$e*$e>ve*ve+Y*Y}function D(Ye,je){for(var $e=0;$eat?(Y=(ft+at-ie)/(2*ft),Ve=Math.sqrt(Math.max(0,at/ft-Y*Y)),$e.x=Ye.x-Y*ve-Ve*Te,$e.y=Ye.y-Y*Te+Ve*ve):(Y=(ft+ie-at)/(2*ft),Ve=Math.sqrt(Math.max(0,ie/ft-Y*Y)),$e.x=je.x+Y*ve-Ve*Te,$e.y=je.y+Y*Te+Ve*ve)):($e.x=je.x+$e.r,$e.y=je.y)}function Q(Ye,je){var $e=Ye.r+je.r-1e-6,ve=je.x-Ye.x,Y=je.y-Ye.y;return $e>0&&$e*$e>ve*ve+Y*Y}function j(Ye){var je=Ye._,$e=Ye.next._,ve=je.r+$e.r,Y=(je.x*$e.r+$e.x*je.r)/ve,ie=(je.y*$e.r+$e.y*je.r)/ve;return Y*Y+ie*ie}function O(Ye){this._=Ye,this.next=null,this.previous=null}function Z(Ye){if(!(Y=Ye.length))return 0;var je,$e,ve,Y,ie,Te,Ve,at,ft,Ht,Xt;if(je=Ye[0],je.x=0,je.y=0,!(Y>1))return je.r;if($e=Ye[1],je.x=-$e.r,$e.x=je.r,$e.y=0,!(Y>2))return je.r+$e.r;ee($e,je,ve=Ye[2]),je=new O(je),$e=new O($e),ve=new O(ve),je.next=ve.previous=$e,$e.next=je.previous=ve,ve.next=$e.previous=je;e:for(Ve=3;Ve0)throw new Error("cycle");return Ve}return $e.id=function(ve){return arguments.length?(Ye=oe(ve),$e):Ye},$e.parentId=function(ve){return arguments.length?(je=oe(ve),$e):je},$e}function ce(Ye,je){return Ye.parent===je.parent?1:2}function Ee(Ye){var je=Ye.children;return je?je[0]:Ye.t}function Ae(Ye){var je=Ye.children;return je?je[je.length-1]:Ye.t}function Pe(Ye,je,$e){var ve=$e/(je.i-Ye.i);je.c-=ve,je.s+=$e,Ye.c+=ve,je.z+=$e,je.m+=$e}function He(Ye){for(var je=0,$e=0,ve=Ye.children,Y=ve.length,ie;--Y>=0;)ie=ve[Y],ie.z+=je,ie.m+=je,je+=ie.s+($e+=ie.c)}function Fe(Ye,je,$e){return Ye.a.parent===je.parent?Ye.a:$e}function ke(Ye,je){this._=Ye,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=je}ke.prototype=Object.create(y.prototype);function Ue(Ye){for(var je=new ke(Ye,0),$e,ve=[je],Y,ie,Te,Ve;$e=ve.pop();)if(ie=$e._.children)for($e.children=new Array(Ve=ie.length),Te=Ve-1;Te>=0;--Te)ve.push(Y=$e.children[Te]=new ke(ie[Te],Te)),Y.parent=$e;return(je.parent=new ke(null,0)).children=[je],je}function Ge(){var Ye=ce,je=1,$e=1,ve=null;function Y(ft){var Ht=Ue(ft);if(Ht.eachAfter(ie),Ht.parent.m=-Ht.z,Ht.eachBefore(Te),ve)ft.eachBefore(at);else{var Xt=ft,St=ft,Vt=ft;ft.eachBefore(function(tn){tn.xSt.x&&(St=tn),tn.depth>Vt.depth&&(Vt=tn)});var er=Xt===St?1:Ye(Xt,St)/2,_r=er-Xt.x,br=je/(St.x+er+_r),or=$e/(Vt.depth||1);ft.eachBefore(function(tn){tn.x=(tn.x+_r)*br,tn.y=tn.depth*or})}return ft}function ie(ft){var Ht=ft.children,Xt=ft.parent.children,St=ft.i?Xt[ft.i-1]:null;if(Ht){He(ft);var Vt=(Ht[0].z+Ht[Ht.length-1].z)/2;St?(ft.z=St.z+Ye(ft._,St._),ft.m=ft.z-Vt):ft.z=Vt}else St&&(ft.z=St.z+Ye(ft._,St._));ft.parent.A=Ve(ft,St,ft.parent.A||Xt[0])}function Te(ft){ft._.x=ft.z+ft.parent.m,ft.m+=ft.parent.m}function Ve(ft,Ht,Xt){if(Ht){for(var St=ft,Vt=ft,er=Ht,_r=St.parent.children[0],br=St.m,or=Vt.m,tn=er.m,Lr=_r.m,Gr;er=Ae(er),St=Ee(St),er&&St;)_r=Ee(_r),Vt=Ae(Vt),Vt.a=ft,Gr=er.z+tn-St.z-br+Ye(er._,St._),Gr>0&&(Pe(Fe(er,ft,Xt),ft,Gr),br+=Gr,or+=Gr),tn+=er.m,br+=St.m,Lr+=_r.m,or+=Vt.m;er&&!Ae(Vt)&&(Vt.t=er,Vt.m+=tn-or),St&&!Ee(_r)&&(_r.t=St,_r.m+=br-Lr,Xt=ft)}return Xt}function at(ft){ft.x*=je,ft.y=ft.depth*$e}return Y.separation=function(ft){return arguments.length?(Ye=ft,Y):Ye},Y.size=function(ft){return arguments.length?(ve=!1,je=+ft[0],$e=+ft[1],Y):ve?null:[je,$e]},Y.nodeSize=function(ft){return arguments.length?(ve=!0,je=+ft[0],$e=+ft[1],Y):ve?[je,$e]:null},Y}function lt(Ye,je,$e,ve,Y){for(var ie=Ye.children,Te,Ve=-1,at=ie.length,ft=Ye.value&&(Y-$e)/Ye.value;++Vetn&&(tn=ft),Hr=br*br*sn,Lr=Math.max(tn/Hr,Hr/or),Lr>Gr){br-=ft;break}Gr=Lr}Te.push(at={value:br,dice:Vt1?ve:1)},$e}(it);function Tt(){var Ye=_t,je=!1,$e=1,ve=1,Y=[0],ie=te,Te=te,Ve=te,at=te,ft=te;function Ht(St){return St.x0=St.y0=0,St.x1=$e,St.y1=ve,St.eachBefore(Xt),Y=[0],je&&St.eachBefore(Ne),St}function Xt(St){var Vt=Y[St.depth],er=St.x0+Vt,_r=St.y0+Vt,br=St.x1-Vt,or=St.y1-Vt;br=St-1){var tn=ie[Xt];tn.x0=er,tn.y0=_r,tn.x1=br,tn.y1=or;return}for(var Lr=ft[Xt],Gr=Vt/2+Lr,sn=Xt+1,Hr=St-1;sn>>1;ft[Br]or-_r){var Yn=(er*kn+br*qn)/Vt;Ht(Xt,sn,qn,er,_r,Yn,or),Ht(sn,St,kn,Yn,_r,br,or)}else{var Wn=(_r*kn+or*qn)/Vt;Ht(Xt,sn,qn,er,_r,br,Wn),Ht(sn,St,kn,er,Wn,br,or)}}}function bt(Ye,je,$e,ve,Y){(Ye.depth&1?lt:pe)(Ye,je,$e,ve,Y)}var At=function Ye(je){function $e(ve,Y,ie,Te,Ve){if((at=ve._squarify)&&at.ratio===je)for(var at,ft,Ht,Xt,St=-1,Vt,er=at.length,_r=ve.value;++St1?ve:1)},$e}(it);e.cluster=l,e.hierarchy=x,e.pack=W,e.packEnclose=L,e.packSiblings=K,e.partition=me,e.stratify=rt,e.tree=Ge,e.treemap=Tt,e.treemapBinary=nt,e.treemapDice=pe,e.treemapResquarify=At,e.treemapSlice=lt,e.treemapSliceDice=bt,e.treemapSquarify=_t,Object.defineProperty(e,"__esModule",{value:!0})})});var s_=J(o_=>{"use strict";var $ge=a_(),Fdt=dn(),rx=gt(),zdt=Qa().makeColorScaleFuncFromTrace,Ndt=Qy().makePullColorFn,Odt=Qy().generateExtendedColors,Bdt=Qa().calc,Udt=oi().ALMOST_EQUAL,Hdt={},jdt={},Vdt={};o_.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=rx.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=rx.isArrayOrTypedArray(s),u=[],f={},c={},h=function(P,D){f[P]?f[P].push(D):f[P]=[D],c[D]=1},d=function(P){return P||typeof P=="number"},v=function(P){return!l||Fdt(s[P])&&s[P]>=0},m,b,g;i?(m=Math.min(n.length,o.length),b=function(P){return d(n[P])&&v(P)},g=function(P){return String(n[P])}):(m=Math.min(a.length,o.length),b=function(P){return d(a[P])&&v(P)},g=function(P){return String(a[P])}),l&&(m=Math.min(m,s.length));for(var _=0;_1){for(var A=rx.randstr(),p=0;p{});function hv(){}function eme(){return this.rgb().formatHex()}function Kdt(){return this.rgb().formatHex8()}function Qdt(){return sme(this).formatHsl()}function tme(){return this.rgb().formatRgb()}function j0(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=Ydt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?rme(t):r===3?new ys(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?jS(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?jS(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Gdt.exec(e))?new ys(t[1],t[2],t[3],1):(t=Wdt.exec(e))?new ys(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Xdt.exec(e))?jS(t[1],t[2],t[3],t[4]):(t=Zdt.exec(e))?jS(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Jdt.exec(e))?ame(t[1],t[2]/100,t[3]/100,1):(t=$dt.exec(e))?ame(t[1],t[2]/100,t[3]/100,t[4]):Qge.hasOwnProperty(e)?rme(Qge[e]):e==="transparent"?new ys(NaN,NaN,NaN,0):null}function rme(e){return new ys(e>>16&255,e>>8&255,e&255,1)}function jS(e,t,r,n){return n<=0&&(e=t=r=NaN),new ys(e,t,r,n)}function u_(e){return e instanceof hv||(e=j0(e)),e?(e=e.rgb(),new ys(e.r,e.g,e.b,e.opacity)):new ys}function ix(e,t,r,n){return arguments.length===1?u_(e):new ys(e,t,r,n??1)}function ys(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function nme(){return`#${Gg(this.r)}${Gg(this.g)}${Gg(this.b)}`}function e0t(){return`#${Gg(this.r)}${Gg(this.g)}${Gg(this.b)}${Gg((isNaN(this.opacity)?1:this.opacity)*255)}`}function ime(){let e=YS(this.opacity);return`${e===1?"rgb(":"rgba("}${Wg(this.r)}, ${Wg(this.g)}, ${Wg(this.b)}${e===1?")":`, ${e})`}`}function YS(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Wg(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Gg(e){return e=Wg(e),(e<16?"0":"")+e.toString(16)}function ame(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new mh(e,t,r,n)}function sme(e){if(e instanceof mh)return new mh(e.h,e.s,e.l,e.opacity);if(e instanceof hv||(e=j0(e)),!e)return new mh;if(e instanceof mh)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&l<1?0:o,new mh(o,s,l,e.opacity)}function f_(e,t,r,n){return arguments.length===1?sme(e):new mh(e,t,r,n??1)}function mh(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function ome(e){return e=(e||0)%360,e<0?e+360:e}function VS(e){return Math.max(0,Math.min(1,e||0))}function lq(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var H0,Xg,nx,l_,cv,Ydt,Gdt,Wdt,Xdt,Zdt,Jdt,$dt,Qge,GS=Xi(()=>{HS();H0=.7,Xg=1/H0,nx="\\s*([+-]?\\d+)\\s*",l_="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",cv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Ydt=/^#([0-9a-f]{3,8})$/,Gdt=new RegExp(`^rgb\\(${nx},${nx},${nx}\\)$`),Wdt=new RegExp(`^rgb\\(${cv},${cv},${cv}\\)$`),Xdt=new RegExp(`^rgba\\(${nx},${nx},${nx},${l_}\\)$`),Zdt=new RegExp(`^rgba\\(${cv},${cv},${cv},${l_}\\)$`),Jdt=new RegExp(`^hsl\\(${l_},${cv},${cv}\\)$`),$dt=new RegExp(`^hsla\\(${l_},${cv},${cv},${l_}\\)$`),Qge={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,rebeccapurple:6697881,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};md(hv,j0,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:eme,formatHex:eme,formatHex8:Kdt,formatHsl:Qdt,formatRgb:tme,toString:tme});md(ys,ix,U0(hv,{brighter(e){return e=e==null?Xg:Math.pow(Xg,e),new ys(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?H0:Math.pow(H0,e),new ys(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ys(Wg(this.r),Wg(this.g),Wg(this.b),YS(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:nme,formatHex:nme,formatHex8:e0t,formatRgb:ime,toString:ime}));md(mh,f_,U0(hv,{brighter(e){return e=e==null?Xg:Math.pow(Xg,e),new mh(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H0:Math.pow(H0,e),new mh(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new ys(lq(e>=240?e-240:e+120,i,n),lq(e,i,n),lq(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new mh(ome(this.h),VS(this.s),VS(this.l),YS(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=YS(this.opacity);return`${e===1?"hsl(":"hsla("}${ome(this.h)}, ${VS(this.s)*100}%, ${VS(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var WS,XS,uq=Xi(()=>{WS=Math.PI/180,XS=180/Math.PI});function vme(e){if(e instanceof vv)return new vv(e.l,e.a,e.b,e.opacity);if(e instanceof yd)return dme(e);e instanceof ys||(e=u_(e));var t=vq(e.r),r=vq(e.g),n=vq(e.b),i=fq((.2225045*t+.7168786*r+.0606169*n)/ume),a,o;return t===r&&r===n?a=o=i:(a=fq((.4360747*t+.3850649*r+.1430804*n)/lme),o=fq((.0139322*t+.0971045*r+.7141733*n)/fme)),new vv(116*i-16,500*(a-i),200*(i-o),e.opacity)}function ox(e,t,r,n){return arguments.length===1?vme(e):new vv(e,t,r,n??1)}function vv(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function fq(e){return e>t0t?Math.pow(e,1/3):e/hme+cme}function cq(e){return e>ax?e*e*e:hme*(e-cme)}function hq(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function vq(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function r0t(e){if(e instanceof yd)return new yd(e.h,e.c,e.l,e.opacity);if(e instanceof vv||(e=vme(e)),e.a===0&&e.b===0)return new yd(NaN,0{HS();GS();uq();ZS=18,lme=.96422,ume=1,fme=.82521,cme=4/29,ax=6/29,hme=3*ax*ax,t0t=ax*ax*ax;md(vv,ox,U0(hv,{brighter(e){return new vv(this.l+ZS*(e??1),this.a,this.b,this.opacity)},darker(e){return new vv(this.l-ZS*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=lme*cq(t),e=ume*cq(e),r=fme*cq(r),new ys(hq(3.1338561*t-1.6168667*e-.4906146*r),hq(-.9787684*t+1.9161415*e+.033454*r),hq(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));md(yd,c_,U0(hv,{brighter(e){return new yd(this.h,this.c,this.l+ZS*(e??1),this.opacity)},darker(e){return new yd(this.h,this.c,this.l-ZS*(e??1),this.opacity)},rgb(){return dme(this).rgb()}}))});function n0t(e){if(e instanceof Zg)return new Zg(e.h,e.s,e.l,e.opacity);e instanceof ys||(e=u_(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(yme*n+gme*t-mme*r)/(yme+gme-mme),a=n-i,o=(h_*(r-i)-pq*a)/JS,s=Math.sqrt(o*o+a*a)/(h_*i*(1-i)),l=s?Math.atan2(o,a)*XS-120:NaN;return new Zg(l<0?l+360:l,s,i,e.opacity)}function sx(e,t,r,n){return arguments.length===1?n0t(e):new Zg(e,t,r,n??1)}function Zg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var xme,dq,pq,JS,h_,gme,mme,yme,bme=Xi(()=>{HS();GS();uq();xme=-.14861,dq=1.78277,pq=-.29227,JS=-.90649,h_=1.97294,gme=h_*JS,mme=h_*dq,yme=dq*pq-JS*xme;md(Zg,sx,U0(hv,{brighter(e){return e=e==null?Xg:Math.pow(Xg,e),new Zg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?H0:Math.pow(H0,e),new Zg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*WS,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new ys(255*(t+r*(xme*n+dq*i)),255*(t+r*(pq*n+JS*i)),255*(t+r*(h_*n)),this.opacity)}}))});var Jg=Xi(()=>{GS();pme();bme()});function gq(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function $S(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n{});function QS(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return gq((r-n/t)*t,i,a,o,s)}}var mq=Xi(()=>{KS()});var lx,yq=Xi(()=>{lx=e=>()=>e});function wme(e,t){return function(r){return e+r*t}}function i0t(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function V0(e,t){var r=t-e;return r?wme(e,r>180||r<-180?r-360*Math.round(r/360):r):lx(isNaN(e)?t:e)}function _me(e){return(e=+e)==1?io:function(t,r){return r-t?i0t(t,r,e):lx(isNaN(t)?r:t)}}function io(e,t){var r=t-e;return r?wme(e,r):lx(isNaN(e)?t:e)}var $g=Xi(()=>{yq()});function Tme(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o{Jg();KS();mq();$g();v_=function e(t){var r=_me(t);function n(i,a){var o=r((i=ix(i)).r,(a=ix(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=io(i.opacity,a.opacity);return function(f){return i.r=o(f),i.g=s(f),i.b=l(f),i.opacity=u(f),i+""}}return n.gamma=e,n}(1);Ame=Tme($S),Mme=Tme(QS)});function ux(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{});function kme(e,t){return(e5(t)?ux:bq)(e,t)}function bq(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o{d_();t5()});function r5(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var _q=Xi(()=>{});function Zu(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var p_=Xi(()=>{});function n5(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=Y0(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var Tq=Xi(()=>{d_()});function a0t(e){return function(){return e}}function o0t(e){return function(t){return e(t)+""}}function i5(e,t){var r=Mq.lastIndex=Aq.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=Mq.exec(e))&&(i=Aq.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:Zu(n,i)})),r=Aq.lastIndex;return r{p_();Mq=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Aq=new RegExp(Mq.source,"g")});function Y0(e,t){var r=typeof t,n;return t==null||r==="boolean"?lx(t):(r==="number"?Zu:r==="string"?(n=j0(t))?(t=n,v_):i5:t instanceof j0?v_:t instanceof Date?r5:e5(t)?ux:Array.isArray(t)?bq:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?n5:Zu)(e,t)}var d_=Xi(()=>{Jg();xq();wq();_q();p_();Tq();kq();yq();t5()});function Sme(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Cme=Xi(()=>{});function Eme(e,t){var r=V0(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var Lme=Xi(()=>{$g()});function Dme(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var Rme=Xi(()=>{});function Sq(e,t,r,n,i,a){var o,s,l;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(l=e*r+t*n)&&(r-=e*l,n-=t*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),e*n{Pme=180/Math.PI,a5={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function qme(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?a5:Sq(t.a,t.b,t.c,t.d,t.e,t.f)}function Fme(e){return e==null?a5:(o5||(o5=document.createElementNS("http://www.w3.org/2000/svg","g")),o5.setAttribute("transform",e),(e=o5.transform.baseVal.consolidate())?(e=e.matrix,Sq(e.a,e.b,e.c,e.d,e.e,e.f)):a5)}var o5,zme=Xi(()=>{Ime()});function Nme(e,t,r,n){function i(u){return u.length?u.pop()+" ":""}function a(u,f,c,h,d,v){if(u!==c||f!==h){var m=d.push("translate(",null,t,null,r);v.push({i:m-4,x:Zu(u,c)},{i:m-2,x:Zu(f,h)})}else(c||h)&&d.push("translate("+c+t+h+r)}function o(u,f,c,h){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),h.push({i:c.push(i(c)+"rotate(",null,n)-2,x:Zu(u,f)})):f&&c.push(i(c)+"rotate("+f+n)}function s(u,f,c,h){u!==f?h.push({i:c.push(i(c)+"skewX(",null,n)-2,x:Zu(u,f)}):f&&c.push(i(c)+"skewX("+f+n)}function l(u,f,c,h,d,v){if(u!==c||f!==h){var m=d.push(i(d)+"scale(",null,",",null,")");v.push({i:m-4,x:Zu(u,c)},{i:m-2,x:Zu(f,h)})}else(c!==1||h!==1)&&d.push(i(d)+"scale("+c+","+h+")")}return function(u,f){var c=[],h=[];return u=e(u),f=e(f),a(u.translateX,u.translateY,f.translateX,f.translateY,c,h),o(u.rotate,f.rotate,c,h),s(u.skewX,f.skewX,c,h),l(u.scaleX,u.scaleY,f.scaleX,f.scaleY,c,h),u=f=null,function(d){for(var v=-1,m=h.length,b;++v{p_();zme();Ome=Nme(qme,"px, ","px)","deg)"),Bme=Nme(Fme,", ",")",")")});function Hme(e){return((e=Math.exp(e))+1/e)/2}function l0t(e){return((e=Math.exp(e))-1/e)/2}function u0t(e){return((e=Math.exp(2*e))-1)/(e+1)}var s0t,jme,Vme=Xi(()=>{s0t=1e-12;jme=function e(t,r,n){function i(a,o){var s=a[0],l=a[1],u=a[2],f=o[0],c=o[1],h=o[2],d=f-s,v=c-l,m=d*d+v*v,b,g;if(m{Jg();$g();Gme=Yme(V0),Wme=Yme(io)});function Cq(e,t){var r=io((e=ox(e)).l,(t=ox(t)).l),n=io(e.a,t.a),i=io(e.b,t.b),a=io(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var Zme=Xi(()=>{Jg();$g()});function Jme(e){return function(t,r){var n=e((t=c_(t)).h,(r=c_(r)).h),i=io(t.c,r.c),a=io(t.l,r.l),o=io(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var $me,Kme,Qme=Xi(()=>{Jg();$g();$me=Jme(V0),Kme=Jme(io)});function e1e(e){return function t(r){r=+r;function n(i,a){var o=e((i=sx(i)).h,(a=sx(a)).h),s=io(i.s,a.s),l=io(i.l,a.l),u=io(i.opacity,a.opacity);return function(f){return i.h=o(f),i.s=s(f),i.l=l(Math.pow(f,r)),i.opacity=u(f),i+""}}return n.gamma=t,n}(1)}var t1e,r1e,n1e=Xi(()=>{Jg();$g();t1e=e1e(V0),r1e=e1e(io)});function Eq(e,t){t===void 0&&(t=e,e=Y0);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r{d_()});function a1e(e,t){for(var r=new Array(t),n=0;n{});var Kg={};k9e(Kg,{interpolate:()=>Y0,interpolateArray:()=>kme,interpolateBasis:()=>$S,interpolateBasisClosed:()=>QS,interpolateCubehelix:()=>t1e,interpolateCubehelixLong:()=>r1e,interpolateDate:()=>r5,interpolateDiscrete:()=>Sme,interpolateHcl:()=>$me,interpolateHclLong:()=>Kme,interpolateHsl:()=>Gme,interpolateHslLong:()=>Wme,interpolateHue:()=>Eme,interpolateLab:()=>Cq,interpolateNumber:()=>Zu,interpolateNumberArray:()=>ux,interpolateObject:()=>n5,interpolateRgb:()=>v_,interpolateRgbBasis:()=>Ame,interpolateRgbBasisClosed:()=>Mme,interpolateRound:()=>Dme,interpolateString:()=>i5,interpolateTransformCss:()=>Ome,interpolateTransformSvg:()=>Bme,interpolateZoom:()=>jme,piecewise:()=>Eq,quantize:()=>a1e});var Qg=Xi(()=>{d_();wq();KS();mq();_q();Cme();Lme();p_();t5();Tq();Rme();kq();Ume();Vme();xq();Xme();Zme();Qme();n1e();i1e();o1e()});var s5=J((TNt,s1e)=>{"use strict";var f0t=ln(),c0t=qr();s1e.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,l=a||o.color;if(s>=0){r.i=o.i;var u=n.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=l,r.color=l):(u.color=l,r.color=l),f0t.pointStyle(t,n,i,r)}else c0t.fill(t,l)}});var Lq=J((ANt,h1e)=>{"use strict";var l1e=Nr(),u1e=qr(),f1e=gt(),h0t=xl().resizeText,v0t=s5();function d0t(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");h0t(e,t,"sunburst"),t.each(function(r){var n=l1e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){l1e.select(this).call(c1e,o,a,e)})})}function c1e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=f1e.castOption(r,o,"marker.line.color")||u1e.defaultLine,l=f1e.castOption(r,o,"marker.line.width")||0;e.call(v0t,t,r,n).style("stroke-width",l).call(u1e.stroke,s).style("opacity",a?r.leaf.opacity:null)}h1e.exports={style:d0t,styleOne:c1e}});var xd=J(Vn=>{"use strict";var em=gt(),p0t=qr(),g0t=th(),v1e=g0();Vn.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(Vn.getPtId(n)===t)return r=n.copy()}),r||e};Vn.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a0)};Vn.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};Vn.isHeader=function(e,t){return!(Vn.isLeaf(e)||e.depth===t._maxDepth-1)};function d1e(e){return e.data.data.pid}Vn.getParent=function(e,t){return Vn.findEntryWithLevel(e,d1e(t))};Vn.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return Vn.listPath(r,t).concat(n)};Vn.getPath=function(e){return Vn.listPath(e,"label").join("/")+"/"};Vn.formatValue=v1e.formatPieValue;Vn.formatPercent=function(e,t){var r=em.formatPercent(e,0);return r==="0%"&&(r=v1e.formatPiePercent(e,t)),r}});var y_=J((kNt,m1e)=>{"use strict";var fx=Nr(),p1e=zr(),x0t=Qf().appendArrayPointValue,g_=go(),g1e=gt(),b0t=P1(),Xo=xd(),w0t=g0(),_0t=w0t.formatPieValue;m1e.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,l=o.hierarchy,u=s.type==="sunburst",f=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var c=function(v){var m=n._fullLayout;if(!(n._dragging||m.hovermode===!1)){var b=n._fullData[s.index],g=v.data.data,_=g.i,T=Xo.isHierarchyRoot(v),w=Xo.getParent(l,v),k=Xo.getValue(v),x=function(ee){return g1e.castOption(b,_,ee)},M=x("hovertemplate"),A=g_.castHoverinfo(b,m,_),p=m.separators,S;if(M||A&&A!=="none"&&A!=="skip"){var y,E;u&&(y=o.cx+v.pxmid[0]*(1-v.rInscribed),E=o.cy+v.pxmid[1]*(1-v.rInscribed)),f&&(y=v._hoverX,E=v._hoverY);var C={},L=[],R=[],I=function(ee){return L.indexOf(ee)!==-1};A&&(L=A==="all"?b._module.attributes.hoverinfo.flags:A.split("+")),C.label=g.label,I("label")&&C.label&&R.push(C.label),g.hasOwnProperty("v")&&(C.value=g.v,C.valueLabel=_0t(C.value,p),I("value")&&R.push(C.valueLabel)),C.currentPath=v.currentPath=Xo.getPath(v.data),I("current path")&&!T&&R.push(C.currentPath);var P,D=[],q=function(){D.indexOf(P)===-1&&(R.push(P),D.push(P))};C.percentParent=v.percentParent=k/Xo.getValue(w),C.parent=v.parentString=Xo.getPtLabel(w),I("percent parent")&&(P=Xo.formatPercent(C.percentParent,p)+" of "+C.parent,q()),C.percentEntry=v.percentEntry=k/Xo.getValue(r),C.entry=v.entry=Xo.getPtLabel(r),I("percent entry")&&!T&&!v.onPathbar&&(P=Xo.formatPercent(C.percentEntry,p)+" of "+C.entry,q()),C.percentRoot=v.percentRoot=k/Xo.getValue(l),C.root=v.root=Xo.getPtLabel(l),I("percent root")&&!T&&(P=Xo.formatPercent(C.percentRoot,p)+" of "+C.root,q()),C.text=x("hovertext")||x("text"),I("text")&&(P=C.text,g1e.isValidTextValue(P)&&R.push(P)),S=[m_(v,b,a.eventDataKeys)];var N={trace:b,y:E,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:R.join("
"),name:M||I("name")?b.name:void 0,color:x("hoverlabel.bgcolor")||g.color,borderColor:x("hoverlabel.bordercolor"),fontFamily:x("hoverlabel.font.family"),fontSize:x("hoverlabel.font.size"),fontColor:x("hoverlabel.font.color"),fontWeight:x("hoverlabel.font.weight"),fontStyle:x("hoverlabel.font.style"),fontVariant:x("hoverlabel.font.variant"),nameLength:x("hoverlabel.namelength"),textAlign:x("hoverlabel.align"),hovertemplate:M,hovertemplateLabels:C,eventData:S};u&&(N.x0=y-v.rInscribed*v.rpx1,N.x1=y+v.rInscribed*v.rpx1,N.idealAlign=v.pxmid[0]<0?"left":"right"),f&&(N.x=y,N.idealAlign=y<0?"left":"right");var U=[];g_.loneHover(N,{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:n,inOut_bbox:U}),S[0].bbox=U[0],s._hasHoverLabel=!0}if(f){var G=t.select("path.surface");a.styleOne(G,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:S||[m_(v,b,a.eventDataKeys)],event:fx.event})}},h=function(v){var m=n._fullLayout,b=n._fullData[s.index],g=fx.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=fx.event,n.emit("plotly_unhover",{points:[m_(g,b,a.eventDataKeys)],event:fx.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(g_.loneUnhover(m._hoverlayer.node()),s._hasHoverLabel=!1),f){var _=t.select("path.surface");a.styleOne(_,g,b,n,{hovered:!1})}},d=function(v){var m=n._fullLayout,b=n._fullData[s.index],g=u&&(Xo.isHierarchyRoot(v)||Xo.isLeaf(v)),_=Xo.getPtId(v),T=Xo.isEntry(v)?Xo.findEntryWithChild(l,_):Xo.findEntryWithLevel(l,_),w=Xo.getPtId(T),k={points:[m_(v,b,a.eventDataKeys)],event:fx.event};g||(k.nextLevel=w);var x=b0t.triggerHandler(n,"plotly_"+s.type+"click",k);if(x!==!1&&m.hovermode&&(n._hoverdata=[m_(v,b,a.eventDataKeys)],g_.click(n,fx.event)),!g&&x!==!1&&!n._dragging&&!n._transitioning){p1e.call("_storeDirectGUIEdit",b,m._tracePreGUI[b.uid],{level:b.level});var M={data:[{level:w}],traces:[s.index]},A={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};g_.loneUnhover(m._hoverlayer.node()),p1e.call("animate",n,M,A)}};t.on("mouseover",c),t.on("mouseout",h),t.on("click",d)};function m_(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a{"use strict";var x_=Nr(),T0t=a_(),yh=(Qg(),s1(Kg)).interpolate,y1e=ln(),bl=gt(),A0t=ca(),_1e=xl(),x1e=_1e.recordMinTextSize,M0t=_1e.clearMinTextSize,T1e=BS(),k0t=g0().getRotationAngle,S0t=T1e.computeTransform,C0t=T1e.transformInsideText,E0t=Lq().styleOne,L0t=mc().resizeText,D0t=y_(),Dq=oq(),fi=xd();l5.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&fi.hasTransition(r);if(M0t("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(c){return c[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),u){n&&(s=n());var f=x_.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});f.each(function(){a.selectAll("g.trace").each(function(c){b1e(e,c,this,r)})})}else o.each(function(c){b1e(e,c,this,r)}),i.uniformtext.mode&&L0t(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function b1e(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&fi.hasTransition(n),s=x_.select(r),l=s.selectAll("g.slice"),u=t[0],f=u.trace,c=u.hierarchy,h=fi.findEntryWithLevel(c,f.level),d=fi.getMaxDepth(f),v=a._size,m=f.domain,b=v.w*(m.x[1]-m.x[0]),g=v.h*(m.y[1]-m.y[0]),_=.5*Math.min(b,g),T=u.cx=v.l+v.w*(m.x[1]+m.x[0])/2,w=u.cy=v.t+v.h*(1-m.y[0])-g/2;if(!h)return l.remove();var k=null,x={};o&&l.each(function(j){x[fi.getPtId(j)]={rpx0:j.rpx0,rpx1:j.rpx1,x0:j.x0,x1:j.x1,transform:j.transform},!k&&fi.isEntry(j)&&(k=j)});var M=R0t(h).descendants(),A=h.height+1,p=0,S=d;u.hasMultipleRoots&&fi.isHierarchyRoot(h)&&(M=M.slice(1),A-=1,p=1,S+=1),M=M.filter(function(j){return j.y1<=S});var y=k0t(f.rotation);y&&M.forEach(function(j){j.x0+=y,j.x1+=y});var E=Math.min(A,d),C=function(j){return(j-p)/E*_},L=function(j,O){return[j*Math.cos(O),-j*Math.sin(O)]},R=function(j){return bl.pathAnnulus(j.rpx0,j.rpx1,j.x0,j.x1,T,w)},I=function(j){return T+w1e(j)[0]*(j.transform.rCenter||0)+(j.transform.x||0)},P=function(j){return w+w1e(j)[1]*(j.transform.rCenter||0)+(j.transform.y||0)};l=l.data(M,fi.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var j=x_.select(this),O=j.select("path.surface");O.transition().attrTween("d",function(K){var $=U(K);return function(oe){return R($(oe))}});var Z=j.select("g.slicetext");Z.attr("opacity",0)}).remove():l.exit().remove(),l.order();var D=null;if(o&&k){var q=fi.getPtId(k);l.each(function(j){D===null&&fi.getPtId(j)===q&&(D=j.x1)})}var N=l;o&&(N=N.transition().each("end",function(){var j=x_.select(this);fi.setSliceCursor(j,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),N.each(function(j){var O=x_.select(this),Z=bl.ensureSingle(O,"path","surface",function(ne){ne.style("pointer-events",i?"none":"all")});j.rpx0=C(j.y0),j.rpx1=C(j.y1),j.xmid=(j.x0+j.x1)/2,j.pxmid=L(j.rpx1,j.xmid),j.midangle=-(j.xmid-Math.PI/2),j.startangle=-(j.x0-Math.PI/2),j.stopangle=-(j.x1-Math.PI/2),j.halfangle=.5*Math.min(bl.angleDelta(j.x0,j.x1)||Math.PI,Math.PI),j.ring=1-j.rpx0/j.rpx1,j.rInscribed=P0t(j,f),o?Z.transition().attrTween("d",function(ne){var W=G(ne);return function(fe){return R(W(fe))}}):Z.attr("d",R),O.call(D0t,h,e,t,{eventDataKeys:Dq.eventDataKeys,transitionTime:Dq.CLICK_TRANSITION_TIME,transitionEasing:Dq.CLICK_TRANSITION_EASING}).call(fi.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Z.call(E0t,j,f,e);var K=bl.ensureSingle(O,"g","slicetext"),$=bl.ensureSingle(K,"text","",function(ne){ne.attr("data-notex",1)}),oe=bl.ensureUniformFontSize(e,fi.determineTextFont(f,j,a.font));$.text(l5.formatSliceLabel(j,h,f,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(y1e.font,oe).call(A0t.convertToTspans,e);var te=y1e.bBox($.node());j.transform=C0t(te,j,u),j.transform.targetX=I(j),j.transform.targetY=P(j);var V=function(ne,W){var fe=ne.transform;return S0t(fe,W),fe.fontSize=oe.size,x1e(f.type,fe,a),bl.getTextTransform(fe)};o?$.transition().attrTween("transform",function(ne){var W=ee(ne);return function(fe){return V(W(fe),te)}}):$.attr("transform",V(j,te))});function U(j){var O=fi.getPtId(j),Z=x[O],K=x[fi.getPtId(h)],$;if(K){var oe=(j.x1>K.x1?2*Math.PI:0)+y;$=j.rpx1D?2*Math.PI:0)+y;Z={x0:$,x1:$}}else Z={rpx0:_,rpx1:_},bl.extendFlat(Z,Q(j));else Z={rpx0:0,rpx1:0};else Z={x0:y,x1:y};return yh(Z,K)}function ee(j){var O=x[fi.getPtId(j)],Z,K=j.transform;if(O)Z=O;else if(Z={rpx1:j.rpx1,transform:{textPosAngle:K.textPosAngle,scale:0,rotate:K.rotate,rCenter:K.rCenter,x:K.x,y:K.y}},k)if(j.parent)if(D){var $=j.x1>D?2*Math.PI:0;Z.x0=Z.x1=$}else bl.extendFlat(Z,Q(j));else Z.x0=Z.x1=y;else Z.x0=Z.x1=y;var oe=yh(Z.transform.textPosAngle,j.transform.textPosAngle),te=yh(Z.rpx1,j.rpx1),V=yh(Z.x0,j.x0),ne=yh(Z.x1,j.x1),W=yh(Z.transform.scale,K.scale),fe=yh(Z.transform.rotate,K.rotate),ge=K.rCenter===0?3:Z.transform.rCenter===0?1/3:1,Ce=yh(Z.transform.rCenter,K.rCenter),Ne=function(pe){return Ce(Math.pow(pe,ge))};return function(pe){var me=te(pe),Ie=V(pe),Re=ne(pe),ze=Ne(pe),Be=L(me,(Ie+Re)/2),tt=oe(pe),rt={pxmid:Be,rpx1:me,transform:{textPosAngle:tt,rCenter:ze,x:K.x,y:K.y}};return x1e(f.type,K,a),{transform:{targetX:I(rt),targetY:P(rt),scale:W(pe),rotate:fe(pe),rCenter:ze}}}}function Q(j){var O=j.parent,Z=x[fi.getPtId(O)],K={};if(Z){var $=O.children,oe=$.indexOf(j),te=$.length,V=yh(Z.x0,Z.x1);K.x0=V(oe/te),K.x1=V(oe/te)}else K.x0=K.x1=0;return K}}function R0t(e){return T0t.partition().size([2*Math.PI,e.height+1])(e)}l5.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,l=n[0],u=e.data.data,f=l.hierarchy,c=fi.isHierarchyRoot(e),h=fi.getParent(f,e),d=fi.getValue(e);if(!a){var v=o.split("+"),m=function(p){return v.indexOf(p)!==-1},b=[],g;if(m("label")&&u.label&&b.push(u.label),u.hasOwnProperty("v")&&m("value")&&b.push(fi.formatValue(u.v,s)),!c){m("current path")&&b.push(fi.getPath(e.data));var _=0;m("percent parent")&&_++,m("percent entry")&&_++,m("percent root")&&_++;var T=_>1;if(_){var w,k=function(p){g=fi.formatPercent(w,s),T&&(g+=" of "+p),b.push(g)};m("percent parent")&&!c&&(w=d/fi.getValue(h),k("parent")),m("percent entry")&&(w=d/fi.getValue(t),k("entry")),m("percent root")&&(w=d/fi.getValue(f),k("root"))}}return m("text")&&(g=bl.castOption(r,u.i,"text"),bl.isValidTextValue(g)&&b.push(g)),b.join("
")}var x=bl.castOption(r,u.i,"texttemplate");if(!x)return"";var M={};u.label&&(M.label=u.label),u.hasOwnProperty("v")&&(M.value=u.v,M.valueLabel=fi.formatValue(u.v,s)),M.currentPath=fi.getPath(e.data),c||(M.percentParent=d/fi.getValue(h),M.percentParentLabel=fi.formatPercent(M.percentParent,s),M.parent=fi.getPtLabel(h)),M.percentEntry=d/fi.getValue(t),M.percentEntryLabel=fi.formatPercent(M.percentEntry,s),M.entry=fi.getPtLabel(t),M.percentRoot=d/fi.getValue(f),M.percentRootLabel=fi.formatPercent(M.percentRoot,s),M.root=fi.getPtLabel(f),u.hasOwnProperty("color")&&(M.color=u.color);var A=bl.castOption(r,u.i,"text");return(bl.isValidTextValue(A)||A==="")&&(M.text=A),M.customdata=bl.castOption(r,u.i,"customdata"),bl.texttemplateString(x,M,i._d3locale,M,r._meta||{})};function P0t(e){return e.rpx0===0&&bl.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function w1e(e){return I0t(e.rpx1,e.transform.textPosAngle)}function I0t(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var M1e=J((CNt,A1e)=>{"use strict";A1e.exports={moduleType:"trace",name:"sunburst",basePlotModule:Oge(),categories:[],animatable:!0,attributes:i_(),layoutAttributes:sq(),supplyDefaults:Wge(),supplyLayoutDefaults:Zge(),calc:s_().calc,crossTraceCalc:s_().crossTraceCalc,plot:u5().plot,style:Lq().style,colorbar:pc(),meta:{description:["Visualize hierarchal data spanning outward radially from root to leaves.","The sunburst sectors are determined by the entries in *labels* or *ids*","and in *parents*."].join(" ")}}});var S1e=J((ENt,k1e)=>{"use strict";k1e.exports=M1e()});var E1e=J(cx=>{"use strict";var C1e=ea();cx.name="treemap";cx.plot=function(e,t,r,n){C1e.plotBasePlot(cx.name,e,t,r,n)};cx.clean=function(e,t,r,n){C1e.cleanBasePlot(cx.name,e,t,r,n)}});var tm=J((DNt,L1e)=>{"use strict";L1e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var f5=J((RNt,R1e)=>{"use strict";var q0t=Jn().hovertemplateAttrs,F0t=Jn().texttemplateAttrs,z0t=Da(),N0t=Wa().attributes,rm=Vg(),Tc=i_(),D1e=tm(),Rq=cn().extendFlat,O0t=Ss().pattern;R1e.exports={labels:Tc.labels,parents:Tc.parents,values:Tc.values,branchvalues:Tc.branchvalues,count:Tc.count,level:Tc.level,maxdepth:Tc.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot",description:["Determines d3 treemap solver.","For more info please refer to https://github.com/d3/d3-hierarchy#treemap-tiling"].join(" ")},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot",description:["When using *squarify* `packing` algorithm, according to https://github.com/d3/d3-hierarchy/blob/v3.1.1/README.md#squarify_ratio","this option specifies the desired aspect ratio of the generated rectangles.","The ratio must be specified as a number greater than or equal to one.","Note that the orientation of the generated rectangles (tall or wide)","is not implied by the ratio; for example, a ratio of two will attempt","to produce a mixture of rectangles whose width:height ratio is either 2:1 or 1:2.","When using *squarify*, unlike d3 which uses the Golden Ratio i.e. 1.618034,","Plotly applies 1 to increase squares in treemap layouts."].join(" ")},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot",description:["Determines if the positions obtained from solver are flipped on each axis."].join(" ")},pad:{valType:"number",min:0,dflt:3,editType:"plot",description:["Sets the inner padding (in px)."].join(" ")},editType:"calc"},marker:Rq({pad:{t:{valType:"number",min:0,editType:"plot",description:["Sets the padding form the top (in px)."].join(" ")},l:{valType:"number",min:0,editType:"plot",description:["Sets the padding form the left (in px)."].join(" ")},r:{valType:"number",min:0,editType:"plot",description:["Sets the padding form the right (in px)."].join(" ")},b:{valType:"number",min:0,editType:"plot",description:["Sets the padding form the bottom (in px)."].join(" ")},editType:"calc"},colors:Tc.marker.colors,pattern:O0t,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style",description:["Determines if the sector colors are faded towards","the background from the leaves up to the headers.","This option is unavailable when a `colorscale` is present,","defaults to false when `marker.colors` is set,","but otherwise defaults to true.","When set to *reversed*, the fading direction is inverted,","that is the top elements within hierarchy are drawn with fully saturated colors","while the leaves are faded towards the background color."].join(" ")},line:Tc.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets the maximum rounding of corners (in px)."].join(" ")},editType:"calc"},z0t("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot",description:["Determines if the path bar is drawn","i.e. outside the trace `domain` and","with one pixel gap."].join(" ")},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot",description:["Determines on which side of the the treemap the","`pathbar` should be presented."].join(" ")},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot",description:["Determines which shape is used for edges between `barpath` labels."].join(" ")},thickness:{valType:"number",min:12,editType:"plot",description:["Sets the thickness of `pathbar` (in px). If not specified the `pathbar.textfont.size` is used","with 3 pixles extra padding on each side."].join(" ")},textfont:Rq({},rm.textfont,{description:"Sets the font used inside `pathbar`."}),editType:"calc"},text:rm.text,textinfo:Tc.textinfo,texttemplate:F0t({editType:"plot"},{keys:D1e.eventDataKeys.concat(["label","value"])}),hovertext:rm.hovertext,hoverinfo:Tc.hoverinfo,hovertemplate:q0t({},{keys:D1e.eventDataKeys}),textfont:rm.textfont,insidetextfont:rm.insidetextfont,outsidetextfont:Rq({},rm.outsidetextfont,{description:["Sets the font used for `textinfo` lying outside the sector.","This option refers to the root of the hierarchy","presented on top left corner of a treemap graph.","Please note that if a hierarchy has multiple root nodes,","this option won't have any effect and `insidetextfont` would be used."].join(" ")}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot",description:["Sets the positions of the `text` elements."].join(" ")},sort:rm.sort,root:Tc.root,domain:N0t({name:"treemap",trace:!0,editType:"calc"})}});var Pq=J((PNt,P1e)=>{"use strict";P1e.exports={treemapcolorway:{valType:"colorlist",editType:"calc",description:["Sets the default treemap slice colors. Defaults to the main","`colorway` used for trace colors. If you specify a new","list here it can still be extended with lighter and darker","colors, see `extendtreemapcolors`."].join(" ")},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc",description:["If `true`, the treemap slice colors (whether given by `treemapcolorway` or","inherited from `colorway`) will be extended to three times its","original length by first repeating every color 20% lighter then","each color 20% darker. This is intended to reduce the likelihood","of reusing the same color when you have many slices, but you can","set `false` to disable.","Colors provided in the trace, using `marker.colors`, are never","extended."].join(" ")}}});var z1e=J((INt,F1e)=>{"use strict";var I1e=gt(),B0t=f5(),U0t=qr(),H0t=Wa().defaults,j0t=Pf().handleText,V0t=qg().TEXTPAD,Y0t=Yg().handleMarkerDefaults,q1e=Qa(),G0t=q1e.hasColorscale,W0t=q1e.handleDefaults;F1e.exports=function(t,r,n,i){function a(b,g){return I1e.coerce(t,r,B0t,b,g)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var u=a("tiling.packing");u==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var f=a("text");a("texttemplate"),r.texttemplate||a("textinfo",I1e.isArrayOrTypedArray(f)?"text+label":"label"),a("hovertext"),a("hovertemplate");var c=a("pathbar.visible"),h="auto";j0t(t,r,i,a,h,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;Y0t(t,r,i,a);var v=r._hasColorscale=G0t(t,"marker","colors")||(t.marker||{}).coloraxis;v?W0t(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var m=r.textfont.size*2;a("marker.pad.t",d?m/4:m),a("marker.pad.l",m/4),a("marker.pad.r",m/4),a("marker.pad.b",d?m:m/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:U0t.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*V0t),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),H0t(r,i,a),r._length=null}});var O1e=J((qNt,N1e)=>{"use strict";var X0t=gt(),Z0t=Pq();N1e.exports=function(t,r){function n(i,a){return X0t.coerce(t,r,Z0t,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var qq=J(Iq=>{"use strict";var B1e=s_();Iq.calc=function(e,t){return B1e.calc(e,t)};Iq.crossTraceCalc=function(e){return B1e._runCrossTraceCalc("treemap",e)}});var Fq=J((zNt,U1e)=>{"use strict";U1e.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o{"use strict";var hx=a_(),J0t=Fq();H1e.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],l=n.pad[i?"right":"left"],u=n.pad[i?"left":"right"],f=n.pad[a?"top":"bottom"],c;o&&(c=l,l=s,s=c,c=u,u=f,f=c);var h=hx.treemap().tile($0t(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(l).paddingRight(u).paddingTop(s).paddingBottom(f).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&J0t(h,r,{swapXY:o,flipX:i,flipY:a}),h};function $0t(e,t){switch(e){case"squarify":return hx.treemapSquarify.ratio(t);case"binary":return hx.treemapBinary;case"dice":return hx.treemapDice;case"slice":return hx.treemapSlice;default:return hx.treemapSliceDice}}});var c5=J((ONt,G1e)=>{"use strict";var j1e=Nr(),vx=qr(),V1e=gt(),Nq=xd(),K0t=xl().resizeText,Q0t=s5();function ept(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");K0t(e,t,"treemap"),t.each(function(r){var n=j1e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){j1e.select(this).call(Y1e,o,a,e,{hovered:!1})})})}function Y1e(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,f=o.color,c=Nq.isHierarchyRoot(t),h=1;if(a)l=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(c&&f===r.root.color)h=100,l="rgba(0,0,0,0)",u=0;else if(l=V1e.castOption(r,s,"marker.line.color")||vx.defaultLine,u=V1e.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=vx.combine(vx.addOpacity(r._backgroundColor,.75),f),m;if(d===!0){var b=Nq.getMaxDepth(r);isFinite(b)?Nq.isLeaf(t)?m=0:m=r._maxVisibleLayers-(t.data.depth-r._entryDepth):m=t.data.height+1}else m=t.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var g=0;g{"use strict";var W1e=Nr(),h5=gt(),X1e=ln(),tpt=ca(),rpt=zq(),Z1e=c5().styleOne,Oq=tm(),dx=xd(),npt=y_(),Bq=!0;J1e.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,l=a.height,u=a.viewX,f=a.viewY,c=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,v=a.hasTransition,m=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,g=a.makeUpdateTextInterpolator,_={},T=t._context.staticPlot,w=t._fullLayout,k=r[0],x=k.trace,M=k.hierarchy,A=s/x._entryDepth,p=dx.listPath(n.data,"id"),S=rpt(M.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();S=S.filter(function(E){var C=p.indexOf(E.data.id);return C===-1?!1:(E.x0=A*C,E.x1=A*(C+1),E.y0=o,E.y1=o+l,E.onPathbar=!0,!0)}),S.reverse(),i=i.data(S,dx.getPtId),i.enter().append("g").classed("pathbar",!0),m(i,Bq,_,[s,l],c),i.order();var y=i;v&&(y=y.transition().each("end",function(){var E=W1e.select(this);dx.setSliceCursor(E,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),y.each(function(E){E._x0=u(E.x0),E._x1=u(E.x1),E._y0=f(E.y0),E._y1=f(E.y1),E._hoverX=u(E.x1-Math.min(s,l)/2),E._hoverY=f(E.y1-l/2);var C=W1e.select(this),L=h5.ensureSingle(C,"path","surface",function(D){D.style("pointer-events",T?"none":"all")});v?L.transition().attrTween("d",function(D){var q=b(D,Bq,_,[s,l]);return function(N){return c(q(N))}}):L.attr("d",c),C.call(npt,n,t,r,{styleOne:Z1e,eventDataKeys:Oq.eventDataKeys,transitionTime:Oq.CLICK_TRANSITION_TIME,transitionEasing:Oq.CLICK_TRANSITION_EASING}).call(dx.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),L.call(Z1e,E,x,t,{hovered:!1}),E._text=(dx.getPtLabel(E)||"").split("
").join(" ")||"";var R=h5.ensureSingle(C,"g","slicetext"),I=h5.ensureSingle(R,"text","",function(D){D.attr("data-notex",1)}),P=h5.ensureUniformFontSize(t,dx.determineTextFont(x,E,w.font,{onPathbar:!0}));I.text(E._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(X1e.font,P).call(tpt.convertToTspans,t),E.textBB=X1e.bBox(I.node()),E.transform=h(E,{fontSize:P.size,onPathbar:!0}),E.transform.fontSize=P.size,v?I.transition().attrTween("transform",function(D){var q=g(D,Bq,_,[s,l]);return function(N){return d(q(N))}}):I.attr("transform",d(E))})}});var tye=J((UNt,eye)=>{"use strict";var K1e=Nr(),Uq=(Qg(),s1(Kg)).interpolate,G0=xd(),b_=gt(),Q1e=qg().TEXTPAD,ipt=Og(),apt=ipt.toMoveInsideBar,opt=xl(),Hq=opt.recordMinTextSize,spt=tm(),lpt=$1e();function nm(e){return G0.isHierarchyRoot(e)?"":G0.getPtId(e)}eye.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],l=s.trace,u=l.type,f=u==="icicle",c=s.hierarchy,h=G0.findEntryWithLevel(c,l.level),d=K1e.select(n),v=d.selectAll("g.pathbar"),m=d.selectAll("g.slice");if(!h){v.remove(),m.remove();return}var b=G0.isHierarchyRoot(h),g=!o.uniformtext.mode&&G0.hasTransition(i),_=G0.getMaxDepth(l),T=function(ce){return ce.data.depth-h.data.depth<_},w=o._size,k=l.domain,x=w.w*(k.x[1]-k.x[0]),M=w.h*(k.y[1]-k.y[0]),A=x,p=l.pathbar.thickness,S=l.marker.line.width+spt.gapWithPathbar,y=l.pathbar.visible?l.pathbar.side.indexOf("bottom")>-1?M+S:-(p+S):0,E={x0:A,x1:A,y0:y,y1:y+p},C=function(ce,Ee,Ae){var Pe=l.tiling.pad,He=function(Ge){return Ge-Pe<=Ee.x0},Fe=function(Ge){return Ge+Pe>=Ee.x1},ke=function(Ge){return Ge-Pe<=Ee.y0},Ue=function(Ge){return Ge+Pe>=Ee.y1};return ce.x0===Ee.x0&&ce.x1===Ee.x1&&ce.y0===Ee.y0&&ce.y1===Ee.y1?{x0:ce.x0,x1:ce.x1,y0:ce.y0,y1:ce.y1}:{x0:He(ce.x0-Pe)?0:Fe(ce.x0-Pe)?Ae[0]:ce.x0,x1:He(ce.x1+Pe)?0:Fe(ce.x1+Pe)?Ae[0]:ce.x1,y0:ke(ce.y0-Pe)?0:Ue(ce.y0-Pe)?Ae[1]:ce.y0,y1:ke(ce.y1+Pe)?0:Ue(ce.y1+Pe)?Ae[1]:ce.y1}},L=null,R={},I={},P=null,D=function(ce,Ee){return Ee?R[nm(ce)]:I[nm(ce)]},q=function(ce,Ee,Ae,Pe){if(Ee)return R[nm(c)]||E;var He=I[l.level]||Ae;return T(ce)?C(ce,He,Pe):{}};s.hasMultipleRoots&&b&&_++,l._maxDepth=_,l._backgroundColor=o.paper_bgcolor,l._entryDepth=h.data.depth,l._atRootLevel=b;var N=-x/2+w.l+w.w*(k.x[1]+k.x[0])/2,U=-M/2+w.t+w.h*(1-(k.y[1]+k.y[0])/2),G=function(ce){return N+ce},ee=function(ce){return U+ce},Q=ee(0),j=G(0),O=function(ce){return j+ce},Z=function(ce){return Q+ce};function K(ce,Ee){return ce+","+Ee}var $=O(0),oe=function(ce){ce.x=Math.max($,ce.x)},te=l.pathbar.edgeshape,V=function(ce){var Ee=O(Math.max(Math.min(ce.x0,ce.x0),0)),Ae=O(Math.min(Math.max(ce.x1,ce.x1),A)),Pe=Z(ce.y0),He=Z(ce.y1),Fe=p/2,ke={},Ue={};ke.x=Ee,Ue.x=Ae,ke.y=Ue.y=(Pe+He)/2;var Ge={x:Ee,y:Pe},lt={x:Ae,y:Pe},it={x:Ae,y:He},wt={x:Ee,y:He};return te===">"?(Ge.x-=Fe,lt.x-=Fe,it.x-=Fe,wt.x-=Fe):te==="/"?(it.x-=Fe,wt.x-=Fe,ke.x-=Fe/2,Ue.x-=Fe/2):te==="\\"?(Ge.x-=Fe,lt.x-=Fe,ke.x-=Fe/2,Ue.x-=Fe/2):te==="<"&&(ke.x-=Fe,Ue.x-=Fe),oe(Ge),oe(wt),oe(ke),oe(lt),oe(it),oe(Ue),"M"+K(Ge.x,Ge.y)+"L"+K(lt.x,lt.y)+"L"+K(Ue.x,Ue.y)+"L"+K(it.x,it.y)+"L"+K(wt.x,wt.y)+"L"+K(ke.x,ke.y)+"Z"},ne=l[f?"tiling":"marker"].pad,W=function(ce){return l.textposition.indexOf(ce)!==-1},fe=W("top"),ge=W("left"),Ce=W("right"),Ne=W("bottom"),pe=function(ce){var Ee=G(ce.x0),Ae=G(ce.x1),Pe=ee(ce.y0),He=ee(ce.y1),Fe=Ae-Ee,ke=He-Pe;if(!Fe||!ke)return"";var Ue=l.marker.cornerradius||0,Ge=Math.min(Ue,Fe/2,ke/2);Ge&&ce.data&&ce.data.data&&ce.data.data.label&&(fe&&(Ge=Math.min(Ge,ne.t)),ge&&(Ge=Math.min(Ge,ne.l)),Ce&&(Ge=Math.min(Ge,ne.r)),Ne&&(Ge=Math.min(Ge,ne.b)));var lt=function(it,wt){return Ge?"a"+K(Ge,Ge)+" 0 0 1 "+K(it,wt):""};return"M"+K(Ee,Pe+Ge)+lt(Ge,-Ge)+"L"+K(Ae-Ge,Pe)+lt(Ge,Ge)+"L"+K(Ae,He-Ge)+lt(-Ge,Ge)+"L"+K(Ee+Ge,He)+lt(-Ge,-Ge)+"Z"},me=function(ce,Ee){var Ae=ce.x0,Pe=ce.x1,He=ce.y0,Fe=ce.y1,ke=ce.textBB,Ue=fe||Ee.isHeader&&!Ne,Ge=Ue?"start":Ne?"end":"middle",lt=W("right"),it=W("left")||Ee.onPathbar,wt=it?-1:lt?1:0;if(Ee.isHeader){if(Ae+=(f?ne:ne.l)-Q1e,Pe-=(f?ne:ne.r)-Q1e,Ae>=Pe){var _t=(Ae+Pe)/2;Ae=_t,Pe=_t}var Tt;Ne?(Tt=Fe-(f?ne:ne.b),He{"use strict";var upt=Nr(),fpt=xd(),cpt=xl(),hpt=cpt.clearMinTextSize,vpt=mc().resizeText,rye=tye();nye.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,l=t._fullLayout,u=l["_"+o+"layer"],f,c,h=!n;if(hpt(o,l),f=u.selectAll("g.trace."+o).data(r,function(v){return v[0].trace.uid}),f.enter().append("g").classed("trace",!0).classed(o,!0),f.order(),!l.uniformtext.mode&&fpt.hasTransition(n)){i&&(c=i());var d=upt.transition().duration(n.duration).ease(n.easing).each("end",function(){c&&c()}).each("interrupt",function(){c&&c()});d.each(function(){u.selectAll("g.trace").each(function(v){rye(t,v,this,n,s)})})}else f.each(function(v){rye(t,v,this,n,s)}),l.uniformtext.mode&&vpt(t,u.selectAll(".trace"),o);h&&f.exit().remove()}});var lye=J((jNt,sye)=>{"use strict";var iye=Nr(),v5=gt(),aye=ln(),dpt=ca(),ppt=zq(),oye=c5().styleOne,Vq=tm(),W0=xd(),gpt=y_(),mpt=u5().formatSliceLabel,Yq=!1;sye.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,m=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,g=a.prevEntry,_={},T=t._context.staticPlot,w=t._fullLayout,k=r[0],x=k.trace,M=x.textposition.indexOf("left")!==-1,A=x.textposition.indexOf("right")!==-1,p=x.textposition.indexOf("bottom")!==-1,S=!p&&!x.marker.pad.t||p&&!x.marker.pad.b,y=ppt(n,[o,s],{packing:x.tiling.packing,squarifyratio:x.tiling.squarifyratio,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,pad:{inner:x.tiling.pad,top:x.marker.pad.t,left:x.marker.pad.l,right:x.marker.pad.r,bottom:x.marker.pad.b}}),E=y.descendants(),C=1/0,L=-1/0;E.forEach(function(q){var N=q.depth;N>=x._maxDepth?(q.x0=q.x1=(q.x0+q.x1)/2,q.y0=q.y1=(q.y0+q.y1)/2):(C=Math.min(C,N),L=Math.max(L,N))}),i=i.data(E,W0.getPtId),x._maxVisibleLayers=isFinite(L)?L-C+1:0,i.enter().append("g").classed("slice",!0),v(i,Yq,_,[o,s],f),i.order();var R=null;if(d&&g){var I=W0.getPtId(g);i.each(function(q){R===null&&W0.getPtId(q)===I&&(R={x0:q.x0,x1:q.x1,y0:q.y0,y1:q.y1})})}var P=function(){return R||{x0:0,x1:o,y0:0,y1:s}},D=i;return d&&(D=D.transition().each("end",function(){var q=iye.select(this);W0.setSliceCursor(q,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),D.each(function(q){var N=W0.isHeader(q,x);q._x0=l(q.x0),q._x1=l(q.x1),q._y0=u(q.y0),q._y1=u(q.y1),q._hoverX=l(q.x1-x.marker.pad.r),q._hoverY=u(p?q.y1-x.marker.pad.b/2:q.y0+x.marker.pad.t/2);var U=iye.select(this),G=v5.ensureSingle(U,"path","surface",function(K){K.style("pointer-events",T?"none":"all")});d?G.transition().attrTween("d",function(K){var $=m(K,Yq,P(),[o,s]);return function(oe){return f($(oe))}}):G.attr("d",f),U.call(gpt,n,t,r,{styleOne:oye,eventDataKeys:Vq.eventDataKeys,transitionTime:Vq.CLICK_TRANSITION_TIME,transitionEasing:Vq.CLICK_TRANSITION_EASING}).call(W0.setSliceCursor,t,{isTransitioning:t._transitioning}),G.call(oye,q,x,t,{hovered:!1}),q.x0===q.x1||q.y0===q.y1?q._text="":N?q._text=S?"":W0.getPtLabel(q)||"":q._text=mpt(q,n,x,r,w)||"";var ee=v5.ensureSingle(U,"g","slicetext"),Q=v5.ensureSingle(ee,"text","",function(K){K.attr("data-notex",1)}),j=v5.ensureUniformFontSize(t,W0.determineTextFont(x,q,w.font)),O=q._text||" ",Z=N&&O.indexOf("
")===-1;Q.text(O).classed("slicetext",!0).attr("text-anchor",A?"end":M||Z?"start":"middle").call(aye.font,j).call(dpt.convertToTspans,t),q.textBB=aye.bBox(Q.node()),q.transform=c(q,{fontSize:j.size,isHeader:N}),q.transform.fontSize=j.size,d?Q.transition().attrTween("transform",function(K){var $=b(K,Yq,P(),[o,s]);return function(oe){return h($(oe))}}):Q.attr("transform",h(q))}),R}});var fye=J((VNt,uye)=>{"use strict";var ypt=jq(),xpt=lye();uye.exports=function(t,r,n,i){return ypt(t,r,n,i,{type:"treemap",drawDescendants:xpt})}});var hye=J((YNt,cye)=>{"use strict";cye.exports={moduleType:"trace",name:"treemap",basePlotModule:E1e(),categories:[],animatable:!0,attributes:f5(),layoutAttributes:Pq(),supplyDefaults:z1e(),supplyLayoutDefaults:O1e(),calc:qq().calc,crossTraceCalc:qq().crossTraceCalc,plot:fye(),style:c5().style,colorbar:pc(),meta:{description:["Visualize hierarchal data from leaves (and/or outer branches) towards root","with rectangles. The treemap sectors are determined by the entries in","*labels* or *ids* and in *parents*."].join(" ")}}});var dye=J((GNt,vye)=>{"use strict";vye.exports=hye()});var gye=J(px=>{"use strict";var pye=ea();px.name="icicle";px.plot=function(e,t,r,n){pye.plotBasePlot(px.name,e,t,r,n)};px.clean=function(e,t,r,n){pye.cleanBasePlot(px.name,e,t,r,n)}});var Gq=J((XNt,yye)=>{"use strict";var bpt=Jn().hovertemplateAttrs,wpt=Jn().texttemplateAttrs,_pt=Da(),Tpt=Wa().attributes,w_=Vg(),zf=i_(),d5=f5(),mye=tm(),Apt=cn().extendFlat,Mpt=Ss().pattern;yye.exports={labels:zf.labels,parents:zf.parents,values:zf.values,branchvalues:zf.branchvalues,count:zf.count,level:zf.level,maxdepth:zf.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot",description:["When set in conjunction with `tiling.flip`, determines on","which side the root nodes are drawn in the chart. If","`tiling.orientation` is *v* and `tiling.flip` is **, the root","nodes appear at the top. If `tiling.orientation` is *v* and","`tiling.flip` is *y*, the root nodes appear at the bottom. If","`tiling.orientation` is *h* and `tiling.flip` is **, the","root nodes appear at the left. If `tiling.orientation` is *h*","and `tiling.flip` is *x*, the root nodes appear at the right."].join(" ")},flip:d5.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets the inner padding (in px)."].join(" ")},editType:"calc"},marker:Apt({colors:zf.marker.colors,line:zf.marker.line,pattern:Mpt,editType:"calc"},_pt("marker",{colorAttr:"colors",anim:!1})),leaf:zf.leaf,pathbar:d5.pathbar,text:w_.text,textinfo:zf.textinfo,texttemplate:wpt({editType:"plot"},{keys:mye.eventDataKeys.concat(["label","value"])}),hovertext:w_.hovertext,hoverinfo:zf.hoverinfo,hovertemplate:bpt({},{keys:mye.eventDataKeys}),textfont:w_.textfont,insidetextfont:w_.insidetextfont,outsidetextfont:d5.outsidetextfont,textposition:d5.textposition,sort:w_.sort,root:zf.root,domain:Tpt({name:"icicle",trace:!0,editType:"calc"})}});var Wq=J((ZNt,xye)=>{"use strict";xye.exports={iciclecolorway:{valType:"colorlist",editType:"calc",description:["Sets the default icicle slice colors. Defaults to the main","`colorway` used for trace colors. If you specify a new","list here it can still be extended with lighter and darker","colors, see `extendiciclecolors`."].join(" ")},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc",description:["If `true`, the icicle slice colors (whether given by `iciclecolorway` or","inherited from `colorway`) will be extended to three times its","original length by first repeating every color 20% lighter then","each color 20% darker. This is intended to reduce the likelihood","of reusing the same color when you have many slices, but you can","set `false` to disable.","Colors provided in the trace, using `marker.colors`, are never","extended."].join(" ")}}});var Tye=J((JNt,_ye)=>{"use strict";var bye=gt(),kpt=Gq(),Spt=qr(),Cpt=Wa().defaults,Ept=Pf().handleText,Lpt=qg().TEXTPAD,Dpt=Yg().handleMarkerDefaults,wye=Qa(),Rpt=wye.hasColorscale,Ppt=wye.handleDefaults;_ye.exports=function(t,r,n,i){function a(d,v){return bye.coerce(t,r,kpt,d,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var u=a("text");a("texttemplate"),r.texttemplate||a("textinfo",bye.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate");var f=a("pathbar.visible"),c="auto";Ept(t,r,i,a,c,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),Dpt(t,r,i,a);var h=r._hasColorscale=Rpt(t,"marker","colors")||(t.marker||{}).coloraxis;h&&Ppt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:Spt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*Lpt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),Cpt(r,i,a),r._length=null}});var Mye=J(($Nt,Aye)=>{"use strict";var Ipt=gt(),qpt=Wq();Aye.exports=function(t,r){function n(i,a){return Ipt.coerce(t,r,qpt,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var Zq=J(Xq=>{"use strict";var kye=s_();Xq.calc=function(e,t){return kye.calc(e,t)};Xq.crossTraceCalc=function(e){return kye._runCrossTraceCalc("icicle",e)}});var Cye=J((QNt,Sye)=>{"use strict";var Fpt=a_(),zpt=Fq();Sye.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,l=r[0],u=r[1];s&&(l=(t.height+1)*r[0]/Math.min(t.height+1,s),u=(t.height+1)*r[1]/Math.min(t.height+1,s));var f=Fpt.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&zpt(f,r,{swapXY:o,flipX:i,flipY:a}),f}});var Jq=J((eOt,Pye)=>{"use strict";var Eye=Nr(),Lye=qr(),Dye=gt(),Npt=xl().resizeText,Opt=s5();function Bpt(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");Npt(e,t,"icicle"),t.each(function(r){var n=Eye.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){Eye.select(this).call(Rye,o,a,e)})})}function Rye(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=Dye.castOption(r,o,"marker.line.color")||Lye.defaultLine,l=Dye.castOption(r,o,"marker.line.width")||0;e.call(Opt,t,r,n).style("stroke-width",l).call(Lye.stroke,s).style("opacity",a?r.leaf.opacity:null)}Pye.exports={style:Bpt,styleOne:Rye}});var Nye=J((tOt,zye)=>{"use strict";var Iye=Nr(),p5=gt(),qye=ln(),Upt=ca(),Hpt=Cye(),Fye=Jq().styleOne,$q=tm(),gx=xd(),jpt=y_(),Vpt=u5().formatSliceLabel,Kq=!1;zye.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,f=a.pathSlice,c=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,m=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,g=a.prevEntry,_={},T=t._context.staticPlot,w=t._fullLayout,k=r[0],x=k.trace,M=x.textposition.indexOf("left")!==-1,A=x.textposition.indexOf("right")!==-1,p=x.textposition.indexOf("bottom")!==-1,S=Hpt(n,[o,s],{flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1,orientation:x.tiling.orientation,pad:{inner:x.tiling.pad},maxDepth:x._maxDepth}),y=S.descendants(),E=1/0,C=-1/0;y.forEach(function(D){var q=D.depth;q>=x._maxDepth?(D.x0=D.x1=(D.x0+D.x1)/2,D.y0=D.y1=(D.y0+D.y1)/2):(E=Math.min(E,q),C=Math.max(C,q))}),i=i.data(y,gx.getPtId),x._maxVisibleLayers=isFinite(C)?C-E+1:0,i.enter().append("g").classed("slice",!0),v(i,Kq,_,[o,s],f),i.order();var L=null;if(d&&g){var R=gx.getPtId(g);i.each(function(D){L===null&&gx.getPtId(D)===R&&(L={x0:D.x0,x1:D.x1,y0:D.y0,y1:D.y1})})}var I=function(){return L||{x0:0,x1:o,y0:0,y1:s}},P=i;return d&&(P=P.transition().each("end",function(){var D=Iye.select(this);gx.setSliceCursor(D,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),P.each(function(D){D._x0=l(D.x0),D._x1=l(D.x1),D._y0=u(D.y0),D._y1=u(D.y1),D._hoverX=l(D.x1-x.tiling.pad),D._hoverY=u(p?D.y1-x.tiling.pad/2:D.y0+x.tiling.pad/2);var q=Iye.select(this),N=p5.ensureSingle(q,"path","surface",function(Q){Q.style("pointer-events",T?"none":"all")});d?N.transition().attrTween("d",function(Q){var j=m(Q,Kq,I(),[o,s],{orientation:x.tiling.orientation,flipX:x.tiling.flip.indexOf("x")>-1,flipY:x.tiling.flip.indexOf("y")>-1});return function(O){return f(j(O))}}):N.attr("d",f),q.call(jpt,n,t,r,{styleOne:Fye,eventDataKeys:$q.eventDataKeys,transitionTime:$q.CLICK_TRANSITION_TIME,transitionEasing:$q.CLICK_TRANSITION_EASING}).call(gx.setSliceCursor,t,{isTransitioning:t._transitioning}),N.call(Fye,D,x,t,{hovered:!1}),D.x0===D.x1||D.y0===D.y1?D._text="":D._text=Vpt(D,n,x,r,w)||"";var U=p5.ensureSingle(q,"g","slicetext"),G=p5.ensureSingle(U,"text","",function(Q){Q.attr("data-notex",1)}),ee=p5.ensureUniformFontSize(t,gx.determineTextFont(x,D,w.font));G.text(D._text||" ").classed("slicetext",!0).attr("text-anchor",A?"end":M?"start":"middle").call(qye.font,ee).call(Upt.convertToTspans,t),D.textBB=qye.bBox(G.node()),D.transform=c(D,{fontSize:ee.size}),D.transform.fontSize=ee.size,d?G.transition().attrTween("transform",function(Q){var j=b(Q,Kq,I(),[o,s]);return function(O){return h(j(O))}}):G.attr("transform",h(D))}),L}});var Bye=J((rOt,Oye)=>{"use strict";var Ypt=jq(),Gpt=Nye();Oye.exports=function(t,r,n,i){return Ypt(t,r,n,i,{type:"icicle",drawDescendants:Gpt})}});var Hye=J((nOt,Uye)=>{"use strict";Uye.exports={moduleType:"trace",name:"icicle",basePlotModule:gye(),categories:[],animatable:!0,attributes:Gq(),layoutAttributes:Wq(),supplyDefaults:Tye(),supplyLayoutDefaults:Mye(),calc:Zq().calc,crossTraceCalc:Zq().crossTraceCalc,plot:Bye(),style:Jq().style,colorbar:pc(),meta:{description:["Visualize hierarchal data from leaves (and/or outer branches) towards root","with rectangles. The icicle sectors are determined by the entries in","*labels* or *ids* and in *parents*."].join(" ")}}});var Vye=J((iOt,jye)=>{"use strict";jye.exports=Hye()});var Gye=J(mx=>{"use strict";var Yye=ea();mx.name="funnelarea";mx.plot=function(e,t,r,n){Yye.plotBasePlot(mx.name,e,t,r,n)};mx.clean=function(e,t,r,n){Yye.cleanBasePlot(mx.name,e,t,r,n)}});var Qq=J((oOt,Wye)=>{"use strict";var $s=Vg(),Wpt=Qi(),Xpt=Wa().attributes,Zpt=Jn().hovertemplateAttrs,Jpt=Jn().texttemplateAttrs,im=cn().extendFlat;Wye.exports={labels:$s.labels,label0:$s.label0,dlabel:$s.dlabel,values:$s.values,marker:{colors:$s.marker.colors,line:{color:im({},$s.marker.line.color,{dflt:null,description:["Sets the color of the line enclosing each sector.","Defaults to the `paper_bgcolor` value."].join(" ")}),width:im({},$s.marker.line.width,{dflt:1}),editType:"calc"},pattern:$s.marker.pattern,editType:"calc"},text:$s.text,hovertext:$s.hovertext,scalegroup:im({},$s.scalegroup,{description:["If there are multiple funnelareas that should be sized according to","their totals, link them by providing a non-empty group id here","shared by every trace in the same group."].join(" ")}),textinfo:im({},$s.textinfo,{flags:["label","text","value","percent"]}),texttemplate:Jpt({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:im({},Wpt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:Zpt({},{keys:["label","color","value","text","percent"]}),textposition:im({},$s.textposition,{values:["inside","none"],dflt:"inside"}),textfont:$s.textfont,insidetextfont:$s.insidetextfont,title:{text:$s.title.text,font:$s.title.font,position:im({},$s.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:Xpt({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot",description:["Sets the ratio between height and width"].join(" ")},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot",description:["Sets the ratio between bottom length and maximum top length."].join(" ")}}});var e7=J((sOt,Xye)=>{"use strict";var $pt=FS().hiddenlabels;Xye.exports={hiddenlabels:$pt,funnelareacolorway:{valType:"colorlist",editType:"calc",description:["Sets the default funnelarea slice colors. Defaults to the main","`colorway` used for trace colors. If you specify a new","list here it can still be extended with lighter and darker","colors, see `extendfunnelareacolors`."].join(" ")},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc",description:["If `true`, the funnelarea slice colors (whether given by `funnelareacolorway` or","inherited from `colorway`) will be extended to three times its","original length by first repeating every color 20% lighter then","each color 20% darker. This is intended to reduce the likelihood","of reusing the same color when you have many slices, but you can","set `false` to disable.","Colors provided in the trace, using `marker.colors`, are never","extended."].join(" ")}}});var $ye=J((lOt,Jye)=>{"use strict";var Zye=gt(),Kpt=Qq(),Qpt=Wa().defaults,egt=Pf().handleText,tgt=Yg().handleLabelsAndValues,rgt=Yg().handleMarkerDefaults;Jye.exports=function(t,r,n,i){function a(m,b){return Zye.coerce(t,r,Kpt,m,b)}var o=a("labels"),s=a("values"),l=tgt(o,s),u=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!u){r.visible=!1;return}r._length=u,rgt(t,r,i,a),a("scalegroup");var f=a("text"),c=a("texttemplate"),h;if(c||(h=a("textinfo",Array.isArray(f)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),c||h&&h!=="none"){var d=a("textposition");egt(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");Qpt(r,i,a);var v=a("title.text");v&&(a("title.position"),Zye.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var Qye=J((uOt,Kye)=>{"use strict";var ngt=gt(),igt=e7();Kye.exports=function(t,r){function n(i,a){return ngt.coerce(t,r,igt,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var t7=J((fOt,txe)=>{"use strict";var exe=Qy();function agt(e,t){return exe.calc(e,t)}function ogt(e){exe.crossTraceCalc(e,{type:"funnelarea"})}txe.exports={calc:agt,crossTraceCalc:ogt}});var oxe=J((cOt,axe)=>{"use strict";var am=Nr(),r7=ln(),X0=gt(),sgt=X0.strScale,rxe=X0.strTranslate,nxe=ca(),lgt=Og(),ugt=lgt.toMoveInsideBar,ixe=xl(),fgt=ixe.recordMinTextSize,cgt=ixe.clearMinTextSize,hgt=g0(),yx=BS(),vgt=yx.attachFxHandlers,dgt=yx.determineInsideTextFont,pgt=yx.layoutAreas,ggt=yx.prerenderTitles,mgt=yx.positionTitleOutside,ygt=yx.formatSliceLabel;axe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;cgt("funnelarea",i),ggt(r,t),pgt(r,i._size),X0.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=am.select(this),s=a[0],l=s.trace;bgt(a),o.each(function(){var u=am.select(this).selectAll("g.slice").data(a);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(c,h){if(c.hidden){am.select(this).selectAll("path,g").remove();return}c.pointNumber=c.i,c.curveNumber=l.index;var d=s.cx,v=s.cy,m=am.select(this),b=m.selectAll("path.surface").data([c]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),m.call(vgt,t,a);var g="M"+(d+c.TR[0])+","+(v+c.TR[1])+n7(c.TR,c.BR)+n7(c.BR,c.BL)+n7(c.BL,c.TL)+"Z";b.attr("d",g),ygt(t,c,s);var _=hgt.castOption(l.textposition,c.pts),T=m.selectAll("g.slicetext").data(c.text&&_!=="none"?[0]:[]);T.enter().append("g").classed("slicetext",!0),T.exit().remove(),T.each(function(){var w=X0.ensureSingle(am.select(this),"text","",function(E){E.attr("data-notex",1)}),k=X0.ensureUniformFontSize(t,dgt(l,c,i.font));w.text(c.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(r7.font,k).call(nxe.convertToTspans,t);var x=r7.bBox(w.node()),M,A,p,S=Math.min(c.BL[1],c.BR[1])+v,y=Math.max(c.TL[1],c.TR[1])+v;A=Math.max(c.TL[0],c.BL[0])+d,p=Math.min(c.TR[0],c.BR[0])+d,M=ugt(A,p,S,y,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),M.fontSize=k.size,fgt(l.type,M,i),a[h].transform=M,X0.setTransormAndDisplay(w,M)})});var f=am.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);f.enter().append("g").classed("titletext",!0),f.exit().remove(),f.each(function(){var c=X0.ensureSingle(am.select(this),"text","",function(v){v.attr("data-notex",1)}),h=l.title.text;l._meta&&(h=X0.templateString(h,l._meta)),c.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(r7.font,l.title.font).call(nxe.convertToTspans,t);var d=mgt(s,i._size);c.attr("transform",rxe(d.x,d.y)+sgt(Math.min(1,d.scale))+rxe(d.tx,d.ty))})})})};function n7(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function xgt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function bgt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function f(){var C=Math.sqrt(u);return{x:C,y:-C}}function c(){var C=f();return[C.x,C.y]}var h,d=[];d.push(c());var v,m;for(v=e.length-1;v>-1;v--)if(m=e[v],!m.hidden){var b=m.v/l;u+=b,d.push(c())}var g=1/0,_=-1/0;for(v=0;v-1;v--)if(m=e[v],!m.hidden){S+=1;var y=d[S][0],E=d[S][1];m.TL=[-y,E],m.TR=[y,E],m.BL=A,m.BR=p,m.pxmid=xgt(m.TR,m.BR),A=m.TL,p=m.TR}}});var uxe=J((hOt,lxe)=>{"use strict";var sxe=Nr(),wgt=X1(),_gt=xl().resizeText;lxe.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");_gt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=sxe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){sxe.select(this).call(wgt,s,a,t)})})}});var cxe=J((vOt,fxe)=>{"use strict";fxe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:Gye(),categories:["pie-like","funnelarea","showLegend"],attributes:Qq(),layoutAttributes:e7(),supplyDefaults:$ye(),supplyLayoutDefaults:Qye(),calc:t7().calc,crossTraceCalc:t7().crossTraceCalc,plot:oxe(),style:uxe(),styleOne:X1(),meta:{description:["Visualize stages in a process using area-encoded trapezoids. This trace can be used",'to show data in a part-to-whole representation similar to a "pie" trace, wherein','each item appears in a single stage. See also the "funnel" trace type for a different',"approach to visualizing funnel data."].join(" ")}}});var vxe=J((dOt,hxe)=>{"use strict";hxe.exports=cxe()});var ao=J((pOt,dxe)=>{(function(){var e={1964:function(i,a,o){i.exports={alpha_shape:o(3502),convex_hull:o(7352),delaunay_triangulate:o(7642),gl_cone3d:o(6405),gl_error3d:o(9165),gl_heatmap2d:o(2510),gl_line3d:o(5714),gl_mesh3d:o(7201),gl_plot2d:o(1850),gl_plot3d:o(4100),gl_pointcloud2d:o(4696),gl_scatter3d:o(8418),gl_select_box:o(3161),gl_spikes2d:o(4098),gl_streamtube3d:o(7815),gl_surface3d:o(9499),ndarray:o(9618),ndarray_linear_interpolate:o(4317)}},4793:function(i,a,o){"use strict";var s;function l(ve,Y){if(!(ve instanceof Y))throw new TypeError("Cannot call a class as a function")}function u(ve,Y){for(var ie=0;ieA)throw new RangeError('The value "'+ve+'" is invalid for option "size"');var Y=new Uint8Array(ve);return Object.setPrototypeOf(Y,y.prototype),Y}function y(ve,Y,ie){if(typeof ve=="number"){if(typeof Y=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return R(ve)}return E(ve,Y,ie)}y.poolSize=8192;function E(ve,Y,ie){if(typeof ve=="string")return I(ve,Y);if(ArrayBuffer.isView(ve))return D(ve);if(ve==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+w(ve));if(bt(ve,ArrayBuffer)||ve&&bt(ve.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(bt(ve,SharedArrayBuffer)||ve&&bt(ve.buffer,SharedArrayBuffer)))return q(ve,Y,ie);if(typeof ve=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var Te=ve.valueOf&&ve.valueOf();if(Te!=null&&Te!==ve)return y.from(Te,Y,ie);var Ve=N(ve);if(Ve)return Ve;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ve[Symbol.toPrimitive]=="function")return y.from(ve[Symbol.toPrimitive]("string"),Y,ie);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+w(ve))}y.from=function(ve,Y,ie){return E(ve,Y,ie)},Object.setPrototypeOf(y.prototype,Uint8Array.prototype),Object.setPrototypeOf(y,Uint8Array);function C(ve){if(typeof ve!="number")throw new TypeError('"size" argument must be of type number');if(ve<0)throw new RangeError('The value "'+ve+'" is invalid for option "size"')}function L(ve,Y,ie){return C(ve),ve<=0?S(ve):Y!==void 0?typeof ie=="string"?S(ve).fill(Y,ie):S(ve).fill(Y):S(ve)}y.alloc=function(ve,Y,ie){return L(ve,Y,ie)};function R(ve){return C(ve),S(ve<0?0:U(ve)|0)}y.allocUnsafe=function(ve){return R(ve)},y.allocUnsafeSlow=function(ve){return R(ve)};function I(ve,Y){if((typeof Y!="string"||Y==="")&&(Y="utf8"),!y.isEncoding(Y))throw new TypeError("Unknown encoding: "+Y);var ie=ee(ve,Y)|0,Te=S(ie),Ve=Te.write(ve,Y);return Ve!==ie&&(Te=Te.slice(0,Ve)),Te}function P(ve){for(var Y=ve.length<0?0:U(ve.length)|0,ie=S(Y),Te=0;Te=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return ve|0}function G(ve){return+ve!=ve&&(ve=0),y.alloc(+ve)}y.isBuffer=function(Y){return Y!=null&&Y._isBuffer===!0&&Y!==y.prototype},y.compare=function(Y,ie){if(bt(Y,Uint8Array)&&(Y=y.from(Y,Y.offset,Y.byteLength)),bt(ie,Uint8Array)&&(ie=y.from(ie,ie.offset,ie.byteLength)),!y.isBuffer(Y)||!y.isBuffer(ie))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Y===ie)return 0;for(var Te=Y.length,Ve=ie.length,at=0,ft=Math.min(Te,Ve);atVe.length?(y.isBuffer(ft)||(ft=y.from(ft)),ft.copy(Ve,at)):Uint8Array.prototype.set.call(Ve,ft,at);else if(y.isBuffer(ft))ft.copy(Ve,at);else throw new TypeError('"list" argument must be an Array of Buffers');at+=ft.length}return Ve};function ee(ve,Y){if(y.isBuffer(ve))return ve.length;if(ArrayBuffer.isView(ve)||bt(ve,ArrayBuffer))return ve.byteLength;if(typeof ve!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+w(ve));var ie=ve.length,Te=arguments.length>2&&arguments[2]===!0;if(!Te&&ie===0)return 0;for(var Ve=!1;;)switch(Y){case"ascii":case"latin1":case"binary":return ie;case"utf8":case"utf-8":return it(ve).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ie*2;case"hex":return ie>>>1;case"base64":return Tt(ve).length;default:if(Ve)return Te?-1:it(ve).length;Y=(""+Y).toLowerCase(),Ve=!0}}y.byteLength=ee;function Q(ve,Y,ie){var Te=!1;if((Y===void 0||Y<0)&&(Y=0),Y>this.length||((ie===void 0||ie>this.length)&&(ie=this.length),ie<=0)||(ie>>>=0,Y>>>=0,ie<=Y))return"";for(ve||(ve="utf8");;)switch(ve){case"hex":return pe(this,Y,ie);case"utf8":case"utf-8":return W(this,Y,ie);case"ascii":return Ce(this,Y,ie);case"latin1":case"binary":return Ne(this,Y,ie);case"base64":return ne(this,Y,ie);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return me(this,Y,ie);default:if(Te)throw new TypeError("Unknown encoding: "+ve);ve=(ve+"").toLowerCase(),Te=!0}}y.prototype._isBuffer=!0;function j(ve,Y,ie){var Te=ve[Y];ve[Y]=ve[ie],ve[ie]=Te}y.prototype.swap16=function(){var Y=this.length;if(Y%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var ie=0;ieie&&(Y+=" ... "),""},M&&(y.prototype[M]=y.prototype.inspect),y.prototype.compare=function(Y,ie,Te,Ve,at){if(bt(Y,Uint8Array)&&(Y=y.from(Y,Y.offset,Y.byteLength)),!y.isBuffer(Y))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+w(Y));if(ie===void 0&&(ie=0),Te===void 0&&(Te=Y?Y.length:0),Ve===void 0&&(Ve=0),at===void 0&&(at=this.length),ie<0||Te>Y.length||Ve<0||at>this.length)throw new RangeError("out of range index");if(Ve>=at&&ie>=Te)return 0;if(Ve>=at)return-1;if(ie>=Te)return 1;if(ie>>>=0,Te>>>=0,Ve>>>=0,at>>>=0,this===Y)return 0;for(var ft=at-Ve,Ht=Te-ie,Xt=Math.min(ft,Ht),St=this.slice(Ve,at),Vt=Y.slice(ie,Te),er=0;er2147483647?ie=2147483647:ie<-2147483648&&(ie=-2147483648),ie=+ie,At(ie)&&(ie=Ve?0:ve.length-1),ie<0&&(ie=ve.length+ie),ie>=ve.length){if(Ve)return-1;ie=ve.length-1}else if(ie<0)if(Ve)ie=0;else return-1;if(typeof Y=="string"&&(Y=y.from(Y,Te)),y.isBuffer(Y))return Y.length===0?-1:Z(ve,Y,ie,Te,Ve);if(typeof Y=="number")return Y=Y&255,typeof Uint8Array.prototype.indexOf=="function"?Ve?Uint8Array.prototype.indexOf.call(ve,Y,ie):Uint8Array.prototype.lastIndexOf.call(ve,Y,ie):Z(ve,[Y],ie,Te,Ve);throw new TypeError("val must be string, number or Buffer")}function Z(ve,Y,ie,Te,Ve){var at=1,ft=ve.length,Ht=Y.length;if(Te!==void 0&&(Te=String(Te).toLowerCase(),Te==="ucs2"||Te==="ucs-2"||Te==="utf16le"||Te==="utf-16le")){if(ve.length<2||Y.length<2)return-1;at=2,ft/=2,Ht/=2,ie/=2}function Xt(br,or){return at===1?br[or]:br.readUInt16BE(or*at)}var St;if(Ve){var Vt=-1;for(St=ie;Stft&&(ie=ft-Ht),St=ie;St>=0;St--){for(var er=!0,_r=0;_rVe&&(Te=Ve)):Te=Ve;var at=Y.length;Te>at/2&&(Te=at/2);var ft;for(ft=0;ft>>0,isFinite(Te)?(Te=Te>>>0,Ve===void 0&&(Ve="utf8")):(Ve=Te,Te=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var at=this.length-ie;if((Te===void 0||Te>at)&&(Te=at),Y.length>0&&(Te<0||ie<0)||ie>this.length)throw new RangeError("Attempt to write outside buffer bounds");Ve||(Ve="utf8");for(var ft=!1;;)switch(Ve){case"hex":return K(this,Y,ie,Te);case"utf8":case"utf-8":return $(this,Y,ie,Te);case"ascii":case"latin1":case"binary":return oe(this,Y,ie,Te);case"base64":return te(this,Y,ie,Te);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return V(this,Y,ie,Te);default:if(ft)throw new TypeError("Unknown encoding: "+Ve);Ve=(""+Ve).toLowerCase(),ft=!0}},y.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ne(ve,Y,ie){return Y===0&&ie===ve.length?k.fromByteArray(ve):k.fromByteArray(ve.slice(Y,ie))}function W(ve,Y,ie){ie=Math.min(ve.length,ie);for(var Te=[],Ve=Y;Ve239?4:at>223?3:at>191?2:1;if(Ve+Ht<=ie){var Xt=void 0,St=void 0,Vt=void 0,er=void 0;switch(Ht){case 1:at<128&&(ft=at);break;case 2:Xt=ve[Ve+1],(Xt&192)===128&&(er=(at&31)<<6|Xt&63,er>127&&(ft=er));break;case 3:Xt=ve[Ve+1],St=ve[Ve+2],(Xt&192)===128&&(St&192)===128&&(er=(at&15)<<12|(Xt&63)<<6|St&63,er>2047&&(er<55296||er>57343)&&(ft=er));break;case 4:Xt=ve[Ve+1],St=ve[Ve+2],Vt=ve[Ve+3],(Xt&192)===128&&(St&192)===128&&(Vt&192)===128&&(er=(at&15)<<18|(Xt&63)<<12|(St&63)<<6|Vt&63,er>65535&&er<1114112&&(ft=er))}}ft===null?(ft=65533,Ht=1):ft>65535&&(ft-=65536,Te.push(ft>>>10&1023|55296),ft=56320|ft&1023),Te.push(ft),Ve+=Ht}return ge(Te)}var fe=4096;function ge(ve){var Y=ve.length;if(Y<=fe)return String.fromCharCode.apply(String,ve);for(var ie="",Te=0;TeTe)&&(ie=Te);for(var Ve="",at=Y;atTe&&(Y=Te),ie<0?(ie+=Te,ie<0&&(ie=0)):ie>Te&&(ie=Te),ieie)throw new RangeError("Trying to access beyond buffer length")}y.prototype.readUintLE=y.prototype.readUIntLE=function(Y,ie,Te){Y=Y>>>0,ie=ie>>>0,Te||Ie(Y,ie,this.length);for(var Ve=this[Y],at=1,ft=0;++ft>>0,ie=ie>>>0,Te||Ie(Y,ie,this.length);for(var Ve=this[Y+--ie],at=1;ie>0&&(at*=256);)Ve+=this[Y+--ie]*at;return Ve},y.prototype.readUint8=y.prototype.readUInt8=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,1,this.length),this[Y]},y.prototype.readUint16LE=y.prototype.readUInt16LE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,2,this.length),this[Y]|this[Y+1]<<8},y.prototype.readUint16BE=y.prototype.readUInt16BE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,2,this.length),this[Y]<<8|this[Y+1]},y.prototype.readUint32LE=y.prototype.readUInt32LE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,4,this.length),(this[Y]|this[Y+1]<<8|this[Y+2]<<16)+this[Y+3]*16777216},y.prototype.readUint32BE=y.prototype.readUInt32BE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,4,this.length),this[Y]*16777216+(this[Y+1]<<16|this[Y+2]<<8|this[Y+3])},y.prototype.readBigUInt64LE=je(function(Y){Y=Y>>>0,ke(Y,"offset");var ie=this[Y],Te=this[Y+7];(ie===void 0||Te===void 0)&&Ue(Y,this.length-8);var Ve=ie+this[++Y]*Math.pow(2,8)+this[++Y]*Math.pow(2,16)+this[++Y]*Math.pow(2,24),at=this[++Y]+this[++Y]*Math.pow(2,8)+this[++Y]*Math.pow(2,16)+Te*Math.pow(2,24);return BigInt(Ve)+(BigInt(at)<>>0,ke(Y,"offset");var ie=this[Y],Te=this[Y+7];(ie===void 0||Te===void 0)&&Ue(Y,this.length-8);var Ve=ie*Math.pow(2,24)+this[++Y]*Math.pow(2,16)+this[++Y]*Math.pow(2,8)+this[++Y],at=this[++Y]*Math.pow(2,24)+this[++Y]*Math.pow(2,16)+this[++Y]*Math.pow(2,8)+Te;return(BigInt(Ve)<>>0,ie=ie>>>0,Te||Ie(Y,ie,this.length);for(var Ve=this[Y],at=1,ft=0;++ft=at&&(Ve-=Math.pow(2,8*ie)),Ve},y.prototype.readIntBE=function(Y,ie,Te){Y=Y>>>0,ie=ie>>>0,Te||Ie(Y,ie,this.length);for(var Ve=ie,at=1,ft=this[Y+--Ve];Ve>0&&(at*=256);)ft+=this[Y+--Ve]*at;return at*=128,ft>=at&&(ft-=Math.pow(2,8*ie)),ft},y.prototype.readInt8=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,1,this.length),this[Y]&128?(255-this[Y]+1)*-1:this[Y]},y.prototype.readInt16LE=function(Y,ie){Y=Y>>>0,ie||Ie(Y,2,this.length);var Te=this[Y]|this[Y+1]<<8;return Te&32768?Te|4294901760:Te},y.prototype.readInt16BE=function(Y,ie){Y=Y>>>0,ie||Ie(Y,2,this.length);var Te=this[Y+1]|this[Y]<<8;return Te&32768?Te|4294901760:Te},y.prototype.readInt32LE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,4,this.length),this[Y]|this[Y+1]<<8|this[Y+2]<<16|this[Y+3]<<24},y.prototype.readInt32BE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,4,this.length),this[Y]<<24|this[Y+1]<<16|this[Y+2]<<8|this[Y+3]},y.prototype.readBigInt64LE=je(function(Y){Y=Y>>>0,ke(Y,"offset");var ie=this[Y],Te=this[Y+7];(ie===void 0||Te===void 0)&&Ue(Y,this.length-8);var Ve=this[Y+4]+this[Y+5]*Math.pow(2,8)+this[Y+6]*Math.pow(2,16)+(Te<<24);return(BigInt(Ve)<>>0,ke(Y,"offset");var ie=this[Y],Te=this[Y+7];(ie===void 0||Te===void 0)&&Ue(Y,this.length-8);var Ve=(ie<<24)+this[++Y]*Math.pow(2,16)+this[++Y]*Math.pow(2,8)+this[++Y];return(BigInt(Ve)<>>0,ie||Ie(Y,4,this.length),x.read(this,Y,!0,23,4)},y.prototype.readFloatBE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,4,this.length),x.read(this,Y,!1,23,4)},y.prototype.readDoubleLE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,8,this.length),x.read(this,Y,!0,52,8)},y.prototype.readDoubleBE=function(Y,ie){return Y=Y>>>0,ie||Ie(Y,8,this.length),x.read(this,Y,!1,52,8)};function Re(ve,Y,ie,Te,Ve,at){if(!y.isBuffer(ve))throw new TypeError('"buffer" argument must be a Buffer instance');if(Y>Ve||Yve.length)throw new RangeError("Index out of range")}y.prototype.writeUintLE=y.prototype.writeUIntLE=function(Y,ie,Te,Ve){if(Y=+Y,ie=ie>>>0,Te=Te>>>0,!Ve){var at=Math.pow(2,8*Te)-1;Re(this,Y,ie,Te,at,0)}var ft=1,Ht=0;for(this[ie]=Y&255;++Ht>>0,Te=Te>>>0,!Ve){var at=Math.pow(2,8*Te)-1;Re(this,Y,ie,Te,at,0)}var ft=Te-1,Ht=1;for(this[ie+ft]=Y&255;--ft>=0&&(Ht*=256);)this[ie+ft]=Y/Ht&255;return ie+Te},y.prototype.writeUint8=y.prototype.writeUInt8=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,1,255,0),this[ie]=Y&255,ie+1},y.prototype.writeUint16LE=y.prototype.writeUInt16LE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,2,65535,0),this[ie]=Y&255,this[ie+1]=Y>>>8,ie+2},y.prototype.writeUint16BE=y.prototype.writeUInt16BE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,2,65535,0),this[ie]=Y>>>8,this[ie+1]=Y&255,ie+2},y.prototype.writeUint32LE=y.prototype.writeUInt32LE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,4,4294967295,0),this[ie+3]=Y>>>24,this[ie+2]=Y>>>16,this[ie+1]=Y>>>8,this[ie]=Y&255,ie+4},y.prototype.writeUint32BE=y.prototype.writeUInt32BE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,4,4294967295,0),this[ie]=Y>>>24,this[ie+1]=Y>>>16,this[ie+2]=Y>>>8,this[ie+3]=Y&255,ie+4};function ze(ve,Y,ie,Te,Ve){Fe(Y,Te,Ve,ve,ie,7);var at=Number(Y&BigInt(4294967295));ve[ie++]=at,at=at>>8,ve[ie++]=at,at=at>>8,ve[ie++]=at,at=at>>8,ve[ie++]=at;var ft=Number(Y>>BigInt(32)&BigInt(4294967295));return ve[ie++]=ft,ft=ft>>8,ve[ie++]=ft,ft=ft>>8,ve[ie++]=ft,ft=ft>>8,ve[ie++]=ft,ie}function Be(ve,Y,ie,Te,Ve){Fe(Y,Te,Ve,ve,ie,7);var at=Number(Y&BigInt(4294967295));ve[ie+7]=at,at=at>>8,ve[ie+6]=at,at=at>>8,ve[ie+5]=at,at=at>>8,ve[ie+4]=at;var ft=Number(Y>>BigInt(32)&BigInt(4294967295));return ve[ie+3]=ft,ft=ft>>8,ve[ie+2]=ft,ft=ft>>8,ve[ie+1]=ft,ft=ft>>8,ve[ie]=ft,ie+8}y.prototype.writeBigUInt64LE=je(function(Y){var ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return ze(this,Y,ie,BigInt(0),BigInt("0xffffffffffffffff"))}),y.prototype.writeBigUInt64BE=je(function(Y){var ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Be(this,Y,ie,BigInt(0),BigInt("0xffffffffffffffff"))}),y.prototype.writeIntLE=function(Y,ie,Te,Ve){if(Y=+Y,ie=ie>>>0,!Ve){var at=Math.pow(2,8*Te-1);Re(this,Y,ie,Te,at-1,-at)}var ft=0,Ht=1,Xt=0;for(this[ie]=Y&255;++ft>0)-Xt&255;return ie+Te},y.prototype.writeIntBE=function(Y,ie,Te,Ve){if(Y=+Y,ie=ie>>>0,!Ve){var at=Math.pow(2,8*Te-1);Re(this,Y,ie,Te,at-1,-at)}var ft=Te-1,Ht=1,Xt=0;for(this[ie+ft]=Y&255;--ft>=0&&(Ht*=256);)Y<0&&Xt===0&&this[ie+ft+1]!==0&&(Xt=1),this[ie+ft]=(Y/Ht>>0)-Xt&255;return ie+Te},y.prototype.writeInt8=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,1,127,-128),Y<0&&(Y=255+Y+1),this[ie]=Y&255,ie+1},y.prototype.writeInt16LE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,2,32767,-32768),this[ie]=Y&255,this[ie+1]=Y>>>8,ie+2},y.prototype.writeInt16BE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,2,32767,-32768),this[ie]=Y>>>8,this[ie+1]=Y&255,ie+2},y.prototype.writeInt32LE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,4,2147483647,-2147483648),this[ie]=Y&255,this[ie+1]=Y>>>8,this[ie+2]=Y>>>16,this[ie+3]=Y>>>24,ie+4},y.prototype.writeInt32BE=function(Y,ie,Te){return Y=+Y,ie=ie>>>0,Te||Re(this,Y,ie,4,2147483647,-2147483648),Y<0&&(Y=4294967295+Y+1),this[ie]=Y>>>24,this[ie+1]=Y>>>16,this[ie+2]=Y>>>8,this[ie+3]=Y&255,ie+4},y.prototype.writeBigInt64LE=je(function(Y){var ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return ze(this,Y,ie,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),y.prototype.writeBigInt64BE=je(function(Y){var ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Be(this,Y,ie,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function tt(ve,Y,ie,Te,Ve,at){if(ie+Te>ve.length)throw new RangeError("Index out of range");if(ie<0)throw new RangeError("Index out of range")}function rt(ve,Y,ie,Te,Ve){return Y=+Y,ie=ie>>>0,Ve||tt(ve,Y,ie,4,34028234663852886e22,-34028234663852886e22),x.write(ve,Y,ie,Te,23,4),ie+4}y.prototype.writeFloatLE=function(Y,ie,Te){return rt(this,Y,ie,!0,Te)},y.prototype.writeFloatBE=function(Y,ie,Te){return rt(this,Y,ie,!1,Te)};function ce(ve,Y,ie,Te,Ve){return Y=+Y,ie=ie>>>0,Ve||tt(ve,Y,ie,8,17976931348623157e292,-17976931348623157e292),x.write(ve,Y,ie,Te,52,8),ie+8}y.prototype.writeDoubleLE=function(Y,ie,Te){return ce(this,Y,ie,!0,Te)},y.prototype.writeDoubleBE=function(Y,ie,Te){return ce(this,Y,ie,!1,Te)},y.prototype.copy=function(Y,ie,Te,Ve){if(!y.isBuffer(Y))throw new TypeError("argument should be a Buffer");if(Te||(Te=0),!Ve&&Ve!==0&&(Ve=this.length),ie>=Y.length&&(ie=Y.length),ie||(ie=0),Ve>0&&Ve=this.length)throw new RangeError("Index out of range");if(Ve<0)throw new RangeError("sourceEnd out of bounds");Ve>this.length&&(Ve=this.length),Y.length-ie>>0,Te=Te===void 0?this.length:Te>>>0,Y||(Y=0);var ft;if(typeof Y=="number")for(ft=ie;ftMath.pow(2,32)?Ve=Pe(String(ie)):typeof ie=="bigint"&&(Ve=String(ie),(ie>Math.pow(BigInt(2),BigInt(32))||ie<-Math.pow(BigInt(2),BigInt(32)))&&(Ve=Pe(Ve)),Ve+="n"),Te+=" It must be ".concat(Y,". Received ").concat(Ve),Te},RangeError);function Pe(ve){for(var Y="",ie=ve.length,Te=ve[0]==="-"?1:0;ie>=Te+4;ie-=3)Y="_".concat(ve.slice(ie-3,ie)).concat(Y);return"".concat(ve.slice(0,ie)).concat(Y)}function He(ve,Y,ie){ke(Y,"offset"),(ve[Y]===void 0||ve[Y+ie]===void 0)&&Ue(Y,ve.length-(ie+1))}function Fe(ve,Y,ie,Te,Ve,at){if(ve>ie||ve3?Y===0||Y===BigInt(0)?Ht=">= 0".concat(ft," and < 2").concat(ft," ** ").concat((at+1)*8).concat(ft):Ht=">= -(2".concat(ft," ** ").concat((at+1)*8-1).concat(ft,") and < 2 ** ")+"".concat((at+1)*8-1).concat(ft):Ht=">= ".concat(Y).concat(ft," and <= ").concat(ie).concat(ft),new Ee.ERR_OUT_OF_RANGE("value",Ht,ve)}He(Te,Ve,at)}function ke(ve,Y){if(typeof ve!="number")throw new Ee.ERR_INVALID_ARG_TYPE(Y,"number",ve)}function Ue(ve,Y,ie){throw Math.floor(ve)!==ve?(ke(ve,ie),new Ee.ERR_OUT_OF_RANGE(ie||"offset","an integer",ve)):Y<0?new Ee.ERR_BUFFER_OUT_OF_BOUNDS:new Ee.ERR_OUT_OF_RANGE(ie||"offset",">= ".concat(ie?1:0," and <= ").concat(Y),ve)}var Ge=/[^+/0-9A-Za-z-_]/g;function lt(ve){if(ve=ve.split("=")[0],ve=ve.trim().replace(Ge,""),ve.length<2)return"";for(;ve.length%4!==0;)ve=ve+"=";return ve}function it(ve,Y){Y=Y||1/0;for(var ie,Te=ve.length,Ve=null,at=[],ft=0;ft55295&&ie<57344){if(!Ve){if(ie>56319){(Y-=3)>-1&&at.push(239,191,189);continue}else if(ft+1===Te){(Y-=3)>-1&&at.push(239,191,189);continue}Ve=ie;continue}if(ie<56320){(Y-=3)>-1&&at.push(239,191,189),Ve=ie;continue}ie=(Ve-55296<<10|ie-56320)+65536}else Ve&&(Y-=3)>-1&&at.push(239,191,189);if(Ve=null,ie<128){if((Y-=1)<0)break;at.push(ie)}else if(ie<2048){if((Y-=2)<0)break;at.push(ie>>6|192,ie&63|128)}else if(ie<65536){if((Y-=3)<0)break;at.push(ie>>12|224,ie>>6&63|128,ie&63|128)}else if(ie<1114112){if((Y-=4)<0)break;at.push(ie>>18|240,ie>>12&63|128,ie>>6&63|128,ie&63|128)}else throw new Error("Invalid code point")}return at}function wt(ve){for(var Y=[],ie=0;ie>8,Ve=ie%256,at.push(Ve),at.push(Te);return at}function Tt(ve){return k.toByteArray(lt(ve))}function nt(ve,Y,ie,Te){var Ve;for(Ve=0;Ve=Y.length||Ve>=ve.length);++Ve)Y[Ve+ie]=ve[Ve];return Ve}function bt(ve,Y){return ve instanceof Y||ve!=null&&ve.constructor!=null&&ve.constructor.name!=null&&ve.constructor.name===Y.name}function At(ve){return ve!==ve}var Ye=function(){for(var ve="0123456789abcdef",Y=new Array(256),ie=0;ie<16;++ie)for(var Te=ie*16,Ve=0;Ve<16;++Ve)Y[Te+Ve]=ve[ie]+ve[Ve];return Y}();function je(ve){return typeof BigInt>"u"?$e:ve}function $e(){throw new Error("BigInt not supported")}},9216:function(i){"use strict";i.exports=l,i.exports.isMobile=l,i.exports.default=l;var a=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,o=/CrOS/,s=/android|ipad|playbook|silk/i;function l(u){u||(u={});var f=u.ua;if(!f&&typeof navigator<"u"&&(f=navigator.userAgent),f&&f.headers&&typeof f.headers["user-agent"]=="string"&&(f=f.headers["user-agent"]),typeof f!="string")return!1;var c=a.test(f)&&!o.test(f)||!!u.tablet&&s.test(f);return!c&&u.tablet&&u.featureDetect&&navigator&&navigator.maxTouchPoints>1&&f.indexOf("Macintosh")!==-1&&f.indexOf("Safari")!==-1&&(c=!0),c}},6296:function(i,a,o){"use strict";i.exports=h;var s=o(7261),l=o(9977),u=o(4192);function f(d,v){this._controllerNames=Object.keys(d),this._controllerList=this._controllerNames.map(function(m){return d[m]}),this._mode=v,this._active=d[v],this._active||(this._mode="turntable",this._active=d.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}var c=f.prototype;c.flush=function(d){for(var v=this._controllerList,m=0;m"u"?o(1538):WeakMap,l=o(2762),u=o(8116),f=new s;function c(h){var d=f.get(h),v=d&&(d._triangleBuffer.handle||d._triangleBuffer.buffer);if(!v||!h.isBuffer(v)){var m=l(h,new Float32Array([-1,-1,-1,4,4,-1]));d=u(h,[{buffer:m,type:h.FLOAT,size:2}]),d._triangleBuffer=m,f.set(h,d)}d.bind(),h.drawArrays(h.TRIANGLES,0,3),d.unbind()}i.exports=c},1085:function(i,a,o){var s=o(1371);i.exports=l;function l(u,f,c){f=typeof f=="number"?f:1,c=c||": ";var h=u.split(/\r?\n/),d=String(h.length+f-1).length;return h.map(function(v,m){var b=m+f,g=String(b).length,_=s(b,d-g);return _+c+v}).join(` +`)}},3952:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(f,c){for(var h=new Array(c+1),d=0;d0)throw new Error("Invalid string. Length must be a multiple of 4");var k=T.indexOf("=");k===-1&&(k=w);var x=k===w?0:4-k%4;return[k,x]}function d(T){var w=h(T),k=w[0],x=w[1];return(k+x)*3/4-x}function v(T,w,k){return(w+k)*3/4-k}function m(T){var w,k=h(T),x=k[0],M=k[1],A=new l(v(T,x,M)),p=0,S=M>0?x-4:x,y;for(y=0;y>16&255,A[p++]=w>>8&255,A[p++]=w&255;return M===2&&(w=s[T.charCodeAt(y)]<<2|s[T.charCodeAt(y+1)]>>4,A[p++]=w&255),M===1&&(w=s[T.charCodeAt(y)]<<10|s[T.charCodeAt(y+1)]<<4|s[T.charCodeAt(y+2)]>>2,A[p++]=w>>8&255,A[p++]=w&255),A}function b(T){return o[T>>18&63]+o[T>>12&63]+o[T>>6&63]+o[T&63]}function g(T,w,k){for(var x,M=[],A=w;AS?S:p+A));return x===1?(w=T[k-1],M.push(o[w>>2]+o[w<<4&63]+"==")):x===2&&(w=(T[k-2]<<8)+T[k-1],M.push(o[w>>10]+o[w>>4&63]+o[w<<2&63]+"=")),M.join("")}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,f){return s(u[0].mul(f[1]).add(f[0].mul(u[1])),u[1].mul(f[1]))}},1318:function(i){"use strict";i.exports=a;function a(o,s){return o[0].mul(s[1]).cmp(s[0].mul(o[1]))}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,f){return s(u[0].mul(f[1]),u[1].mul(f[0]))}},7842:function(i,a,o){"use strict";var s=o(6330),l=o(1533),u=o(2651),f=o(4387),c=o(869),h=o(8697);i.exports=d;function d(v,m){if(s(v))return m?h(v,d(m)):[v[0].clone(),v[1].clone()];var b=0,g,_;if(l(v))g=v.clone();else if(typeof v=="string")g=f(v);else{if(v===0)return[u(0),u(1)];if(v===Math.floor(v))g=u(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),b-=256;g=u(v)}}if(s(m))g.mul(m[1]),_=m[0].clone();else if(l(m))_=m.clone();else if(typeof m=="string")_=f(m);else if(!m)_=u(1);else if(m===Math.floor(m))_=u(m);else{for(;m!==Math.floor(m);)m=m*Math.pow(2,256),b+=256;_=u(m)}return b>0?g=g.ushln(b):b<0&&(_=_.ushln(-b)),c(g,_)}},6330:function(i,a,o){"use strict";var s=o(1533);i.exports=l;function l(u){return Array.isArray(u)&&u.length===2&&s(u[0])&&s(u[1])}},5716:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u.cmp(new s(0))}},1369:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){var f=u.length,c=u.words,h=0;if(f===1)h=c[0];else if(f===2)h=c[0]+c[1]*67108864;else for(var d=0;d20?52:h+32}},1533:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u&&typeof u=="object"&&Boolean(u.words)}},2651:function(i,a,o){"use strict";var s=o(6859),l=o(2361);i.exports=u;function u(f){var c=l.exponent(f);return c<52?new s(f):new s(f*Math.pow(2,52-c)).ushln(c-52)}},869:function(i,a,o){"use strict";var s=o(2651),l=o(5716);i.exports=u;function u(f,c){var h=l(f),d=l(c);if(h===0)return[s(0),s(1)];if(d===0)return[s(0),s(0)];d<0&&(f=f.neg(),c=c.neg());var v=f.gcd(c);return v.cmpn(1)?[f.div(v),c.div(v)]:[f,c]}},4387:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return new s(u)}},6504:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,f){return s(u[0].mul(f[0]),u[1].mul(f[1]))}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){return s(u[0])*s(u[1])}},5572:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,f){return s(u[0].mul(f[1]).sub(u[1].mul(f[0])),u[1].mul(f[1]))}},946:function(i,a,o){"use strict";var s=o(1369),l=o(4025);i.exports=u;function u(f){var c=f[0],h=f[1];if(c.cmpn(0)===0)return 0;var d=c.abs().divmod(h.abs()),v=d.div,m=s(v),b=d.mod,g=c.negative!==h.negative?-1:1;if(b.cmpn(0)===0)return g*m;if(m){var _=l(m)+4,T=s(b.ushln(_).divRound(h));return g*(m+T*Math.pow(2,-_))}else{var w=h.bitLength()-b.bitLength()+53,T=s(b.ushln(w).divRound(h));return w<1023?g*T*Math.pow(2,-w):(T*=Math.pow(2,-1023),g*T*Math.pow(2,1023-w))}}},2478:function(i){"use strict";function a(c,h,d,v,m){for(var b=m+1;v<=m;){var g=v+m>>>1,_=c[g],T=d!==void 0?d(_,h):_-h;T>=0?(b=g,m=g-1):v=g+1}return b}function o(c,h,d,v,m){for(var b=m+1;v<=m;){var g=v+m>>>1,_=c[g],T=d!==void 0?d(_,h):_-h;T>0?(b=g,m=g-1):v=g+1}return b}function s(c,h,d,v,m){for(var b=v-1;v<=m;){var g=v+m>>>1,_=c[g],T=d!==void 0?d(_,h):_-h;T<0?(b=g,v=g+1):m=g-1}return b}function l(c,h,d,v,m){for(var b=v-1;v<=m;){var g=v+m>>>1,_=c[g],T=d!==void 0?d(_,h):_-h;T<=0?(b=g,v=g+1):m=g-1}return b}function u(c,h,d,v,m){for(;v<=m;){var b=v+m>>>1,g=c[b],_=d!==void 0?d(g,h):g-h;if(_===0)return b;_<=0?v=b+1:m=b-1}return-1}function f(c,h,d,v,m,b){return typeof d=="function"?b(c,h,d,v===void 0?0:v|0,m===void 0?c.length-1:m|0):b(c,h,void 0,d===void 0?0:d|0,v===void 0?c.length-1:v|0)}i.exports={ge:function(c,h,d,v,m){return f(c,h,d,v,m,a)},gt:function(c,h,d,v,m){return f(c,h,d,v,m,o)},lt:function(c,h,d,v,m){return f(c,h,d,v,m,s)},le:function(c,h,d,v,m){return f(c,h,d,v,m,l)},eq:function(c,h,d,v,m){return f(c,h,d,v,m,u)}}},8828:function(i,a){"use strict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<0)-(u<0)},a.abs=function(u){var f=u>>o-1;return(u^f)-f},a.min=function(u,f){return f^(u^f)&-(u65535)<<4,u>>>=f,c=(u>255)<<3,u>>>=c,f|=c,c=(u>15)<<2,u>>>=c,f|=c,c=(u>3)<<1,u>>>=c,f|=c,f|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var f=32;return u&=-u,u&&f--,u&65535&&(f-=16),u&16711935&&(f-=8),u&252645135&&(f-=4),u&858993459&&(f-=2),u&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;u[f]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,f){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,u|f<<1},a.deinterleave2=function(u,f){return u=u>>>f&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,f,c){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|c<<2},a.deinterleave3=function(u,f){return u=u>>>f&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var f=u|u-1;return f+1|(~f&-~f)-1>>>s(u)+1}},6859:function(i,a,o){i=o.nmd(i),function(s,l){"use strict";function u(P,D){if(!P)throw new Error(D||"Assertion failed")}function f(P,D){P.super_=D;var q=function(){};q.prototype=D.prototype,P.prototype=new q,P.prototype.constructor=P}function c(P,D,q){if(c.isBN(P))return P;this.negative=0,this.words=null,this.length=0,this.red=null,P!==null&&((D==="le"||D==="be")&&(q=D,D=10),this._init(P||0,D||10,q||"be"))}typeof s=="object"?s.exports=c:l.BN=c,c.BN=c,c.wordSize=26;var h;try{typeof window<"u"&&typeof window.Buffer<"u"?h=window.Buffer:h=o(7790).Buffer}catch{}c.isBN=function(D){return D instanceof c?!0:D!==null&&typeof D=="object"&&D.constructor.wordSize===c.wordSize&&Array.isArray(D.words)},c.max=function(D,q){return D.cmp(q)>0?D:q},c.min=function(D,q){return D.cmp(q)<0?D:q},c.prototype._init=function(D,q,N){if(typeof D=="number")return this._initNumber(D,q,N);if(typeof D=="object")return this._initArray(D,q,N);q==="hex"&&(q=16),u(q===(q|0)&&q>=2&&q<=36),D=D.toString().replace(/\s+/g,"");var U=0;D[0]==="-"&&(U++,this.negative=1),U=0;U-=3)ee=D[U]|D[U-1]<<8|D[U-2]<<16,this.words[G]|=ee<>>26-Q&67108863,Q+=24,Q>=26&&(Q-=26,G++);else if(N==="le")for(U=0,G=0;U>>26-Q&67108863,Q+=24,Q>=26&&(Q-=26,G++);return this.strip()};function d(P,D){var q=P.charCodeAt(D);return q>=65&&q<=70?q-55:q>=97&&q<=102?q-87:q-48&15}function v(P,D,q){var N=d(P,q);return q-1>=D&&(N|=d(P,q-1)<<4),N}c.prototype._parseHex=function(D,q,N){this.length=Math.ceil((D.length-q)/6),this.words=new Array(this.length);for(var U=0;U=q;U-=2)Q=v(D,q,U)<=18?(G-=18,ee+=1,this.words[ee]|=Q>>>26):G+=8;else{var j=D.length-q;for(U=j%2===0?q+1:q;U=18?(G-=18,ee+=1,this.words[ee]|=Q>>>26):G+=8}this.strip()};function m(P,D,q,N){for(var U=0,G=Math.min(P.length,q),ee=D;ee=49?U+=Q-49+10:Q>=17?U+=Q-17+10:U+=Q}return U}c.prototype._parseBase=function(D,q,N){this.words=[0],this.length=1;for(var U=0,G=1;G<=67108863;G*=q)U++;U--,G=G/q|0;for(var ee=D.length-N,Q=ee%U,j=Math.min(ee,ee-Q)+N,O=0,Z=N;Z1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},c.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},c.prototype.inspect=function(){return(this.red?""};var b=["","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],_=[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];c.prototype.toString=function(D,q){D=D||10,q=q|0||1;var N;if(D===16||D==="hex"){N="";for(var U=0,G=0,ee=0;ee>>24-U&16777215,G!==0||ee!==this.length-1?N=b[6-j.length]+j+N:N=j+N,U+=2,U>=26&&(U-=26,ee--)}for(G!==0&&(N=G.toString(16)+N);N.length%q!==0;)N="0"+N;return this.negative!==0&&(N="-"+N),N}if(D===(D|0)&&D>=2&&D<=36){var O=g[D],Z=_[D];N="";var K=this.clone();for(K.negative=0;!K.isZero();){var $=K.modn(Z).toString(D);K=K.idivn(Z),K.isZero()?N=$+N:N=b[O-$.length]+$+N}for(this.isZero()&&(N="0"+N);N.length%q!==0;)N="0"+N;return this.negative!==0&&(N="-"+N),N}u(!1,"Base should be between 2 and 36")},c.prototype.toNumber=function(){var D=this.words[0];return this.length===2?D+=this.words[1]*67108864:this.length===3&&this.words[2]===1?D+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-D:D},c.prototype.toJSON=function(){return this.toString(16)},c.prototype.toBuffer=function(D,q){return u(typeof h<"u"),this.toArrayLike(h,D,q)},c.prototype.toArray=function(D,q){return this.toArrayLike(Array,D,q)},c.prototype.toArrayLike=function(D,q,N){var U=this.byteLength(),G=N||Math.max(1,U);u(U<=G,"byte array longer than desired length"),u(G>0,"Requested array length <= 0"),this.strip();var ee=q==="le",Q=new D(G),j,O,Z=this.clone();if(ee){for(O=0;!Z.isZero();O++)j=Z.andln(255),Z.iushrn(8),Q[O]=j;for(;O=4096&&(N+=13,q>>>=13),q>=64&&(N+=7,q>>>=7),q>=8&&(N+=4,q>>>=4),q>=2&&(N+=2,q>>>=2),N+q},c.prototype._zeroBits=function(D){if(D===0)return 26;var q=D,N=0;return q&8191||(N+=13,q>>>=13),q&127||(N+=7,q>>>=7),q&15||(N+=4,q>>>=4),q&3||(N+=2,q>>>=2),q&1||N++,N},c.prototype.bitLength=function(){var D=this.words[this.length-1],q=this._countBits(D);return(this.length-1)*26+q};function T(P){for(var D=new Array(P.bitLength()),q=0;q>>U}return D}c.prototype.zeroBits=function(){if(this.isZero())return 0;for(var D=0,q=0;qD.length?this.clone().ior(D):D.clone().ior(this)},c.prototype.uor=function(D){return this.length>D.length?this.clone().iuor(D):D.clone().iuor(this)},c.prototype.iuand=function(D){var q;this.length>D.length?q=D:q=this;for(var N=0;ND.length?this.clone().iand(D):D.clone().iand(this)},c.prototype.uand=function(D){return this.length>D.length?this.clone().iuand(D):D.clone().iuand(this)},c.prototype.iuxor=function(D){var q,N;this.length>D.length?(q=this,N=D):(q=D,N=this);for(var U=0;UD.length?this.clone().ixor(D):D.clone().ixor(this)},c.prototype.uxor=function(D){return this.length>D.length?this.clone().iuxor(D):D.clone().iuxor(this)},c.prototype.inotn=function(D){u(typeof D=="number"&&D>=0);var q=Math.ceil(D/26)|0,N=D%26;this._expand(q),N>0&&q--;for(var U=0;U0&&(this.words[U]=~this.words[U]&67108863>>26-N),this.strip()},c.prototype.notn=function(D){return this.clone().inotn(D)},c.prototype.setn=function(D,q){u(typeof D=="number"&&D>=0);var N=D/26|0,U=D%26;return this._expand(N+1),q?this.words[N]=this.words[N]|1<D.length?(N=this,U=D):(N=D,U=this);for(var G=0,ee=0;ee>>26;for(;G!==0&&ee>>26;if(this.length=N.length,G!==0)this.words[this.length]=G,this.length++;else if(N!==this)for(;eeD.length?this.clone().iadd(D):D.clone().iadd(this)},c.prototype.isub=function(D){if(D.negative!==0){D.negative=0;var q=this.iadd(D);return D.negative=1,q._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(D),this.negative=1,this._normSign();var N=this.cmp(D);if(N===0)return this.negative=0,this.length=1,this.words[0]=0,this;var U,G;N>0?(U=this,G=D):(U=D,G=this);for(var ee=0,Q=0;Q>26,this.words[Q]=q&67108863;for(;ee!==0&&Q>26,this.words[Q]=q&67108863;if(ee===0&&Q>>26,K=j&67108863,$=Math.min(O,D.length-1),oe=Math.max(0,O-P.length+1);oe<=$;oe++){var te=O-oe|0;U=P.words[te]|0,G=D.words[oe]|0,ee=U*G+K,Z+=ee/67108864|0,K=ee&67108863}q.words[O]=K|0,j=Z|0}return j!==0?q.words[O]=j|0:q.length--,q.strip()}var k=function(D,q,N){var U=D.words,G=q.words,ee=N.words,Q=0,j,O,Z,K=U[0]|0,$=K&8191,oe=K>>>13,te=U[1]|0,V=te&8191,ne=te>>>13,W=U[2]|0,fe=W&8191,ge=W>>>13,Ce=U[3]|0,Ne=Ce&8191,pe=Ce>>>13,me=U[4]|0,Ie=me&8191,Re=me>>>13,ze=U[5]|0,Be=ze&8191,tt=ze>>>13,rt=U[6]|0,ce=rt&8191,Ee=rt>>>13,Ae=U[7]|0,Pe=Ae&8191,He=Ae>>>13,Fe=U[8]|0,ke=Fe&8191,Ue=Fe>>>13,Ge=U[9]|0,lt=Ge&8191,it=Ge>>>13,wt=G[0]|0,_t=wt&8191,Tt=wt>>>13,nt=G[1]|0,bt=nt&8191,At=nt>>>13,Ye=G[2]|0,je=Ye&8191,$e=Ye>>>13,ve=G[3]|0,Y=ve&8191,ie=ve>>>13,Te=G[4]|0,Ve=Te&8191,at=Te>>>13,ft=G[5]|0,Ht=ft&8191,Xt=ft>>>13,St=G[6]|0,Vt=St&8191,er=St>>>13,_r=G[7]|0,br=_r&8191,or=_r>>>13,tn=G[8]|0,Lr=tn&8191,Gr=tn>>>13,sn=G[9]|0,Hr=sn&8191,Br=sn>>>13;N.negative=D.negative^q.negative,N.length=19,j=Math.imul($,_t),O=Math.imul($,Tt),O=O+Math.imul(oe,_t)|0,Z=Math.imul(oe,Tt);var qn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(qn>>>26)|0,qn&=67108863,j=Math.imul(V,_t),O=Math.imul(V,Tt),O=O+Math.imul(ne,_t)|0,Z=Math.imul(ne,Tt),j=j+Math.imul($,bt)|0,O=O+Math.imul($,At)|0,O=O+Math.imul(oe,bt)|0,Z=Z+Math.imul(oe,At)|0;var kn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(kn>>>26)|0,kn&=67108863,j=Math.imul(fe,_t),O=Math.imul(fe,Tt),O=O+Math.imul(ge,_t)|0,Z=Math.imul(ge,Tt),j=j+Math.imul(V,bt)|0,O=O+Math.imul(V,At)|0,O=O+Math.imul(ne,bt)|0,Z=Z+Math.imul(ne,At)|0,j=j+Math.imul($,je)|0,O=O+Math.imul($,$e)|0,O=O+Math.imul(oe,je)|0,Z=Z+Math.imul(oe,$e)|0;var Yn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Yn>>>26)|0,Yn&=67108863,j=Math.imul(Ne,_t),O=Math.imul(Ne,Tt),O=O+Math.imul(pe,_t)|0,Z=Math.imul(pe,Tt),j=j+Math.imul(fe,bt)|0,O=O+Math.imul(fe,At)|0,O=O+Math.imul(ge,bt)|0,Z=Z+Math.imul(ge,At)|0,j=j+Math.imul(V,je)|0,O=O+Math.imul(V,$e)|0,O=O+Math.imul(ne,je)|0,Z=Z+Math.imul(ne,$e)|0,j=j+Math.imul($,Y)|0,O=O+Math.imul($,ie)|0,O=O+Math.imul(oe,Y)|0,Z=Z+Math.imul(oe,ie)|0;var Wn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Wn>>>26)|0,Wn&=67108863,j=Math.imul(Ie,_t),O=Math.imul(Ie,Tt),O=O+Math.imul(Re,_t)|0,Z=Math.imul(Re,Tt),j=j+Math.imul(Ne,bt)|0,O=O+Math.imul(Ne,At)|0,O=O+Math.imul(pe,bt)|0,Z=Z+Math.imul(pe,At)|0,j=j+Math.imul(fe,je)|0,O=O+Math.imul(fe,$e)|0,O=O+Math.imul(ge,je)|0,Z=Z+Math.imul(ge,$e)|0,j=j+Math.imul(V,Y)|0,O=O+Math.imul(V,ie)|0,O=O+Math.imul(ne,Y)|0,Z=Z+Math.imul(ne,ie)|0,j=j+Math.imul($,Ve)|0,O=O+Math.imul($,at)|0,O=O+Math.imul(oe,Ve)|0,Z=Z+Math.imul(oe,at)|0;var Fn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Fn>>>26)|0,Fn&=67108863,j=Math.imul(Be,_t),O=Math.imul(Be,Tt),O=O+Math.imul(tt,_t)|0,Z=Math.imul(tt,Tt),j=j+Math.imul(Ie,bt)|0,O=O+Math.imul(Ie,At)|0,O=O+Math.imul(Re,bt)|0,Z=Z+Math.imul(Re,At)|0,j=j+Math.imul(Ne,je)|0,O=O+Math.imul(Ne,$e)|0,O=O+Math.imul(pe,je)|0,Z=Z+Math.imul(pe,$e)|0,j=j+Math.imul(fe,Y)|0,O=O+Math.imul(fe,ie)|0,O=O+Math.imul(ge,Y)|0,Z=Z+Math.imul(ge,ie)|0,j=j+Math.imul(V,Ve)|0,O=O+Math.imul(V,at)|0,O=O+Math.imul(ne,Ve)|0,Z=Z+Math.imul(ne,at)|0,j=j+Math.imul($,Ht)|0,O=O+Math.imul($,Xt)|0,O=O+Math.imul(oe,Ht)|0,Z=Z+Math.imul(oe,Xt)|0;var wn=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(wn>>>26)|0,wn&=67108863,j=Math.imul(ce,_t),O=Math.imul(ce,Tt),O=O+Math.imul(Ee,_t)|0,Z=Math.imul(Ee,Tt),j=j+Math.imul(Be,bt)|0,O=O+Math.imul(Be,At)|0,O=O+Math.imul(tt,bt)|0,Z=Z+Math.imul(tt,At)|0,j=j+Math.imul(Ie,je)|0,O=O+Math.imul(Ie,$e)|0,O=O+Math.imul(Re,je)|0,Z=Z+Math.imul(Re,$e)|0,j=j+Math.imul(Ne,Y)|0,O=O+Math.imul(Ne,ie)|0,O=O+Math.imul(pe,Y)|0,Z=Z+Math.imul(pe,ie)|0,j=j+Math.imul(fe,Ve)|0,O=O+Math.imul(fe,at)|0,O=O+Math.imul(ge,Ve)|0,Z=Z+Math.imul(ge,at)|0,j=j+Math.imul(V,Ht)|0,O=O+Math.imul(V,Xt)|0,O=O+Math.imul(ne,Ht)|0,Z=Z+Math.imul(ne,Xt)|0,j=j+Math.imul($,Vt)|0,O=O+Math.imul($,er)|0,O=O+Math.imul(oe,Vt)|0,Z=Z+Math.imul(oe,er)|0;var Si=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Si>>>26)|0,Si&=67108863,j=Math.imul(Pe,_t),O=Math.imul(Pe,Tt),O=O+Math.imul(He,_t)|0,Z=Math.imul(He,Tt),j=j+Math.imul(ce,bt)|0,O=O+Math.imul(ce,At)|0,O=O+Math.imul(Ee,bt)|0,Z=Z+Math.imul(Ee,At)|0,j=j+Math.imul(Be,je)|0,O=O+Math.imul(Be,$e)|0,O=O+Math.imul(tt,je)|0,Z=Z+Math.imul(tt,$e)|0,j=j+Math.imul(Ie,Y)|0,O=O+Math.imul(Ie,ie)|0,O=O+Math.imul(Re,Y)|0,Z=Z+Math.imul(Re,ie)|0,j=j+Math.imul(Ne,Ve)|0,O=O+Math.imul(Ne,at)|0,O=O+Math.imul(pe,Ve)|0,Z=Z+Math.imul(pe,at)|0,j=j+Math.imul(fe,Ht)|0,O=O+Math.imul(fe,Xt)|0,O=O+Math.imul(ge,Ht)|0,Z=Z+Math.imul(ge,Xt)|0,j=j+Math.imul(V,Vt)|0,O=O+Math.imul(V,er)|0,O=O+Math.imul(ne,Vt)|0,Z=Z+Math.imul(ne,er)|0,j=j+Math.imul($,br)|0,O=O+Math.imul($,or)|0,O=O+Math.imul(oe,br)|0,Z=Z+Math.imul(oe,or)|0;var Aa=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Aa>>>26)|0,Aa&=67108863,j=Math.imul(ke,_t),O=Math.imul(ke,Tt),O=O+Math.imul(Ue,_t)|0,Z=Math.imul(Ue,Tt),j=j+Math.imul(Pe,bt)|0,O=O+Math.imul(Pe,At)|0,O=O+Math.imul(He,bt)|0,Z=Z+Math.imul(He,At)|0,j=j+Math.imul(ce,je)|0,O=O+Math.imul(ce,$e)|0,O=O+Math.imul(Ee,je)|0,Z=Z+Math.imul(Ee,$e)|0,j=j+Math.imul(Be,Y)|0,O=O+Math.imul(Be,ie)|0,O=O+Math.imul(tt,Y)|0,Z=Z+Math.imul(tt,ie)|0,j=j+Math.imul(Ie,Ve)|0,O=O+Math.imul(Ie,at)|0,O=O+Math.imul(Re,Ve)|0,Z=Z+Math.imul(Re,at)|0,j=j+Math.imul(Ne,Ht)|0,O=O+Math.imul(Ne,Xt)|0,O=O+Math.imul(pe,Ht)|0,Z=Z+Math.imul(pe,Xt)|0,j=j+Math.imul(fe,Vt)|0,O=O+Math.imul(fe,er)|0,O=O+Math.imul(ge,Vt)|0,Z=Z+Math.imul(ge,er)|0,j=j+Math.imul(V,br)|0,O=O+Math.imul(V,or)|0,O=O+Math.imul(ne,br)|0,Z=Z+Math.imul(ne,or)|0,j=j+Math.imul($,Lr)|0,O=O+Math.imul($,Gr)|0,O=O+Math.imul(oe,Lr)|0,Z=Z+Math.imul(oe,Gr)|0;var ia=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(ia>>>26)|0,ia&=67108863,j=Math.imul(lt,_t),O=Math.imul(lt,Tt),O=O+Math.imul(it,_t)|0,Z=Math.imul(it,Tt),j=j+Math.imul(ke,bt)|0,O=O+Math.imul(ke,At)|0,O=O+Math.imul(Ue,bt)|0,Z=Z+Math.imul(Ue,At)|0,j=j+Math.imul(Pe,je)|0,O=O+Math.imul(Pe,$e)|0,O=O+Math.imul(He,je)|0,Z=Z+Math.imul(He,$e)|0,j=j+Math.imul(ce,Y)|0,O=O+Math.imul(ce,ie)|0,O=O+Math.imul(Ee,Y)|0,Z=Z+Math.imul(Ee,ie)|0,j=j+Math.imul(Be,Ve)|0,O=O+Math.imul(Be,at)|0,O=O+Math.imul(tt,Ve)|0,Z=Z+Math.imul(tt,at)|0,j=j+Math.imul(Ie,Ht)|0,O=O+Math.imul(Ie,Xt)|0,O=O+Math.imul(Re,Ht)|0,Z=Z+Math.imul(Re,Xt)|0,j=j+Math.imul(Ne,Vt)|0,O=O+Math.imul(Ne,er)|0,O=O+Math.imul(pe,Vt)|0,Z=Z+Math.imul(pe,er)|0,j=j+Math.imul(fe,br)|0,O=O+Math.imul(fe,or)|0,O=O+Math.imul(ge,br)|0,Z=Z+Math.imul(ge,or)|0,j=j+Math.imul(V,Lr)|0,O=O+Math.imul(V,Gr)|0,O=O+Math.imul(ne,Lr)|0,Z=Z+Math.imul(ne,Gr)|0,j=j+Math.imul($,Hr)|0,O=O+Math.imul($,Br)|0,O=O+Math.imul(oe,Hr)|0,Z=Z+Math.imul(oe,Br)|0;var An=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(An>>>26)|0,An&=67108863,j=Math.imul(lt,bt),O=Math.imul(lt,At),O=O+Math.imul(it,bt)|0,Z=Math.imul(it,At),j=j+Math.imul(ke,je)|0,O=O+Math.imul(ke,$e)|0,O=O+Math.imul(Ue,je)|0,Z=Z+Math.imul(Ue,$e)|0,j=j+Math.imul(Pe,Y)|0,O=O+Math.imul(Pe,ie)|0,O=O+Math.imul(He,Y)|0,Z=Z+Math.imul(He,ie)|0,j=j+Math.imul(ce,Ve)|0,O=O+Math.imul(ce,at)|0,O=O+Math.imul(Ee,Ve)|0,Z=Z+Math.imul(Ee,at)|0,j=j+Math.imul(Be,Ht)|0,O=O+Math.imul(Be,Xt)|0,O=O+Math.imul(tt,Ht)|0,Z=Z+Math.imul(tt,Xt)|0,j=j+Math.imul(Ie,Vt)|0,O=O+Math.imul(Ie,er)|0,O=O+Math.imul(Re,Vt)|0,Z=Z+Math.imul(Re,er)|0,j=j+Math.imul(Ne,br)|0,O=O+Math.imul(Ne,or)|0,O=O+Math.imul(pe,br)|0,Z=Z+Math.imul(pe,or)|0,j=j+Math.imul(fe,Lr)|0,O=O+Math.imul(fe,Gr)|0,O=O+Math.imul(ge,Lr)|0,Z=Z+Math.imul(ge,Gr)|0,j=j+Math.imul(V,Hr)|0,O=O+Math.imul(V,Br)|0,O=O+Math.imul(ne,Hr)|0,Z=Z+Math.imul(ne,Br)|0;var Ji=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Ji>>>26)|0,Ji&=67108863,j=Math.imul(lt,je),O=Math.imul(lt,$e),O=O+Math.imul(it,je)|0,Z=Math.imul(it,$e),j=j+Math.imul(ke,Y)|0,O=O+Math.imul(ke,ie)|0,O=O+Math.imul(Ue,Y)|0,Z=Z+Math.imul(Ue,ie)|0,j=j+Math.imul(Pe,Ve)|0,O=O+Math.imul(Pe,at)|0,O=O+Math.imul(He,Ve)|0,Z=Z+Math.imul(He,at)|0,j=j+Math.imul(ce,Ht)|0,O=O+Math.imul(ce,Xt)|0,O=O+Math.imul(Ee,Ht)|0,Z=Z+Math.imul(Ee,Xt)|0,j=j+Math.imul(Be,Vt)|0,O=O+Math.imul(Be,er)|0,O=O+Math.imul(tt,Vt)|0,Z=Z+Math.imul(tt,er)|0,j=j+Math.imul(Ie,br)|0,O=O+Math.imul(Ie,or)|0,O=O+Math.imul(Re,br)|0,Z=Z+Math.imul(Re,or)|0,j=j+Math.imul(Ne,Lr)|0,O=O+Math.imul(Ne,Gr)|0,O=O+Math.imul(pe,Lr)|0,Z=Z+Math.imul(pe,Gr)|0,j=j+Math.imul(fe,Hr)|0,O=O+Math.imul(fe,Br)|0,O=O+Math.imul(ge,Hr)|0,Z=Z+Math.imul(ge,Br)|0;var ii=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(ii>>>26)|0,ii&=67108863,j=Math.imul(lt,Y),O=Math.imul(lt,ie),O=O+Math.imul(it,Y)|0,Z=Math.imul(it,ie),j=j+Math.imul(ke,Ve)|0,O=O+Math.imul(ke,at)|0,O=O+Math.imul(Ue,Ve)|0,Z=Z+Math.imul(Ue,at)|0,j=j+Math.imul(Pe,Ht)|0,O=O+Math.imul(Pe,Xt)|0,O=O+Math.imul(He,Ht)|0,Z=Z+Math.imul(He,Xt)|0,j=j+Math.imul(ce,Vt)|0,O=O+Math.imul(ce,er)|0,O=O+Math.imul(Ee,Vt)|0,Z=Z+Math.imul(Ee,er)|0,j=j+Math.imul(Be,br)|0,O=O+Math.imul(Be,or)|0,O=O+Math.imul(tt,br)|0,Z=Z+Math.imul(tt,or)|0,j=j+Math.imul(Ie,Lr)|0,O=O+Math.imul(Ie,Gr)|0,O=O+Math.imul(Re,Lr)|0,Z=Z+Math.imul(Re,Gr)|0,j=j+Math.imul(Ne,Hr)|0,O=O+Math.imul(Ne,Br)|0,O=O+Math.imul(pe,Hr)|0,Z=Z+Math.imul(pe,Br)|0;var bo=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(bo>>>26)|0,bo&=67108863,j=Math.imul(lt,Ve),O=Math.imul(lt,at),O=O+Math.imul(it,Ve)|0,Z=Math.imul(it,at),j=j+Math.imul(ke,Ht)|0,O=O+Math.imul(ke,Xt)|0,O=O+Math.imul(Ue,Ht)|0,Z=Z+Math.imul(Ue,Xt)|0,j=j+Math.imul(Pe,Vt)|0,O=O+Math.imul(Pe,er)|0,O=O+Math.imul(He,Vt)|0,Z=Z+Math.imul(He,er)|0,j=j+Math.imul(ce,br)|0,O=O+Math.imul(ce,or)|0,O=O+Math.imul(Ee,br)|0,Z=Z+Math.imul(Ee,or)|0,j=j+Math.imul(Be,Lr)|0,O=O+Math.imul(Be,Gr)|0,O=O+Math.imul(tt,Lr)|0,Z=Z+Math.imul(tt,Gr)|0,j=j+Math.imul(Ie,Hr)|0,O=O+Math.imul(Ie,Br)|0,O=O+Math.imul(Re,Hr)|0,Z=Z+Math.imul(Re,Br)|0;var ga=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(ga>>>26)|0,ga&=67108863,j=Math.imul(lt,Ht),O=Math.imul(lt,Xt),O=O+Math.imul(it,Ht)|0,Z=Math.imul(it,Xt),j=j+Math.imul(ke,Vt)|0,O=O+Math.imul(ke,er)|0,O=O+Math.imul(Ue,Vt)|0,Z=Z+Math.imul(Ue,er)|0,j=j+Math.imul(Pe,br)|0,O=O+Math.imul(Pe,or)|0,O=O+Math.imul(He,br)|0,Z=Z+Math.imul(He,or)|0,j=j+Math.imul(ce,Lr)|0,O=O+Math.imul(ce,Gr)|0,O=O+Math.imul(Ee,Lr)|0,Z=Z+Math.imul(Ee,Gr)|0,j=j+Math.imul(Be,Hr)|0,O=O+Math.imul(Be,Br)|0,O=O+Math.imul(tt,Hr)|0,Z=Z+Math.imul(tt,Br)|0;var Ia=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(Ia>>>26)|0,Ia&=67108863,j=Math.imul(lt,Vt),O=Math.imul(lt,er),O=O+Math.imul(it,Vt)|0,Z=Math.imul(it,er),j=j+Math.imul(ke,br)|0,O=O+Math.imul(ke,or)|0,O=O+Math.imul(Ue,br)|0,Z=Z+Math.imul(Ue,or)|0,j=j+Math.imul(Pe,Lr)|0,O=O+Math.imul(Pe,Gr)|0,O=O+Math.imul(He,Lr)|0,Z=Z+Math.imul(He,Gr)|0,j=j+Math.imul(ce,Hr)|0,O=O+Math.imul(ce,Br)|0,O=O+Math.imul(Ee,Hr)|0,Z=Z+Math.imul(Ee,Br)|0;var si=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(si>>>26)|0,si&=67108863,j=Math.imul(lt,br),O=Math.imul(lt,or),O=O+Math.imul(it,br)|0,Z=Math.imul(it,or),j=j+Math.imul(ke,Lr)|0,O=O+Math.imul(ke,Gr)|0,O=O+Math.imul(Ue,Lr)|0,Z=Z+Math.imul(Ue,Gr)|0,j=j+Math.imul(Pe,Hr)|0,O=O+Math.imul(Pe,Br)|0,O=O+Math.imul(He,Hr)|0,Z=Z+Math.imul(He,Br)|0;var aa=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(aa>>>26)|0,aa&=67108863,j=Math.imul(lt,Lr),O=Math.imul(lt,Gr),O=O+Math.imul(it,Lr)|0,Z=Math.imul(it,Gr),j=j+Math.imul(ke,Hr)|0,O=O+Math.imul(ke,Br)|0,O=O+Math.imul(Ue,Hr)|0,Z=Z+Math.imul(Ue,Br)|0;var wo=(Q+j|0)+((O&8191)<<13)|0;Q=(Z+(O>>>13)|0)+(wo>>>26)|0,wo&=67108863,j=Math.imul(lt,Hr),O=Math.imul(lt,Br),O=O+Math.imul(it,Hr)|0,Z=Math.imul(it,Br);var ma=(Q+j|0)+((O&8191)<<13)|0;return Q=(Z+(O>>>13)|0)+(ma>>>26)|0,ma&=67108863,ee[0]=qn,ee[1]=kn,ee[2]=Yn,ee[3]=Wn,ee[4]=Fn,ee[5]=wn,ee[6]=Si,ee[7]=Aa,ee[8]=ia,ee[9]=An,ee[10]=Ji,ee[11]=ii,ee[12]=bo,ee[13]=ga,ee[14]=Ia,ee[15]=si,ee[16]=aa,ee[17]=wo,ee[18]=ma,Q!==0&&(ee[19]=Q,N.length++),N};Math.imul||(k=w);function x(P,D,q){q.negative=D.negative^P.negative,q.length=P.length+D.length;for(var N=0,U=0,G=0;G>>26)|0,U+=ee>>>26,ee&=67108863}q.words[G]=Q,N=ee,ee=U}return N!==0?q.words[G]=N:q.length--,q.strip()}function M(P,D,q){var N=new A;return N.mulp(P,D,q)}c.prototype.mulTo=function(D,q){var N,U=this.length+D.length;return this.length===10&&D.length===10?N=k(this,D,q):U<63?N=w(this,D,q):U<1024?N=x(this,D,q):N=M(this,D,q),N};function A(P,D){this.x=P,this.y=D}A.prototype.makeRBT=function(D){for(var q=new Array(D),N=c.prototype._countBits(D)-1,U=0;U>=1;return U},A.prototype.permute=function(D,q,N,U,G,ee){for(var Q=0;Q>>1)G++;return 1<>>13,N[2*ee+1]=G&8191,G=G>>>13;for(ee=2*q;ee>=26,q+=U/67108864|0,q+=G>>>26,this.words[N]=G&67108863}return q!==0&&(this.words[N]=q,this.length++),this},c.prototype.muln=function(D){return this.clone().imuln(D)},c.prototype.sqr=function(){return this.mul(this)},c.prototype.isqr=function(){return this.imul(this.clone())},c.prototype.pow=function(D){var q=T(D);if(q.length===0)return new c(1);for(var N=this,U=0;U=0);var q=D%26,N=(D-q)/26,U=67108863>>>26-q<<26-q,G;if(q!==0){var ee=0;for(G=0;G>>26-q}ee&&(this.words[G]=ee,this.length++)}if(N!==0){for(G=this.length-1;G>=0;G--)this.words[G+N]=this.words[G];for(G=0;G=0);var U;q?U=(q-q%26)/26:U=0;var G=D%26,ee=Math.min((D-G)/26,this.length),Q=67108863^67108863>>>G<ee)for(this.length-=ee,O=0;O=0&&(Z!==0||O>=U);O--){var K=this.words[O]|0;this.words[O]=Z<<26-G|K>>>G,Z=K&Q}return j&&Z!==0&&(j.words[j.length++]=Z),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},c.prototype.ishrn=function(D,q,N){return u(this.negative===0),this.iushrn(D,q,N)},c.prototype.shln=function(D){return this.clone().ishln(D)},c.prototype.ushln=function(D){return this.clone().iushln(D)},c.prototype.shrn=function(D){return this.clone().ishrn(D)},c.prototype.ushrn=function(D){return this.clone().iushrn(D)},c.prototype.testn=function(D){u(typeof D=="number"&&D>=0);var q=D%26,N=(D-q)/26,U=1<=0);var q=D%26,N=(D-q)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=N)return this;if(q!==0&&N++,this.length=Math.min(N,this.length),q!==0){var U=67108863^67108863>>>q<=67108864;q++)this.words[q]-=67108864,q===this.length-1?this.words[q+1]=1:this.words[q+1]++;return this.length=Math.max(this.length,q+1),this},c.prototype.isubn=function(D){if(u(typeof D=="number"),u(D<67108864),D<0)return this.iaddn(-D);if(this.negative!==0)return this.negative=0,this.iaddn(D),this.negative=1,this;if(this.words[0]-=D,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var q=0;q>26)-(j/67108864|0),this.words[G+N]=ee&67108863}for(;G>26,this.words[G+N]=ee&67108863;if(Q===0)return this.strip();for(u(Q===-1),Q=0,G=0;G>26,this.words[G]=ee&67108863;return this.negative=1,this.strip()},c.prototype._wordDiv=function(D,q){var N=this.length-D.length,U=this.clone(),G=D,ee=G.words[G.length-1]|0,Q=this._countBits(ee);N=26-Q,N!==0&&(G=G.ushln(N),U.iushln(N),ee=G.words[G.length-1]|0);var j=U.length-G.length,O;if(q!=="mod"){O=new c(null),O.length=j+1,O.words=new Array(O.length);for(var Z=0;Z=0;$--){var oe=(U.words[G.length+$]|0)*67108864+(U.words[G.length+$-1]|0);for(oe=Math.min(oe/ee|0,67108863),U._ishlnsubmul(G,oe,$);U.negative!==0;)oe--,U.negative=0,U._ishlnsubmul(G,1,$),U.isZero()||(U.negative^=1);O&&(O.words[$]=oe)}return O&&O.strip(),U.strip(),q!=="div"&&N!==0&&U.iushrn(N),{div:O||null,mod:U}},c.prototype.divmod=function(D,q,N){if(u(!D.isZero()),this.isZero())return{div:new c(0),mod:new c(0)};var U,G,ee;return this.negative!==0&&D.negative===0?(ee=this.neg().divmod(D,q),q!=="mod"&&(U=ee.div.neg()),q!=="div"&&(G=ee.mod.neg(),N&&G.negative!==0&&G.iadd(D)),{div:U,mod:G}):this.negative===0&&D.negative!==0?(ee=this.divmod(D.neg(),q),q!=="mod"&&(U=ee.div.neg()),{div:U,mod:ee.mod}):this.negative&D.negative?(ee=this.neg().divmod(D.neg(),q),q!=="div"&&(G=ee.mod.neg(),N&&G.negative!==0&&G.isub(D)),{div:ee.div,mod:G}):D.length>this.length||this.cmp(D)<0?{div:new c(0),mod:this}:D.length===1?q==="div"?{div:this.divn(D.words[0]),mod:null}:q==="mod"?{div:null,mod:new c(this.modn(D.words[0]))}:{div:this.divn(D.words[0]),mod:new c(this.modn(D.words[0]))}:this._wordDiv(D,q)},c.prototype.div=function(D){return this.divmod(D,"div",!1).div},c.prototype.mod=function(D){return this.divmod(D,"mod",!1).mod},c.prototype.umod=function(D){return this.divmod(D,"mod",!0).mod},c.prototype.divRound=function(D){var q=this.divmod(D);if(q.mod.isZero())return q.div;var N=q.div.negative!==0?q.mod.isub(D):q.mod,U=D.ushrn(1),G=D.andln(1),ee=N.cmp(U);return ee<0||G===1&&ee===0?q.div:q.div.negative!==0?q.div.isubn(1):q.div.iaddn(1)},c.prototype.modn=function(D){u(D<=67108863);for(var q=(1<<26)%D,N=0,U=this.length-1;U>=0;U--)N=(q*N+(this.words[U]|0))%D;return N},c.prototype.idivn=function(D){u(D<=67108863);for(var q=0,N=this.length-1;N>=0;N--){var U=(this.words[N]|0)+q*67108864;this.words[N]=U/D|0,q=U%D}return this.strip()},c.prototype.divn=function(D){return this.clone().idivn(D)},c.prototype.egcd=function(D){u(D.negative===0),u(!D.isZero());var q=this,N=D.clone();q.negative!==0?q=q.umod(D):q=q.clone();for(var U=new c(1),G=new c(0),ee=new c(0),Q=new c(1),j=0;q.isEven()&&N.isEven();)q.iushrn(1),N.iushrn(1),++j;for(var O=N.clone(),Z=q.clone();!q.isZero();){for(var K=0,$=1;!(q.words[0]&$)&&K<26;++K,$<<=1);if(K>0)for(q.iushrn(K);K-- >0;)(U.isOdd()||G.isOdd())&&(U.iadd(O),G.isub(Z)),U.iushrn(1),G.iushrn(1);for(var oe=0,te=1;!(N.words[0]&te)&&oe<26;++oe,te<<=1);if(oe>0)for(N.iushrn(oe);oe-- >0;)(ee.isOdd()||Q.isOdd())&&(ee.iadd(O),Q.isub(Z)),ee.iushrn(1),Q.iushrn(1);q.cmp(N)>=0?(q.isub(N),U.isub(ee),G.isub(Q)):(N.isub(q),ee.isub(U),Q.isub(G))}return{a:ee,b:Q,gcd:N.iushln(j)}},c.prototype._invmp=function(D){u(D.negative===0),u(!D.isZero());var q=this,N=D.clone();q.negative!==0?q=q.umod(D):q=q.clone();for(var U=new c(1),G=new c(0),ee=N.clone();q.cmpn(1)>0&&N.cmpn(1)>0;){for(var Q=0,j=1;!(q.words[0]&j)&&Q<26;++Q,j<<=1);if(Q>0)for(q.iushrn(Q);Q-- >0;)U.isOdd()&&U.iadd(ee),U.iushrn(1);for(var O=0,Z=1;!(N.words[0]&Z)&&O<26;++O,Z<<=1);if(O>0)for(N.iushrn(O);O-- >0;)G.isOdd()&&G.iadd(ee),G.iushrn(1);q.cmp(N)>=0?(q.isub(N),U.isub(G)):(N.isub(q),G.isub(U))}var K;return q.cmpn(1)===0?K=U:K=G,K.cmpn(0)<0&&K.iadd(D),K},c.prototype.gcd=function(D){if(this.isZero())return D.abs();if(D.isZero())return this.abs();var q=this.clone(),N=D.clone();q.negative=0,N.negative=0;for(var U=0;q.isEven()&&N.isEven();U++)q.iushrn(1),N.iushrn(1);do{for(;q.isEven();)q.iushrn(1);for(;N.isEven();)N.iushrn(1);var G=q.cmp(N);if(G<0){var ee=q;q=N,N=ee}else if(G===0||N.cmpn(1)===0)break;q.isub(N)}while(!0);return N.iushln(U)},c.prototype.invm=function(D){return this.egcd(D).a.umod(D)},c.prototype.isEven=function(){return(this.words[0]&1)===0},c.prototype.isOdd=function(){return(this.words[0]&1)===1},c.prototype.andln=function(D){return this.words[0]&D},c.prototype.bincn=function(D){u(typeof D=="number");var q=D%26,N=(D-q)/26,U=1<>>26,Q&=67108863,this.words[ee]=Q}return G!==0&&(this.words[ee]=G,this.length++),this},c.prototype.isZero=function(){return this.length===1&&this.words[0]===0},c.prototype.cmpn=function(D){var q=D<0;if(this.negative!==0&&!q)return-1;if(this.negative===0&&q)return 1;this.strip();var N;if(this.length>1)N=1;else{q&&(D=-D),u(D<=67108863,"Number is too big");var U=this.words[0]|0;N=U===D?0:UD.length)return 1;if(this.length=0;N--){var U=this.words[N]|0,G=D.words[N]|0;if(U!==G){UG&&(q=1);break}}return q},c.prototype.gtn=function(D){return this.cmpn(D)===1},c.prototype.gt=function(D){return this.cmp(D)===1},c.prototype.gten=function(D){return this.cmpn(D)>=0},c.prototype.gte=function(D){return this.cmp(D)>=0},c.prototype.ltn=function(D){return this.cmpn(D)===-1},c.prototype.lt=function(D){return this.cmp(D)===-1},c.prototype.lten=function(D){return this.cmpn(D)<=0},c.prototype.lte=function(D){return this.cmp(D)<=0},c.prototype.eqn=function(D){return this.cmpn(D)===0},c.prototype.eq=function(D){return this.cmp(D)===0},c.red=function(D){return new R(D)},c.prototype.toRed=function(D){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),D.convertTo(this)._forceRed(D)},c.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},c.prototype._forceRed=function(D){return this.red=D,this},c.prototype.forceRed=function(D){return u(!this.red,"Already a number in reduction context"),this._forceRed(D)},c.prototype.redAdd=function(D){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,D)},c.prototype.redIAdd=function(D){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,D)},c.prototype.redSub=function(D){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,D)},c.prototype.redISub=function(D){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,D)},c.prototype.redShl=function(D){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,D)},c.prototype.redMul=function(D){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,D),this.red.mul(this,D)},c.prototype.redIMul=function(D){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,D),this.red.imul(this,D)},c.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},c.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},c.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},c.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},c.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},c.prototype.redPow=function(D){return u(this.red&&!D.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,D)};var p={k256:null,p224:null,p192:null,p25519:null};function S(P,D){this.name=P,this.p=new c(D,16),this.n=this.p.bitLength(),this.k=new c(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}S.prototype._tmp=function(){var D=new c(null);return D.words=new Array(Math.ceil(this.n/13)),D},S.prototype.ireduce=function(D){var q=D,N;do this.split(q,this.tmp),q=this.imulK(q),q=q.iadd(this.tmp),N=q.bitLength();while(N>this.n);var U=N0?q.isub(this.p):q.strip!==void 0?q.strip():q._strip(),q},S.prototype.split=function(D,q){D.iushrn(this.n,0,q)},S.prototype.imulK=function(D){return D.imul(this.k)};function y(){S.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}f(y,S),y.prototype.split=function(D,q){for(var N=4194303,U=Math.min(D.length,9),G=0;G>>22,ee=Q}ee>>>=22,D.words[G-10]=ee,ee===0&&D.length>10?D.length-=10:D.length-=9},y.prototype.imulK=function(D){D.words[D.length]=0,D.words[D.length+1]=0,D.length+=2;for(var q=0,N=0;N>>=26,D.words[N]=G,q=U}return q!==0&&(D.words[D.length++]=q),D},c._prime=function(D){if(p[D])return p[D];var q;if(D==="k256")q=new y;else if(D==="p224")q=new E;else if(D==="p192")q=new C;else if(D==="p25519")q=new L;else throw new Error("Unknown prime "+D);return p[D]=q,q};function R(P){if(typeof P=="string"){var D=c._prime(P);this.m=D.p,this.prime=D}else u(P.gtn(1),"modulus must be greater than 1"),this.m=P,this.prime=null}R.prototype._verify1=function(D){u(D.negative===0,"red works only with positives"),u(D.red,"red works only with red numbers")},R.prototype._verify2=function(D,q){u((D.negative|q.negative)===0,"red works only with positives"),u(D.red&&D.red===q.red,"red works only with red numbers")},R.prototype.imod=function(D){return this.prime?this.prime.ireduce(D)._forceRed(this):D.umod(this.m)._forceRed(this)},R.prototype.neg=function(D){return D.isZero()?D.clone():this.m.sub(D)._forceRed(this)},R.prototype.add=function(D,q){this._verify2(D,q);var N=D.add(q);return N.cmp(this.m)>=0&&N.isub(this.m),N._forceRed(this)},R.prototype.iadd=function(D,q){this._verify2(D,q);var N=D.iadd(q);return N.cmp(this.m)>=0&&N.isub(this.m),N},R.prototype.sub=function(D,q){this._verify2(D,q);var N=D.sub(q);return N.cmpn(0)<0&&N.iadd(this.m),N._forceRed(this)},R.prototype.isub=function(D,q){this._verify2(D,q);var N=D.isub(q);return N.cmpn(0)<0&&N.iadd(this.m),N},R.prototype.shl=function(D,q){return this._verify1(D),this.imod(D.ushln(q))},R.prototype.imul=function(D,q){return this._verify2(D,q),this.imod(D.imul(q))},R.prototype.mul=function(D,q){return this._verify2(D,q),this.imod(D.mul(q))},R.prototype.isqr=function(D){return this.imul(D,D.clone())},R.prototype.sqr=function(D){return this.mul(D,D)},R.prototype.sqrt=function(D){if(D.isZero())return D.clone();var q=this.m.andln(3);if(u(q%2===1),q===3){var N=this.m.add(new c(1)).iushrn(2);return this.pow(D,N)}for(var U=this.m.subn(1),G=0;!U.isZero()&&U.andln(1)===0;)G++,U.iushrn(1);u(!U.isZero());var ee=new c(1).toRed(this),Q=ee.redNeg(),j=this.m.subn(1).iushrn(1),O=this.m.bitLength();for(O=new c(2*O*O).toRed(this);this.pow(O,j).cmp(Q)!==0;)O.redIAdd(Q);for(var Z=this.pow(O,U),K=this.pow(D,U.addn(1).iushrn(1)),$=this.pow(D,U),oe=G;$.cmp(ee)!==0;){for(var te=$,V=0;te.cmp(ee)!==0;V++)te=te.redSqr();u(V=0;G--){for(var Z=q.words[G],K=O-1;K>=0;K--){var $=Z>>K&1;if(ee!==U[0]&&(ee=this.sqr(ee)),$===0&&Q===0){j=0;continue}Q<<=1,Q|=$,j++,!(j!==N&&(G!==0||K!==0))&&(ee=this.mul(ee,U[Q]),j=0,Q=0)}O=26}return ee},R.prototype.convertTo=function(D){var q=D.umod(this.m);return q===D?q.clone():q},R.prototype.convertFrom=function(D){var q=D.clone();return q.red=null,q},c.mont=function(D){return new I(D)};function I(P){R.call(this,P),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new c(1).iushln(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=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}f(I,R),I.prototype.convertTo=function(D){return this.imod(D.ushln(this.shift))},I.prototype.convertFrom=function(D){var q=this.imod(D.mul(this.rinv));return q.red=null,q},I.prototype.imul=function(D,q){if(D.isZero()||q.isZero())return D.words[0]=0,D.length=1,D;var N=D.imul(q),U=N.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),G=N.isub(U).iushrn(this.shift),ee=G;return G.cmp(this.m)>=0?ee=G.isub(this.m):G.cmpn(0)<0&&(ee=G.iadd(this.m)),ee._forceRed(this)},I.prototype.mul=function(D,q){if(D.isZero()||q.isZero())return new c(0)._forceRed(this);var N=D.mul(q),U=N.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),G=N.isub(U).iushrn(this.shift),ee=G;return G.cmp(this.m)>=0?ee=G.isub(this.m):G.cmpn(0)<0&&(ee=G.iadd(this.m)),ee._forceRed(this)},I.prototype.invm=function(D){var q=this.imod(D._invmp(this.m).mul(this.r2));return q._forceRed(this)}}(i,this)},6204:function(i){"use strict";i.exports=a;function a(o){var s,l,u,f=o.length,c=0;for(s=0;s>>1;if(!(A<=0)){var p,S=s.mallocDouble(2*A*x),y=s.mallocInt32(x);if(x=c(_,A,S,y),x>0){if(A===1&&k)l.init(x),p=l.sweepComplete(A,w,0,x,S,y,0,x,S,y);else{var E=s.mallocDouble(2*A*M),C=s.mallocInt32(M);M=c(T,A,E,C),M>0&&(l.init(x+M),A===1?p=l.sweepBipartite(A,w,0,x,S,y,0,M,E,C):p=u(A,w,k,x,S,y,M,E,C),s.free(E),s.free(C))}s.free(S),s.free(y)}return p}}}var d;function v(_,T){d.push([_,T])}function m(_){return d=[],h(_,_,v,!0),d}function b(_,T){return d=[],h(_,T,v,!1),d}function g(_,T,w){switch(arguments.length){case 1:return m(_);case 2:return typeof T=="function"?h(_,_,T,!0):b(_,T);case 3:return h(_,T,w,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(i,a){"use strict";function o(){function u(h,d,v,m,b,g,_,T,w,k,x){for(var M=2*h,A=m,p=M*m;Aw-T?u(h,d,v,m,b,g,_,T,w,k,x):f(h,d,v,m,b,g,_,T,w,k,x)}return c}function s(){function u(v,m,b,g,_,T,w,k,x,M,A){for(var p=2*v,S=g,y=p*g;S<_;++S,y+=p){var E=T[m+y],C=T[m+y+v],L=w[S];e:for(var R=k,I=p*k;RM-x?g?u(v,m,b,_,T,w,k,x,M,A,p):f(v,m,b,_,T,w,k,x,M,A,p):g?c(v,m,b,_,T,w,k,x,M,A,p):h(v,m,b,_,T,w,k,x,M,A,p)}return d}function l(u){return u?o():s()}a.partial=l(!1),a.full=l(!0)},7150:function(i,a,o){"use strict";i.exports=P;var s=o(1888),l=o(8828),u=o(2455),f=u.partial,c=u.full,h=o(855),d=o(3545),v=o(8105),m=128,b=1<<22,g=1<<22,_=v("!(lo>=p0)&&!(p1>=hi)"),T=v("lo===p0"),w=v("lo0;){Z-=1;var oe=Z*A,te=y[oe],V=y[oe+1],ne=y[oe+2],W=y[oe+3],fe=y[oe+4],ge=y[oe+5],Ce=Z*p,Ne=E[Ce],pe=E[Ce+1],me=ge&1,Ie=!!(ge&16),Re=G,ze=ee,Be=j,tt=O;if(me&&(Re=j,ze=O,Be=G,tt=ee),!(ge&2&&(ne=w(D,te,V,ne,Re,ze,pe),V>=ne))&&!(ge&4&&(V=k(D,te,V,ne,Re,ze,Ne),V>=ne))){var rt=ne-V,ce=fe-W;if(Ie){if(D*rt*(rt+ce)v&&b[M+d]>k;--x,M-=_){for(var A=M,p=M+_,S=0;S<_;++S,++A,++p){var y=b[A];b[A]=b[p],b[p]=y}var E=g[x];g[x]=g[x-1],g[x-1]=E}}function c(h,d,v,m,b,g){if(m<=v+1)return v;for(var _=v,T=m,w=m+v>>>1,k=2*h,x=w,M=b[k*w+d];_=E?(x=y,M=E):S>=L?(x=p,M=S):(x=C,M=L):E>=L?(x=y,M=E):L>=S?(x=p,M=S):(x=C,M=L);for(var P=k*(T-1),D=k*x,R=0;R=p0)&&!(p1>=hi)":d};function o(v){return a[v]}function s(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+p];if(E===w)if(A===y)A+=1,M+=k;else{for(var C=0;k>C;++C){var L=_[x+C];_[x+C]=_[M],_[M++]=L}var R=T[y];T[y]=T[A],T[A++]=R}}return A}function l(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+p];if(EC;++C){var L=_[x+C];_[x+C]=_[M],_[M++]=L}var R=T[y];T[y]=T[A],T[A++]=R}}return A}function u(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+S];if(E<=w)if(A===y)A+=1,M+=k;else{for(var C=0;k>C;++C){var L=_[x+C];_[x+C]=_[M],_[M++]=L}var R=T[y];T[y]=T[A],T[A++]=R}}return A}function f(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+S];if(E<=w)if(A===y)A+=1,M+=k;else{for(var C=0;k>C;++C){var L=_[x+C];_[x+C]=_[M],_[M++]=L}var R=T[y];T[y]=T[A],T[A++]=R}}return A}function c(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+p],C=_[x+S];if(E<=w&&w<=C)if(A===y)A+=1,M+=k;else{for(var L=0;k>L;++L){var R=_[x+L];_[x+L]=_[M],_[M++]=R}var I=T[y];T[y]=T[A],T[A++]=I}}return A}function h(v,m,b,g,_,T,w){for(var k=2*v,x=k*b,M=x,A=b,p=m,S=v+m,y=b;g>y;++y,x+=k){var E=_[x+p],C=_[x+S];if(EL;++L){var R=_[x+L];_[x+L]=_[M],_[M++]=R}var I=T[y];T[y]=T[A],T[A++]=I}}return A}function d(v,m,b,g,_,T,w,k){for(var x=2*v,M=x*b,A=M,p=b,S=m,y=v+m,E=b;g>E;++E,M+=x){var C=_[M+S],L=_[M+y];if(!(C>=w)&&!(k>=L))if(p===E)p+=1,A+=x;else{for(var R=0;x>R;++R){var I=_[M+R];_[M+R]=_[A],_[A++]=I}var P=T[E];T[E]=T[p],T[p++]=P}}return p}},1811:function(i){"use strict";i.exports=o;var a=32;function o(m,b){b<=4*a?s(0,b-1,m):v(0,b-1,m)}function s(m,b,g){for(var _=2*(m+1),T=m+1;T<=b;++T){for(var w=g[_++],k=g[_++],x=T,M=_-2;x-- >m;){var A=g[M-2],p=g[M-1];if(Ag[b+1]:!0}function d(m,b,g,_){m*=2;var T=_[m];return T>1,x=k-_,M=k+_,A=T,p=x,S=k,y=M,E=w,C=m+1,L=b-1,R=0;h(A,p,g)&&(R=A,A=p,p=R),h(y,E,g)&&(R=y,y=E,E=R),h(A,S,g)&&(R=A,A=S,S=R),h(p,S,g)&&(R=p,p=S,S=R),h(A,y,g)&&(R=A,A=y,y=R),h(S,y,g)&&(R=S,S=y,y=R),h(p,E,g)&&(R=p,p=E,E=R),h(p,S,g)&&(R=p,p=S,S=R),h(y,E,g)&&(R=y,y=E,E=R);for(var I=g[2*p],P=g[2*p+1],D=g[2*y],q=g[2*y+1],N=2*A,U=2*S,G=2*E,ee=2*T,Q=2*k,j=2*w,O=0;O<2;++O){var Z=g[N+O],K=g[U+O],$=g[G+O];g[ee+O]=Z,g[Q+O]=K,g[j+O]=$}u(x,m,g),u(M,b,g);for(var oe=C;oe<=L;++oe)if(d(oe,I,P,g))oe!==C&&l(oe,C,g),++C;else if(!d(oe,D,q,g))for(;;)if(d(L,D,q,g)){d(L,I,P,g)?(f(oe,C,L,g),++C,--L):(l(oe,L,g),--L);break}else{if(--L>>1;u(_,K);for(var $=0,oe=0,Q=0;Q=f)te=te-f|0,w(v,m,oe--,te);else if(te>=0)w(h,d,$--,te);else if(te<=-f){te=-te-f|0;for(var V=0;V<$;++V){var ne=y(h[V],te);if(ne!==void 0)return ne}k(v,m,oe++,te)}else{te=-te-1|0;for(var V=0;V>>1;u(_,K);for(var $=0,oe=0,te=0,Q=0;Q>1===_[2*Q+3]>>1&&(ne=2,Q+=1),V<0){for(var W=-(V>>1)-1,fe=0;fe>1)-1;ne===0?w(h,d,$--,W):ne===1?w(v,m,oe--,W):ne===2&&w(b,g,te--,W)}}}function A(S,y,E,C,L,R,I,P,D,q,N,U){var G=0,ee=2*S,Q=y,j=y+S,O=1,Z=1;C?Z=f:O=f;for(var K=L;K>>1;u(_,V);for(var ne=0,K=0;K=f?(fe=!C,$-=f):(fe=!!C,$-=1),fe)k(h,d,ne++,$);else{var ge=U[$],Ce=ee*$,Ne=N[Ce+y+1],pe=N[Ce+y+1+S];e:for(var me=0;me>>1;u(_,$);for(var oe=0,j=0;j<$;++j){var te=_[2*j+1]|0;if(te<0){var O=-te;if(O>=f)h[oe++]=O-f;else{O-=1;var V=N[O],ne=G*O,W=q[ne+y+1],fe=q[ne+y+1+S];e:for(var ge=0;ge=0;--ge)if(h[ge]===O){for(var me=ge+1;me0;){for(var T=d.pop(),b=d.pop(),w=-1,k=-1,g=m[b],M=1;M=0||(h.flip(b,T),u(c,h,d,w,b,k),u(c,h,d,b,k,w),u(c,h,d,k,T,w),u(c,h,d,T,w,k))}}},5023:function(i,a,o){"use strict";var s=o(2478);i.exports=d;function l(v,m,b,g,_,T,w){this.cells=v,this.neighbor=m,this.flags=g,this.constraint=b,this.active=_,this.next=T,this.boundary=w}var u=l.prototype;function f(v,m){return v[0]-m[0]||v[1]-m[1]||v[2]-m[2]}u.locate=function(){var v=[0,0,0];return function(m,b,g){var _=m,T=b,w=g;return b0||w.length>0;){for(;T.length>0;){var p=T.pop();if(k[p]!==-_){k[p]=_;for(var S=x[p],y=0;y<3;++y){var E=A[3*p+y];E>=0&&k[E]===0&&(M[3*p+y]?w.push(E):(T.push(E),k[E]=_))}}}var C=w;w=T,T=C,w.length=0,_=-_}var L=h(x,k,m);return b?L.concat(g.boundary):L}},8902:function(i,a,o){"use strict";var s=o(2478),l=o(3250)[3],u=0,f=1,c=2;i.exports=w;function h(k,x,M,A,p){this.a=k,this.b=x,this.idx=M,this.lowerIds=A,this.upperIds=p}function d(k,x,M,A){this.a=k,this.b=x,this.type=M,this.idx=A}function v(k,x){var M=k.a[0]-x.a[0]||k.a[1]-x.a[1]||k.type-x.type;return M||k.type!==u&&(M=l(k.a,k.b,x.b),M)?M:k.idx-x.idx}function m(k,x){return l(k.a,k.b,x)}function b(k,x,M,A,p){for(var S=s.lt(x,A,m),y=s.gt(x,A,m),E=S;E1&&l(M[L[I-2]],M[L[I-1]],A)>0;)k.push([L[I-1],L[I-2],p]),I-=1;L.length=I,L.push(p);for(var R=C.upperIds,I=R.length;I>1&&l(M[R[I-2]],M[R[I-1]],A)<0;)k.push([R[I-2],R[I-1],p]),I-=1;R.length=I,R.push(p)}}function g(k,x){var M;return k.a[0]C[0]&&p.push(new d(C,E,c,S),new d(E,C,f,S))}p.sort(v);for(var L=p[0].a[0]-(1+Math.abs(p[0].a[0]))*Math.pow(2,-52),R=[new h([L,1],[L,0],-1,[],[],[],[])],I=[],S=0,P=p.length;S=0}}(),u.removeTriangle=function(h,d,v){var m=this.stars;f(m[h],d,v),f(m[d],v,h),f(m[v],h,d)},u.addTriangle=function(h,d,v){var m=this.stars;m[h].push(d,v),m[d].push(v,h),m[v].push(h,d)},u.opposite=function(h,d){for(var v=this.stars[d],m=1,b=v.length;m=0;--D){var Z=I[D];q=Z[0];var K=L[q],$=K[0],oe=K[1],te=C[$],V=C[oe];if((te[0]-V[0]||te[1]-V[1])<0){var ne=$;$=oe,oe=ne}K[0]=$;var W=K[1]=Z[1],fe;for(P&&(fe=K[2]);D>0&&I[D-1][0]===q;){var Z=I[--D],ge=Z[1];P?L.push([W,ge,fe]):L.push([W,ge]),W=ge}P?L.push([W,oe,fe]):L.push([W,oe])}return N}function x(C,L,R){for(var I=L.length,P=new s(I),D=[],q=0;qL[2]?1:0)}function p(C,L,R){if(C.length!==0){if(L)for(var I=0;I0||q.length>0}function E(C,L,R){var I;if(R){I=L;for(var P=new Array(L.length),D=0;Dk+1)throw new Error(T+" map requires nshades to be at least size "+_.length);Array.isArray(d.alpha)?d.alpha.length!==2?x=[1,1]:x=d.alpha.slice():typeof d.alpha=="number"?x=[d.alpha,d.alpha]:x=[1,1],v=_.map(function(E){return Math.round(E.index*k)}),x[0]=Math.min(Math.max(x[0],0),1),x[1]=Math.min(Math.max(x[1],0),1);var A=_.map(function(E,C){var L=_[C].index,R=_[C].rgb.slice();return R.length===4&&R[3]>=0&&R[3]<=1||(R[3]=x[0]+(x[1]-x[0])*L),R}),p=[];for(M=0;M=0}function d(v,m,b,g){var _=s(m,b,g);if(_===0){var T=l(s(v,m,b)),w=l(s(v,m,g));if(T===w){if(T===0){var k=h(v,m,b),x=h(v,m,g);return k===x?0:k?1:-1}return 0}else{if(w===0)return T>0||h(v,m,g)?-1:1;if(T===0)return w>0||h(v,m,b)?1:-1}return l(w-T)}var M=s(v,m,b);if(M>0)return _>0&&s(v,m,g)>0?1:-1;if(M<0)return _>0||s(v,m,g)>0?1:-1;var A=s(v,m,g);return A>0||h(v,m,b)?1:-1}},8572:function(i){"use strict";i.exports=function(o){return o<0?-1:o>0?1:0}},8507:function(i){i.exports=s;var a=Math.min;function o(l,u){return l-u}function s(l,u){var f=l.length,c=l.length-u.length;if(c)return c;switch(f){case 0:return 0;case 1:return l[0]-u[0];case 2:return l[0]+l[1]-u[0]-u[1]||a(l[0],l[1])-a(u[0],u[1]);case 3:var h=l[0]+l[1],d=u[0]+u[1];if(c=h+l[2]-(d+u[2]),c)return c;var v=a(l[0],l[1]),m=a(u[0],u[1]);return a(v,l[2])-a(m,u[2])||a(v+l[2],h)-a(m+u[2],d);case 4:var b=l[0],g=l[1],_=l[2],T=l[3],w=u[0],k=u[1],x=u[2],M=u[3];return b+g+_+T-(w+k+x+M)||a(b,g,_,T)-a(w,k,x,M,w)||a(b+g,b+_,b+T,g+_,g+T,_+T)-a(w+k,w+x,w+M,k+x,k+M,x+M)||a(b+g+_,b+g+T,b+_+T,g+_+T)-a(w+k+x,w+k+M,w+x+M,k+x+M);default:for(var A=l.slice().sort(o),p=u.slice().sort(o),S=0;So[l][0]&&(l=u);return sl?[[l],[s]]:[[s]]}},4750:function(i,a,o){"use strict";i.exports=l;var s=o(3090);function l(u){var f=s(u),c=f.length;if(c<=2)return[];for(var h=new Array(c),d=f[c-1],v=0;v=d[w]&&(T+=1);g[_]=T}}return h}function c(h,d){try{return s(h,!0)}catch{var v=l(h);if(v.length<=d)return[];var m=u(h,v),b=s(m,!0);return f(b,v)}}},4769:function(i){"use strict";function a(s,l,u,f,c,h){var d=6*c*c-6*c,v=3*c*c-4*c+1,m=-6*c*c+6*c,b=3*c*c-2*c;if(s.length){h||(h=new Array(s.length));for(var g=s.length-1;g>=0;--g)h[g]=d*s[g]+v*l[g]+m*u[g]+b*f[g];return h}return d*s+v*l+m*u[g]+b*f}function o(s,l,u,f,c,h){var d=c-1,v=c*c,m=d*d,b=(1+2*c)*m,g=c*m,_=v*(3-2*c),T=v*d;if(s.length){h||(h=new Array(s.length));for(var w=s.length-1;w>=0;--w)h[w]=b*s[w]+g*l[w]+_*u[w]+T*f[w];return h}return b*s+g*l+_*u+T*f}i.exports=o,i.exports.derivative=a},7642:function(i,a,o){"use strict";var s=o(8954),l=o(1682);i.exports=h;function u(d,v){this.point=d,this.index=v}function f(d,v){for(var m=d.point,b=v.point,g=m.length,_=0;_=2)return!1;R[P]=D}return!0}):L=L.filter(function(R){for(var I=0;I<=b;++I){var P=S[R[I]];if(P<0)return!1;R[I]=P}return!0}),b&1)for(var T=0;T>>31},i.exports.exponent=function(_){var T=i.exports.hi(_);return(T<<1>>>21)-1023},i.exports.fraction=function(_){var T=i.exports.lo(_),w=i.exports.hi(_),k=w&(1<<20)-1;return w&2146435072&&(k+=1048576),[T,k]},i.exports.denormalized=function(_){var T=i.exports.hi(_);return!(T&2146435072)}},1338:function(i){"use strict";function a(l,u,f){var c=l[f]|0;if(c<=0)return[];var h=new Array(c),d;if(f===l.length-1)for(d=0;d"u"&&(u=0),typeof l){case"number":if(l>0)return o(l|0,u);break;case"object":if(typeof l.length=="number")return a(l,u,0);break}return[]}i.exports=s},3134:function(i,a,o){"use strict";i.exports=l;var s=o(1682);function l(u,f){var c=u.length;if(typeof f!="number"){f=0;for(var h=0;h=b-1)for(var M=T.length-1,p=v-m[b-1],A=0;A=b-1)for(var x=T.length-1,M=v-m[b-1],A=0;A=0;--b)if(v[--m])return!1;return!0},c.jump=function(v){var m=this.lastT(),b=this.dimension;if(!(v0;--A)g.push(u(k[A-1],x[A-1],arguments[A])),_.push(0)}},c.push=function(v){var m=this.lastT(),b=this.dimension;if(!(v1e-6?1/w:0;this._time.push(v);for(var p=b;p>0;--p){var S=u(x[p-1],M[p-1],arguments[p]);g.push(S),_.push((S-g[T++])*A)}}},c.set=function(v){var m=this.dimension;if(!(v0;--k)b.push(u(T[k-1],w[k-1],arguments[k])),g.push(0)}},c.move=function(v){var m=this.lastT(),b=this.dimension;if(!(v<=m||arguments.length!==b+1)){var g=this._state,_=this._velocity,T=g.length-this.dimension,w=this.bounds,k=w[0],x=w[1],M=v-m,A=M>1e-6?1/M:0;this._time.push(v);for(var p=b;p>0;--p){var S=arguments[p];g.push(u(k[p-1],x[p-1],g[T++]+S)),_.push(S*A)}}},c.idle=function(v){var m=this.lastT();if(!(v=0;--A)g.push(u(k[A],x[A],g[T]+M*_[T])),_.push(0),T+=1}};function h(v){for(var m=new Array(v),b=0;b=0;--C){var p=S[C];y[C]<=0?S[C]=new s(p._color,p.key,p.value,S[C+1],p.right,p._count+1):S[C]=new s(p._color,p.key,p.value,p.left,S[C+1],p._count+1)}for(var C=S.length-1;C>1;--C){var L=S[C-1],p=S[C];if(L._color===o||p._color===o)break;var R=S[C-2];if(R.left===L)if(L.left===p){var I=R.right;if(I&&I._color===a)L._color=o,R.right=u(o,I),R._color=a,C-=1;else{if(R._color=a,R.left=L.right,L._color=o,L.right=R,S[C-2]=L,S[C-1]=p,f(R),f(L),C>=3){var P=S[C-3];P.left===R?P.left=L:P.right=L}break}}else{var I=R.right;if(I&&I._color===a)L._color=o,R.right=u(o,I),R._color=a,C-=1;else{if(L.right=p.left,R._color=a,R.left=p.right,p._color=o,p.left=L,p.right=R,S[C-2]=p,S[C-1]=L,f(R),f(L),f(p),C>=3){var P=S[C-3];P.left===R?P.left=p:P.right=p}break}}else if(L.right===p){var I=R.left;if(I&&I._color===a)L._color=o,R.left=u(o,I),R._color=a,C-=1;else{if(R._color=a,R.right=L.left,L._color=o,L.left=R,S[C-2]=L,S[C-1]=p,f(R),f(L),C>=3){var P=S[C-3];P.right===R?P.right=L:P.left=L}break}}else{var I=R.left;if(I&&I._color===a)L._color=o,R.left=u(o,I),R._color=a,C-=1;else{if(L.left=p.right,R._color=a,R.right=p.left,p._color=o,p.right=L,p.left=R,S[C-2]=p,S[C-1]=L,f(R),f(L),f(p),C>=3){var P=S[C-3];P.right===R?P.right=p:P.left=p}break}}}return S[0]._color=o,new c(A,S[0])};function d(x,M){if(M.left){var A=d(x,M.left);if(A)return A}var A=x(M.key,M.value);if(A)return A;if(M.right)return d(x,M.right)}function v(x,M,A,p){var S=M(x,p.key);if(S<=0){if(p.left){var y=v(x,M,A,p.left);if(y)return y}var y=A(p.key,p.value);if(y)return y}if(p.right)return v(x,M,A,p.right)}function m(x,M,A,p,S){var y=A(x,S.key),E=A(M,S.key),C;if(y<=0&&(S.left&&(C=m(x,M,A,p,S.left),C)||E>0&&(C=p(S.key,S.value),C)))return C;if(E>0&&S.right)return m(x,M,A,p,S.right)}h.forEach=function(M,A,p){if(this.root)switch(arguments.length){case 1:return d(M,this.root);case 2:return v(A,this._compare,M,this.root);case 3:return this._compare(A,p)>=0?void 0:m(A,p,this._compare,M,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var x=[],M=this.root;M;)x.push(M),M=M.left;return new b(this,x)}}),Object.defineProperty(h,"end",{get:function(){for(var x=[],M=this.root;M;)x.push(M),M=M.right;return new b(this,x)}}),h.at=function(x){if(x<0)return new b(this,[]);for(var M=this.root,A=[];;){if(A.push(M),M.left){if(x=M.right._count)break;M=M.right}else break}return new b(this,[])},h.ge=function(x){for(var M=this._compare,A=this.root,p=[],S=0;A;){var y=M(x,A.key);p.push(A),y<=0&&(S=p.length),y<=0?A=A.left:A=A.right}return p.length=S,new b(this,p)},h.gt=function(x){for(var M=this._compare,A=this.root,p=[],S=0;A;){var y=M(x,A.key);p.push(A),y<0&&(S=p.length),y<0?A=A.left:A=A.right}return p.length=S,new b(this,p)},h.lt=function(x){for(var M=this._compare,A=this.root,p=[],S=0;A;){var y=M(x,A.key);p.push(A),y>0&&(S=p.length),y<=0?A=A.left:A=A.right}return p.length=S,new b(this,p)},h.le=function(x){for(var M=this._compare,A=this.root,p=[],S=0;A;){var y=M(x,A.key);p.push(A),y>=0&&(S=p.length),y<0?A=A.left:A=A.right}return p.length=S,new b(this,p)},h.find=function(x){for(var M=this._compare,A=this.root,p=[];A;){var S=M(x,A.key);if(p.push(A),S===0)return new b(this,p);S<=0?A=A.left:A=A.right}return new b(this,[])},h.remove=function(x){var M=this.find(x);return M?M.remove():this},h.get=function(x){for(var M=this._compare,A=this.root;A;){var p=M(x,A.key);if(p===0)return A.value;p<=0?A=A.left:A=A.right}};function b(x,M){this.tree=x,this._stack=M}var g=b.prototype;Object.defineProperty(g,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(g,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),g.clone=function(){return new b(this.tree,this._stack.slice())};function _(x,M){x.key=M.key,x.value=M.value,x.left=M.left,x.right=M.right,x._color=M._color,x._count=M._count}function T(x){for(var M,A,p,S,y=x.length-1;y>=0;--y){if(M=x[y],y===0){M._color=o;return}if(A=x[y-1],A.left===M){if(p=A.right,p.right&&p.right._color===a){if(p=A.right=l(p),S=p.right=l(p.right),A.right=p.left,p.left=A,p.right=S,p._color=A._color,M._color=o,A._color=o,S._color=o,f(A),f(p),y>1){var E=x[y-2];E.left===A?E.left=p:E.right=p}x[y-1]=p;return}else if(p.left&&p.left._color===a){if(p=A.right=l(p),S=p.left=l(p.left),A.right=S.left,p.left=S.right,S.left=A,S.right=p,S._color=A._color,A._color=o,p._color=o,M._color=o,f(A),f(p),f(S),y>1){var E=x[y-2];E.left===A?E.left=S:E.right=S}x[y-1]=S;return}if(p._color===o)if(A._color===a){A._color=o,A.right=u(a,p);return}else{A.right=u(a,p);continue}else{if(p=l(p),A.right=p.left,p.left=A,p._color=A._color,A._color=a,f(A),f(p),y>1){var E=x[y-2];E.left===A?E.left=p:E.right=p}x[y-1]=p,x[y]=A,y+11){var E=x[y-2];E.right===A?E.right=p:E.left=p}x[y-1]=p;return}else if(p.right&&p.right._color===a){if(p=A.left=l(p),S=p.right=l(p.right),A.left=S.right,p.right=S.left,S.right=A,S.left=p,S._color=A._color,A._color=o,p._color=o,M._color=o,f(A),f(p),f(S),y>1){var E=x[y-2];E.right===A?E.right=S:E.left=S}x[y-1]=S;return}if(p._color===o)if(A._color===a){A._color=o,A.left=u(a,p);return}else{A.left=u(a,p);continue}else{if(p=l(p),A.left=p.right,p.right=A,p._color=A._color,A._color=a,f(A),f(p),y>1){var E=x[y-2];E.right===A?E.right=p:E.left=p}x[y-1]=p,x[y]=A,y+1=0;--p){var A=x[p];A.left===x[p+1]?M[p]=new s(A._color,A.key,A.value,M[p+1],A.right,A._count):M[p]=new s(A._color,A.key,A.value,A.left,M[p+1],A._count)}if(A=M[M.length-1],A.left&&A.right){var S=M.length;for(A=A.left;A.right;)M.push(A),A=A.right;var y=M[S-1];M.push(new s(A._color,y.key,y.value,A.left,A.right,A._count)),M[S-1].key=A.key,M[S-1].value=A.value;for(var p=M.length-2;p>=S;--p)A=M[p],M[p]=new s(A._color,A.key,A.value,A.left,M[p+1],A._count);M[S-1].left=M[S]}if(A=M[M.length-1],A._color===a){var E=M[M.length-2];E.left===A?E.left=null:E.right===A&&(E.right=null),M.pop();for(var p=0;p0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(g,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(g,"index",{get:function(){var x=0,M=this._stack;if(M.length===0){var A=this.tree.root;return A?A._count:0}else M[M.length-1].left&&(x=M[M.length-1].left._count);for(var p=M.length-2;p>=0;--p)M[p+1]===M[p].right&&(++x,M[p].left&&(x+=M[p].left._count));return x},enumerable:!0}),g.next=function(){var x=this._stack;if(x.length!==0){var M=x[x.length-1];if(M.right)for(M=M.right;M;)x.push(M),M=M.left;else for(x.pop();x.length>0&&x[x.length-1].right===M;)M=x[x.length-1],x.pop()}},Object.defineProperty(g,"hasNext",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].right)return!0;for(var M=x.length-1;M>0;--M)if(x[M-1].left===x[M])return!0;return!1}}),g.update=function(x){var M=this._stack;if(M.length===0)throw new Error("Can't update empty node!");var A=new Array(M.length),p=M[M.length-1];A[A.length-1]=new s(p._color,p.key,x,p.left,p.right,p._count);for(var S=M.length-2;S>=0;--S)p=M[S],p.left===M[S+1]?A[S]=new s(p._color,p.key,p.value,A[S+1],p.right,p._count):A[S]=new s(p._color,p.key,p.value,p.left,A[S+1],p._count);return new c(this.tree._compare,A[0])},g.prev=function(){var x=this._stack;if(x.length!==0){var M=x[x.length-1];if(M.left)for(M=M.left;M;)x.push(M),M=M.right;else for(x.pop();x.length>0&&x[x.length-1].left===M;)M=x[x.length-1],x.pop()}},Object.defineProperty(g,"hasPrev",{get:function(){var x=this._stack;if(x.length===0)return!1;if(x[x.length-1].left)return!0;for(var M=x.length-1;M>0;--M)if(x[M-1].right===x[M])return!0;return!1}});function w(x,M){return xM?1:0}function k(x){return new c(x||w,null)}},3837:function(i,a,o){"use strict";i.exports=C;var s=o(4935),l=o(501),u=o(5304),f=o(6429),c=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function m(L){return d.isView(L)&&!(L instanceof v)}function b(L){return Array.isArray(L)||m(L)}function g(L,R){return L[0]=R[0],L[1]=R[1],L[2]=R[2],L}function _(L){this.gl=L,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.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],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","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],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(L)}var T=_.prototype;T.update=function(L){L=L||{};function R($,oe,te){if(te in L){var V=L[te],ne=this[te],W;($?b(V)&&b(V[0]):b(V))?this[te]=W=[oe(V[0]),oe(V[1]),oe(V[2])]:this[te]=W=[oe(V),oe(V),oe(V)];for(var fe=0;fe<3;++fe)if(W[fe]!==ne[fe])return!0}return!1}var I=R.bind(this,!1,Number),P=R.bind(this,!1,Boolean),D=R.bind(this,!1,String),q=R.bind(this,!0,function($){if(b($)){if($.length===3)return[+$[0],+$[1],+$[2],1];if($.length===4)return[+$[0],+$[1],+$[2],+$[3]]}return[0,0,0,1]}),N,U=!1,G=!1;if("bounds"in L){var ee=L.bounds;e:for(var Q=0;Q<2;++Q)for(var j=0;j<3;++j)ee[Q][j]!==this.bounds[Q][j]&&(G=!0),this.bounds[Q][j]=ee[Q][j]}if("ticks"in L){N=L.ticks,U=!0,this.autoTicks=!1;for(var Q=0;Q<3;++Q)this.tickSpacing[Q]=0}else I("tickSpacing")&&(this.autoTicks=!0,G=!0);if(this._firstInit&&("ticks"in L||"tickSpacing"in L||(this.autoTicks=!0),G=!0,U=!0,this._firstInit=!1),G&&this.autoTicks&&(N=c.create(this.bounds,this.tickSpacing),U=!0),U){for(var Q=0;Q<3;++Q)N[Q].sort(function(oe,te){return oe.x-te.x});c.equal(N,this.ticks)?U=!1:this.ticks=N}P("tickEnable"),D("tickFont")&&(U=!0),D("tickFontStyle")&&(U=!0),D("tickFontWeight")&&(U=!0),D("tickFontVariant")&&(U=!0),I("tickSize"),I("tickAngle"),I("tickPad"),q("tickColor");var O=D("labels");D("labelFont")&&(O=!0),D("labelFontStyle")&&(O=!0),D("labelFontWeight")&&(O=!0),D("labelFontVariant")&&(O=!0),P("labelEnable"),I("labelSize"),I("labelPad"),q("labelColor"),P("lineEnable"),P("lineMirror"),I("lineWidth"),q("lineColor"),P("lineTickEnable"),P("lineTickMirror"),I("lineTickLength"),I("lineTickWidth"),q("lineTickColor"),P("gridEnable"),I("gridWidth"),q("gridColor"),P("zeroEnable"),q("zeroLineColor"),I("zeroLineWidth"),P("backgroundEnable"),q("backgroundColor");var Z=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],K=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(O||U)&&this._text.update(this.bounds,this.labels,Z,this.ticks,K):this._text=s(this.gl,this.bounds,this.labels,Z,this.ticks,K),this._lines&&U&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function w(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var k=[new w,new w,new w];function x(L,R,I,P,D){for(var q=L.primalOffset,N=L.primalMinor,U=L.mirrorOffset,G=L.mirrorMinor,ee=P[R],Q=0;Q<3;++Q)if(R!==Q){var j=q,O=U,Z=N,K=G;ee&1<0?(Z[Q]=-1,K[Q]=0):(Z[Q]=0,K[Q]=1)}}var M=[0,0,0],A={model:h,view:h,projection:h,_ortho:!1};T.isOpaque=function(){return!0},T.isTransparent=function(){return!1},T.drawTransparent=function(L){};var p=0,S=[0,0,0],y=[0,0,0],E=[0,0,0];T.draw=function(L){L=L||A;for(var te=this.gl,R=L.model||h,I=L.view||h,P=L.projection||h,D=this.bounds,q=L._ortho||!1,N=f(R,I,P,D,q),U=N.cubeEdges,G=N.axis,ee=I[12],Q=I[13],j=I[14],O=I[15],Z=q?2:1,K=Z*this.pixelRatio*(P[3]*ee+P[7]*Q+P[11]*j+P[15]*O)/te.drawingBufferHeight,$=0;$<3;++$)this.lastCubeProps.cubeEdges[$]=U[$],this.lastCubeProps.axis[$]=G[$];for(var oe=k,$=0;$<3;++$)x(k[$],$,this.bounds,U,G);for(var te=this.gl,V=M,$=0;$<3;++$)this.backgroundEnable[$]?V[$]=G[$]:V[$]=0;this._background.draw(R,I,P,D,V,this.backgroundColor),this._lines.bind(R,I,P,this);for(var $=0;$<3;++$){var ne=[0,0,0];G[$]>0?ne[$]=D[1][$]:ne[$]=D[0][$];for(var W=0;W<2;++W){var fe=($+1+W)%3,ge=($+1+(W^1))%3;this.gridEnable[fe]&&this._lines.drawGrid(fe,ge,this.bounds,ne,this.gridColor[fe],this.gridWidth[fe]*this.pixelRatio)}for(var W=0;W<2;++W){var fe=($+1+W)%3,ge=($+1+(W^1))%3;this.zeroEnable[ge]&&Math.min(D[0][ge],D[1][ge])<=0&&Math.max(D[0][ge],D[1][ge])>=0&&this._lines.drawZero(fe,ge,this.bounds,ne,this.zeroLineColor[ge],this.zeroLineWidth[ge]*this.pixelRatio)}}for(var $=0;$<3;++$){this.lineEnable[$]&&this._lines.drawAxisLine($,this.bounds,oe[$].primalOffset,this.lineColor[$],this.lineWidth[$]*this.pixelRatio),this.lineMirror[$]&&this._lines.drawAxisLine($,this.bounds,oe[$].mirrorOffset,this.lineColor[$],this.lineWidth[$]*this.pixelRatio);for(var Ce=g(S,oe[$].primalMinor),Ne=g(y,oe[$].mirrorMinor),pe=this.lineTickLength,W=0;W<3;++W){var me=K/R[5*W];Ce[W]*=pe[W]*me,Ne[W]*=pe[W]*me}this.lineTickEnable[$]&&this._lines.drawAxisTicks($,oe[$].primalOffset,Ce,this.lineTickColor[$],this.lineTickWidth[$]*this.pixelRatio),this.lineTickMirror[$]&&this._lines.drawAxisTicks($,oe[$].mirrorOffset,Ne,this.lineTickColor[$],this.lineTickWidth[$]*this.pixelRatio)}this._lines.unbind(),this._text.bind(R,I,P,this.pixelRatio);var Ie,Re=.5,ze,Be;function tt(He){Be=[0,0,0],Be[He]=1}function rt(He,Fe,ke){var Ue=(He+1)%3,Ge=(He+2)%3,lt=Fe[Ue],it=Fe[Ge],wt=ke[Ue],_t=ke[Ge];if(lt>0&&_t>0){tt(Ue);return}else if(lt>0&&_t<0){tt(Ue);return}else if(lt<0&&_t>0){tt(Ue);return}else if(lt<0&&_t<0){tt(Ue);return}else if(it>0&&wt>0){tt(Ge);return}else if(it>0&&wt<0){tt(Ge);return}else if(it<0&&wt>0){tt(Ge);return}else if(it<0&&wt<0){tt(Ge);return}}for(var $=0;$<3;++$){for(var ce=oe[$].primalMinor,Ee=oe[$].mirrorMinor,Ae=g(E,oe[$].primalOffset),W=0;W<3;++W)this.lineTickEnable[$]&&(Ae[W]+=K*ce[W]*Math.max(this.lineTickLength[W],0)/R[5*W]);var Pe=[0,0,0];if(Pe[$]=1,this.tickEnable[$]){this.tickAngle[$]===-3600?(this.tickAngle[$]=0,this.tickAlign[$]="auto"):this.tickAlign[$]=-1,ze=1,Ie=[this.tickAlign[$],Re,ze],Ie[0]==="auto"?Ie[0]=p:Ie[0]=parseInt(""+Ie[0]),Be=[0,0,0],rt($,ce,Ee);for(var W=0;W<3;++W)Ae[W]+=K*ce[W]*this.tickPad[W]/R[5*W];this._text.drawTicks($,this.tickSize[$],this.tickAngle[$],Ae,this.tickColor[$],Pe,Be,Ie)}if(this.labelEnable[$]){ze=0,Be=[0,0,0],this.labels[$].length>4&&(tt($),ze=1),Ie=[this.labelAlign[$],Re,ze],Ie[0]==="auto"?Ie[0]=p:Ie[0]=parseInt(""+Ie[0]);for(var W=0;W<3;++W)Ae[W]+=K*ce[W]*this.labelPad[W]/R[5*W];Ae[$]+=.5*(D[0][$]+D[1][$]),this._text.drawLabel($,this.labelSize[$],this.labelAngle[$],Ae,this.labelColor[$],[0,0,0],Be,Ie)}}this._text.unbind()},T.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function C(L,R){var I=new _(L);return I.update(R),I}},5304:function(i,a,o){"use strict";i.exports=h;var s=o(2762),l=o(8116),u=o(1879).bg;function f(d,v,m,b){this.gl=d,this.buffer=v,this.vao=m,this.shader=b}var c=f.prototype;c.draw=function(d,v,m,b,g,_){for(var T=!1,w=0;w<3;++w)T=T||g[w];if(T){var k=this.gl;k.enable(k.POLYGON_OFFSET_FILL),k.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:d,view:v,projection:m,bounds:b,enable:g,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),k.disable(k.POLYGON_OFFSET_FILL)}},c.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function h(d){for(var v=[],m=[],b=0,g=0;g<3;++g)for(var _=(g+1)%3,T=(g+2)%3,w=[0,0,0],k=[0,0,0],x=-1;x<=1;x+=2){m.push(b,b+2,b+1,b+1,b+2,b+3),w[g]=x,k[g]=x;for(var M=-1;M<=1;M+=2){w[_]=M;for(var A=-1;A<=1;A+=2)w[T]=A,v.push(w[0],w[1],w[2],k[0],k[1],k[2]),b+=1}var p=_;_=T,T=p}var S=s(d,new Float32Array(v)),y=s(d,new Uint16Array(m),d.ELEMENT_ARRAY_BUFFER),E=l(d,[{buffer:S,type:d.FLOAT,size:3,offset:0,stride:24},{buffer:S,type:d.FLOAT,size:3,offset:12,stride:24}],y),C=u(d);return C.attributes.position.location=0,C.attributes.normal.location=1,new f(d,S,E,C)}},6429:function(i,a,o){"use strict";i.exports=x;var s=o(8828),l=o(6760),u=o(5202),f=o(3250),c=new Array(16),h=new Array(8),d=new Array(8),v=new Array(3),m=[0,0,0];(function(){for(var M=0;M<8;++M)h[M]=[1,1,1,1],d[M]=[1,1,1]})();function b(M,A,p){for(var S=0;S<4;++S){M[S]=p[12+S];for(var y=0;y<3;++y)M[S]+=A[y]*p[4*y+S]}}var g=[[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]];function _(M){for(var A=0;AG&&(I|=1<G){I|=1<d[C][1])&&(oe=C);for(var te=-1,C=0;C<3;++C){var V=oe^1<d[ne][0]&&(ne=V)}}var W=T;W[0]=W[1]=W[2]=0,W[s.log2(te^oe)]=oe&te,W[s.log2(oe^ne)]=oe≠var fe=ne^7;fe===I||fe===$?(fe=te^7,W[s.log2(ne^fe)]=fe&ne):W[s.log2(te^fe)]=fe&te;for(var ge=w,Ce=I,q=0;q<3;++q)Ce&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ? + b - PI : + b; +} + +float look_horizontal_or_vertical(float a, float ratio) { + // ratio controls the ratio between being horizontal to (vertical + horizontal) + // if ratio is set to 0.5 then it is 50%, 50%. + // when using a higher ratio e.g. 0.75 the result would + // likely be more horizontal than vertical. + + float b = positive_angle(a); + + return + (b < ( ratio) * HALF_PI) ? 0.0 : + (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI : + (b < (2.0 + ratio) * HALF_PI) ? 0.0 : + (b < (4.0 - ratio) * HALF_PI) ? HALF_PI : + 0.0; +} + +float roundTo(float a, float b) { + return float(b * floor((a + 0.5 * b) / b)); +} + +float look_round_n_directions(float a, int n) { + float b = positive_angle(a); + float div = TWO_PI / float(n); + float c = roundTo(b, div); + return look_upwards(c); +} + +float applyAlignOption(float rawAngle, float delta) { + return + (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions + (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical + (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis + (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards + (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal + rawAngle; // otherwise return back raw input angle +} + +bool isAxisTitle = (axis.x == 0.0) && + (axis.y == 0.0) && + (axis.z == 0.0); + +void main() { + //Compute world offset + float axisDistance = position.z; + vec3 dataPosition = axisDistance * axis + offset; + + float beta = angle; // i.e. user defined attributes for each tick + + float axisAngle; + float clipAngle; + float flip; + + if (enableAlign) { + axisAngle = (isAxisTitle) ? HALF_PI : + computeViewAngle(dataPosition, dataPosition + axis); + clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir); + + axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0; + clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0; + + flip = (dot(vec2(cos(axisAngle), sin(axisAngle)), + vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0; + + beta += applyAlignOption(clipAngle, flip * PI); + } + + //Compute plane offset + vec2 planeCoord = position.xy * pixelScale; + + mat2 planeXform = scale * mat2( + cos(beta), sin(beta), + -sin(beta), cos(beta) + ); + + vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution; + + //Compute clip position + vec3 clipPosition = project(dataPosition); + + //Apply text offset in clip coordinates + clipPosition += vec3(viewOffset, 0.0); + + //Done + gl_Position = vec4(clipPosition, 1.0); +} +`]),h=s([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 color; +void main() { + gl_FragColor = color; +}`]);a.Q=function(m){return l(m,c,h,null,[{name:"position",type:"vec3"}])};var d=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec3 normal; + +uniform mat4 model, view, projection; +uniform vec3 enable; +uniform vec3 bounds[2]; + +varying vec3 colorChannel; + +void main() { + + vec3 signAxis = sign(bounds[1] - bounds[0]); + + vec3 realNormal = signAxis * normal; + + if(dot(realNormal, enable) > 0.0) { + vec3 minRange = min(bounds[0], bounds[1]); + vec3 maxRange = max(bounds[0], bounds[1]); + vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0)); + gl_Position = projection * (view * (model * vec4(nPosition, 1.0))); + } else { + gl_Position = vec4(0,0,0,0); + } + + colorChannel = abs(realNormal); +} +`]),v=s([`precision highp float; +#define GLSLIFY 1 + +uniform vec4 colors[3]; + +varying vec3 colorChannel; + +void main() { + gl_FragColor = colorChannel.x * colors[0] + + colorChannel.y * colors[1] + + colorChannel.z * colors[2]; +}`]);a.bg=function(m){return l(m,d,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(i,a,o){"use strict";i.exports=_;var s=o(2762),l=o(8116),u=o(4359),f=o(1879).Q,c=window||process.global||{},h=c.__TEXT_CACHE||{};c.__TEXT_CACHE={};var d=3;function v(T,w,k,x){this.gl=T,this.shader=w,this.buffer=k,this.vao=x,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var m=v.prototype,b=[0,0];m.bind=function(T,w,k,x){this.vao.bind(),this.shader.bind();var M=this.shader.uniforms;M.model=T,M.view=w,M.projection=k,M.pixelScale=x,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},m.unbind=function(){this.vao.unbind()},m.update=function(T,w,k,x,M){var A=[];function p(q,N,U,G,ee,Q){var j=[U.style,U.weight,U.variant,U.family].join("_"),O=h[j];O||(O=h[j]={});var Z=O[N];Z||(Z=O[N]=g(N,{triangles:!0,font:U.family,fontStyle:U.style,fontWeight:U.weight,fontVariant:U.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ee,styletags:Q}));for(var K=(G||12)/12,$=Z.positions,oe=Z.cells,te=0,V=oe.length;te=0;--W){var fe=$[ne[W]];A.push(K*fe[0],-K*fe[1],q)}}for(var S=[0,0,0],y=[0,0,0],E=[0,0,0],C=[0,0,0],L=1.25,R={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},I=0;I<3;++I){E[I]=A.length/d|0,p(.5*(T[0][I]+T[1][I]),w[I],k[I],12,L,R),C[I]=(A.length/d|0)-E[I],S[I]=A.length/d|0;for(var P=0;P=0&&(d=c.length-h-1);var v=Math.pow(10,d),m=Math.round(u*f*v),b=m+"";if(b.indexOf("e")>=0)return b;var g=m/v,_=m%v;m<0?(g=-Math.ceil(g)|0,_=-_|0):(g=Math.floor(g)|0,_=_|0);var T=""+g;if(m<0&&(T="-"+T),d){for(var w=""+_;w.length=u[0][h];--m)d.push({x:m*f[h],text:o(f[h],m)});c.push(d)}return c}function l(u,f){for(var c=0;c<3;++c){if(u[c].length!==f[c].length)return!1;for(var h=0;hT)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return g.bufferSubData(_,x,k),T}function v(g,_){for(var T=s.malloc(g.length,_),w=g.length,k=0;k=0;--w){if(_[w]!==T)return!1;T*=g[w]}return!0}h.update=function(g,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof g=="object"&&typeof g.shape<"u"){var T=g.dtype;if(f.indexOf(T)<0&&(T="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var w=gl.getExtension("OES_element_index_uint");w&&T!=="uint16"?T="uint32":T="uint16"}if(T===g.dtype&&m(g.shape,g.stride))g.offset===0&&g.data.length===g.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,g.data,_):this.length=d(this.gl,this.type,this.length,this.usage,g.data.subarray(g.offset,g.shape[0]),_);else{var k=s.malloc(g.size,T),x=u(k,g.shape);l.assign(x,g),_<0?this.length=d(this.gl,this.type,this.length,this.usage,k,_):this.length=d(this.gl,this.type,this.length,this.usage,k.subarray(0,g.size),_),s.free(k)}}else if(Array.isArray(g)){var M;this.type===this.gl.ELEMENT_ARRAY_BUFFER?M=v(g,"uint16"):M=v(g,"float32"),_<0?this.length=d(this.gl,this.type,this.length,this.usage,M,_):this.length=d(this.gl,this.type,this.length,this.usage,M.subarray(0,g.length),_),s.free(M)}else if(typeof g=="object"&&typeof g.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,g,_);else if(typeof g=="number"||g===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");g=g|0,g<=0&&(g=1),this.gl.bufferData(this.type,g|0,this.usage),this.length=g}else throw new Error("gl-buffer: Invalid data type")};function b(g,_,T,w){if(T=T||g.ARRAY_BUFFER,w=w||g.DYNAMIC_DRAW,T!==g.ARRAY_BUFFER&&T!==g.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(w!==g.DYNAMIC_DRAW&&w!==g.STATIC_DRAW&&w!==g.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 k=g.createBuffer(),x=new c(g,T,k,0,w);return x.update(_),x}i.exports=b},6405:function(i,a,o){"use strict";var s=o(2931);i.exports=function(u,f){var c=u.positions,h=u.vectors,d={positions:[],vertexIntensity:[],vertexIntensityBounds:u.vertexIntensityBounds,vectors:[],cells:[],coneOffset:u.coneOffset,colormap:u.colormap};if(u.positions.length===0)return f&&(f[0]=[0,0,0],f[1]=[0,0,0]),d;for(var v=0,m=1/0,b=-1/0,g=1/0,_=-1/0,T=1/0,w=-1/0,k=null,x=null,M=[],A=1/0,p=!1,S=u.coneSizemode==="raw",y=0;yv&&(v=s.length(C)),y&&!S){var L=2*s.distance(k,E)/(s.length(x)+s.length(C));L?(A=Math.min(A,L),p=!1):p=!0}p||(k=E,x=C),M.push(C)}var R=[m,g,T],I=[b,_,w];f&&(f[0]=R,f[1]=I),v===0&&(v=1);var P=1/v;isFinite(A)||(A=1),d.vectorScale=A;var D=u.coneSize||(S?1:.5);u.absoluteConeSize&&(D=u.absoluteConeSize*P),d.coneScale=D;for(var y=0,q=0;y=1},g.isTransparent=function(){return this.opacity<1},g.pickSlots=1,g.setPickBase=function(M){this.pickId=M};function _(M){for(var A=v({colormap:M,nshades:256,format:"rgba"}),p=new Uint8Array(256*4),S=0;S<256;++S){for(var y=A[S],E=0;E<3;++E)p[4*S+E]=y[E];p[4*S+3]=y[3]*255}return d(p,[256,256,4],[4,0,1])}function T(M){for(var A=M.length,p=new Array(A),S=0;S0){var q=this.triShader;q.bind(),q.uniforms=L,this.triangleVAO.bind(),A.drawArrays(A.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},g.drawPick=function(M){M=M||{};for(var A=this.gl,p=M.model||m,S=M.view||m,y=M.projection||m,E=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],C=0;C<3;++C)E[0][C]=Math.max(E[0][C],this.clipBounds[0][C]),E[1][C]=Math.min(E[1][C],this.clipBounds[1][C]);this._model=[].slice.call(p),this._view=[].slice.call(S),this._projection=[].slice.call(y),this._resolution=[A.drawingBufferWidth,A.drawingBufferHeight];var L={model:p,view:S,projection:y,clipBounds:E,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},R=this.pickShader;R.bind(),R.uniforms=L,this.triangleCount>0&&(this.triangleVAO.bind(),A.drawArrays(A.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},g.pick=function(M){if(!M||M.id!==this.pickId)return null;var A=M.value[0]+256*M.value[1]+65536*M.value[2],p=this.cells[A],S=this.positions[p[1]].slice(0,3),y={position:S,dataCoordinate:S,index:Math.floor(p[1]/48)};return this.traceType==="cone"?y.index=Math.floor(p[1]/48):this.traceType==="streamtube"&&(y.intensity=this.intensity[p[1]],y.velocity=this.vectors[p[1]].slice(0,3),y.divergence=this.vectors[p[1]][3],y.index=A),y},g.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function w(M,A){var p=s(M,A.meshShader.vertex,A.meshShader.fragment,null,A.meshShader.attributes);return p.attributes.position.location=0,p.attributes.color.location=2,p.attributes.uv.location=3,p.attributes.vector.location=4,p}function k(M,A){var p=s(M,A.pickShader.vertex,A.pickShader.fragment,null,A.pickShader.attributes);return p.attributes.position.location=0,p.attributes.id.location=1,p.attributes.vector.location=4,p}function x(M,A,p){var S=p.shaders;arguments.length===1&&(A=M,M=A.gl);var y=w(M,S),E=k(M,S),C=f(M,d(new Uint8Array([255,255,255,255]),[1,1,4]));C.generateMipmap(),C.minFilter=M.LINEAR_MIPMAP_LINEAR,C.magFilter=M.LINEAR;var L=l(M),R=l(M),I=l(M),P=l(M),D=l(M),q=u(M,[{buffer:L,type:M.FLOAT,size:4},{buffer:D,type:M.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:I,type:M.FLOAT,size:4},{buffer:P,type:M.FLOAT,size:2},{buffer:R,type:M.FLOAT,size:4}]),N=new b(M,C,y,E,L,R,D,I,P,q,p.traceType||"cone");return N.update(A),N}i.exports=x},614:function(i,a,o){var s=o(3236),l=s([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec3 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, coneScale, coneOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * conePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(conePosition, 1.0); + vec4 t_position = view * conePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = conePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),u=s([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),f=s([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the cone vertex and normal at the given index. +// +// The returned vertex is for a cone with its top at origin and height of 1.0, +// pointing in the direction of the vector attribute. +// +// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices. +// These vertices are used to make up the triangles of the cone by the following: +// segment + 0 top vertex +// segment + 1 perimeter vertex a+1 +// segment + 2 perimeter vertex a +// segment + 3 center base vertex +// segment + 4 perimeter vertex a +// segment + 5 perimeter vertex a+1 +// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment. +// To go from index to segment, floor(index / 6) +// To go from segment to angle, 2*pi * (segment/segmentCount) +// To go from index to segment index, index - (segment*6) +// +vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) { + + const float segmentCount = 8.0; + + float index = rawIndex - floor(rawIndex / + (segmentCount * 6.0)) * + (segmentCount * 6.0); + + float segment = floor(0.001 + index/6.0); + float segmentIndex = index - (segment*6.0); + + normal = -normalize(d); + + if (segmentIndex > 2.99 && segmentIndex < 3.01) { + return mix(vec3(0.0), -d, coneOffset); + } + + float nextAngle = ( + (segmentIndex > 0.99 && segmentIndex < 1.01) || + (segmentIndex > 4.99 && segmentIndex < 5.01) + ) ? 1.0 : 0.0; + float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount); + + vec3 v1 = mix(d, vec3(0.0), coneOffset); + vec3 v2 = v1 - d; + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d)*0.25; + vec3 y = v * sin(angle) * length(d)*0.25; + vec3 v3 = v2 + x + y; + if (segmentIndex < 3.0) { + vec3 tx = u * sin(angle); + vec3 ty = v * -cos(angle); + vec3 tangent = tx + ty; + normal = normalize(cross(v3 - v1, tangent)); + } + + if (segmentIndex == 0.0) { + return mix(d, vec3(0.0), coneOffset); + } + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float vectorScale, coneScale, coneOffset; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal); + vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + gl_Position = projection * (view * conePosition); + f_id = id; + f_position = position.xyz; +} +`]),c=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},a.pickShader={vertex:f,fragment:c,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(i){i.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(i,a,o){var s=o(737);i.exports=function(u){return s[u]}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),l=o(8116),u=o(3436),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function c(g,_,T,w){this.gl=g,this.shader=w,this.buffer=_,this.vao=T,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,this.hasAlpha=!1}var h=c.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(g){var _=this.gl,T=this.shader.uniforms;this.shader.bind();var w=T.view=g.view||f,k=T.projection=g.projection||f;T.model=g.model||f,T.clipBounds=this.clipBounds,T.opacity=this.opacity;var x=w[12],M=w[13],A=w[14],p=w[15],S=g._ortho||!1,y=S?2:1,E=y*this.pixelRatio*(k[3]*x+k[7]*M+k[11]*A+k[15]*p)/_.drawingBufferHeight;this.vao.bind();for(var C=0;C<3;++C)_.lineWidth(this.lineWidth[C]*this.pixelRatio),T.capSize=this.capSize[C]*E,this.lineCount[C]&&_.drawArrays(_.LINES,this.lineOffset[C],this.lineCount[C]);this.vao.unbind()};function d(g,_){for(var T=0;T<3;++T)g[0][T]=Math.min(g[0][T],_[T]),g[1][T]=Math.max(g[1][T],_[T])}var v=function(){for(var g=new Array(3),_=0;_<3;++_){for(var T=[],w=1;w<=2;++w)for(var k=-1;k<=1;k+=2){var x=(w+_)%3,M=[0,0,0];M[x]=k,T.push(M)}g[_]=T}return g}();function m(g,_,T,w){for(var k=v[w],x=0;x0){var L=S.slice();L[A]+=E[1][A],k.push(S[0],S[1],S[2],C[0],C[1],C[2],C[3],0,0,0,L[0],L[1],L[2],C[0],C[1],C[2],C[3],0,0,0),d(this.bounds,L),M+=2+m(k,L,C,A)}}}this.lineCount[A]=M-this.lineOffset[A]}this.buffer.update(k)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(g){var _=g.gl,T=s(_),w=l(_,[{buffer:T,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:T,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:T,type:_.FLOAT,size:3,offset:28,stride:40}]),k=u(_);k.attributes.position.location=0,k.attributes.color.location=1,k.attributes.offset.location=2;var x=new c(_,T,w,k);return x.update(g),x}},3436:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, offset; +attribute vec4 color; +uniform mat4 model, view, projection; +uniform float capSize; +varying vec4 fragColor; +varying vec3 fragPosition; + +void main() { + vec4 worldPosition = model * vec4(position, 1.0); + worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0); + gl_Position = projection * (view * worldPosition); + fragColor = color; + fragPosition = position; +}`]),f=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float opacity; +varying vec3 fragPosition; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], fragPosition) || + fragColor.a * opacity == 0. + ) discard; + + gl_FragColor = opacity * fragColor; +}`]);i.exports=function(c){return l(c,u,f,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(i,a,o){"use strict";var s=o(7766);i.exports=M;var l=null,u,f,c,h;function d(A){var p=A.getParameter(A.FRAMEBUFFER_BINDING),S=A.getParameter(A.RENDERBUFFER_BINDING),y=A.getParameter(A.TEXTURE_BINDING_2D);return[p,S,y]}function v(A,p){A.bindFramebuffer(A.FRAMEBUFFER,p[0]),A.bindRenderbuffer(A.RENDERBUFFER,p[1]),A.bindTexture(A.TEXTURE_2D,p[2])}function m(A,p){var S=A.getParameter(p.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(S+1);for(var y=0;y<=S;++y){for(var E=new Array(S),C=0;C1&&R.drawBuffersWEBGL(l[L]);var N=S.getExtension("WEBGL_depth_texture");N?I?A.depth=g(S,E,C,N.UNSIGNED_INT_24_8_WEBGL,S.DEPTH_STENCIL,S.DEPTH_STENCIL_ATTACHMENT):P&&(A.depth=g(S,E,C,S.UNSIGNED_SHORT,S.DEPTH_COMPONENT,S.DEPTH_ATTACHMENT)):P&&I?A._depth_rb=_(S,E,C,S.DEPTH_STENCIL,S.DEPTH_STENCIL_ATTACHMENT):P?A._depth_rb=_(S,E,C,S.DEPTH_COMPONENT16,S.DEPTH_ATTACHMENT):I&&(A._depth_rb=_(S,E,C,S.STENCIL_INDEX,S.STENCIL_ATTACHMENT));var U=S.checkFramebufferStatus(S.FRAMEBUFFER);if(U!==S.FRAMEBUFFER_COMPLETE){A._destroyed=!0,S.bindFramebuffer(S.FRAMEBUFFER,null),S.deleteFramebuffer(A.handle),A.handle=null,A.depth&&(A.depth.dispose(),A.depth=null),A._depth_rb&&(S.deleteRenderbuffer(A._depth_rb),A._depth_rb=null);for(var q=0;qE||S<0||S>E)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");A._shape[0]=p,A._shape[1]=S;for(var C=d(y),L=0;LC||S<0||S>C)throw new Error("gl-fbo: Parameters are too large for FBO");y=y||{};var L=1;if("color"in y){if(L=Math.max(y.color|0,0),L<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(L>1)if(E){if(L>A.getParameter(E.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+L+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var R=A.UNSIGNED_BYTE,I=A.getExtension("OES_texture_float");if(y.float&&L>0){if(!I)throw new Error("gl-fbo: Context does not support floating point textures");R=A.FLOAT}else y.preferFloat&&L>0&&I&&(R=A.FLOAT);var P=!0;"depth"in y&&(P=!!y.depth);var D=!1;return"stencil"in y&&(D=!!y.stencil),new w(A,p,S,R,L,P,D,E)}},2992:function(i,a,o){var s=o(3387).sprintf,l=o(5171),u=o(1848),f=o(1085);i.exports=c;function c(h,d,v){"use strict";var m=u(d)||"of unknown name (see npm glsl-shader-name)",b="unknown type";v!==void 0&&(b=v===l.FRAGMENT_SHADER?"fragment":"vertex");for(var g=s(`Error compiling %s shader %s: +`,b,m),_=s("%s%s",g,h),T=h.split(` +`),w={},k=0;k>L*8&255;this.pickOffset=T,k.bind();var R=k.uniforms;R.viewTransform=g,R.pickOffset=_,R.shape=this.shape;var I=k.attributes;return this.positionBuffer.bind(),I.position.pointer(),this.weightBuffer.bind(),I.weight.pointer(A.UNSIGNED_BYTE,!1),this.idBuffer.bind(),I.pickId.pointer(A.UNSIGNED_BYTE,!1),A.drawArrays(A.TRIANGLES,0,M),T+this.shape[0]*this.shape[1]}}}(),v.pick=function(g,_,T){var w=this.pickOffset,k=this.shape[0]*this.shape[1];if(T=w+k)return null;var x=T-w,M=this.xData,A=this.yData;return{object:this,pointId:x,dataCoord:[M[x%this.shape[0]],A[x/this.shape[0]|0]]}},v.update=function(g){g=g||{};var _=g.shape||[0,0],T=g.x||l(_[0]),w=g.y||l(_[1]),k=g.z||new Float32Array(_[0]*_[1]),x=g.zsmooth!==!1;this.xData=T,this.yData=w;var M=g.colorLevels||[0],A=g.colorValues||[0,0,0,1],p=M.length,S=this.bounds,y,E,C,L;x?(y=S[0]=T[0],E=S[1]=w[0],C=S[2]=T[T.length-1],L=S[3]=w[w.length-1]):(y=S[0]=T[0]+(T[1]-T[0])/2,E=S[1]=w[0]+(w[1]-w[0])/2,C=S[2]=T[T.length-1]+(T[T.length-1]-T[T.length-2])/2,L=S[3]=w[w.length-1]+(w[w.length-1]-w[w.length-2])/2);var R=1/(C-y),I=1/(L-E),P=_[0],D=_[1];this.shape=[P,D];var q=(x?(P-1)*(D-1):P*D)*(m.length>>>1);this.numVertices=q;for(var N=u.mallocUint8(q*4),U=u.mallocFloat32(q*2),G=u.mallocUint8(q*2),ee=u.mallocUint32(q),Q=0,j=x?P-1:P,O=x?D-1:D,Z=0;Z max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D dashTexture; +uniform float dashScale; +uniform float opacity; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if ( + outOfRange(clipBounds[0], clipBounds[1], worldPosition) || + fragColor.a * opacity == 0. + ) discard; + + float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r; + if(dashWeight < 0.5) { + discard; + } + gl_FragColor = fragColor * opacity; +} +`]),c=s([`precision highp float; +#define GLSLIFY 1 + +#define FLOAT_MAX 1.70141184e38 +#define FLOAT_MIN 1.17549435e-38 + +// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl +vec4 packFloat(float v) { + float av = abs(v); + + //Handle special cases + if(av < FLOAT_MIN) { + return vec4(0.0, 0.0, 0.0, 0.0); + } else if(v > FLOAT_MAX) { + return vec4(127.0, 128.0, 0.0, 0.0) / 255.0; + } else if(v < -FLOAT_MAX) { + return vec4(255.0, 128.0, 0.0, 0.0) / 255.0; + } + + vec4 c = vec4(0,0,0,0); + + //Compute exponent and mantissa + float e = floor(log2(av)); + float m = av * pow(2.0, -e) - 1.0; + + //Unpack mantissa + c[1] = floor(128.0 * m); + m -= c[1] / 128.0; + c[2] = floor(32768.0 * m); + m -= c[2] / 32768.0; + c[3] = floor(8388608.0 * m); + + //Unpack exponent + float ebias = e + 127.0; + c[0] = floor(ebias / 2.0); + ebias -= c[0] * 2.0; + c[1] += floor(ebias) * 128.0; + + //Unpack sign bit + c[0] += 128.0 * step(0.0, -v); + + //Scale back to range + return c / 255.0; +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform float pickId; +uniform vec3 clipBounds[2]; + +varying vec3 worldPosition; +varying float pixelArcLength; +varying vec4 fragColor; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard; + + gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz); +}`]),h=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];a.createShader=function(d){return l(d,u,f,null,h)},a.createPickShader=function(d){return l(d,u,c,null,h)}},5714:function(i,a,o){"use strict";i.exports=A;var s=o(2762),l=o(8116),u=o(7766),f=new Uint8Array(4),c=new Float32Array(f.buffer);function h(p,S,y,E){return f[0]=E,f[1]=y,f[2]=S,f[3]=p,c[0]}var d=o(2478),v=o(9618),m=o(7319),b=m.createShader,g=m.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(p,S){for(var y=0,E=0;E<3;++E){var C=p[E]-S[E];y+=C*C}return Math.sqrt(y)}function w(p){for(var S=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],y=0;y<3;++y)S[0][y]=Math.max(p[0][y],S[0][y]),S[1][y]=Math.min(p[1][y],S[1][y]);return S}function k(p,S,y,E){this.arcLength=p,this.position=S,this.index=y,this.dataCoordinate=E}function x(p,S,y,E,C,L){this.gl=p,this.shader=S,this.pickShader=y,this.buffer=E,this.vao=C,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=L,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var M=x.prototype;M.isTransparent=function(){return this.hasAlpha},M.isOpaque=function(){return!this.hasAlpha},M.pickSlots=1,M.setPickBase=function(p){this.pickId=p},M.drawTransparent=M.draw=function(p){if(this.vertexCount){var S=this.gl,y=this.shader,E=this.vao;y.bind(),y.uniforms={model:p.model||_,view:p.view||_,projection:p.projection||_,clipBounds:w(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[S.drawingBufferWidth,S.drawingBufferHeight],pixelRatio:this.pixelRatio},E.bind(),E.draw(S.TRIANGLE_STRIP,this.vertexCount),E.unbind()}},M.drawPick=function(p){if(this.vertexCount){var S=this.gl,y=this.pickShader,E=this.vao;y.bind(),y.uniforms={model:p.model||_,view:p.view||_,projection:p.projection||_,pickId:this.pickId,clipBounds:w(this.clipBounds),screenShape:[S.drawingBufferWidth,S.drawingBufferHeight],pixelRatio:this.pixelRatio},E.bind(),E.draw(S.TRIANGLE_STRIP,this.vertexCount),E.unbind()}},M.update=function(p){var S,y;this.dirty=!0;var E=!!p.connectGaps;"dashScale"in p&&(this.dashScale=p.dashScale),this.hasAlpha=!1,"opacity"in p&&(this.opacity=+p.opacity,this.opacity<1&&(this.hasAlpha=!0));var C=[],L=[],R=[],I=0,P=0,D=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],q=p.position||p.positions;if(q){var N=p.color||p.colors||[0,0,0,1],U=p.lineWidth||1,G=!1;e:for(S=1;S0){for(var j=0;j<24;++j)C.push(C[C.length-12]);P+=2,G=!0}continue e}D[0][y]=Math.min(D[0][y],ee[y],Q[y]),D[1][y]=Math.max(D[1][y],ee[y],Q[y])}var O,Z;Array.isArray(N[0])?(O=N.length>S-1?N[S-1]:N.length>0?N[N.length-1]:[0,0,0,1],Z=N.length>S?N[S]:N.length>0?N[N.length-1]:[0,0,0,1]):O=Z=N,O.length===3&&(O=[O[0],O[1],O[2],1]),Z.length===3&&(Z=[Z[0],Z[1],Z[2],1]),!this.hasAlpha&&O[3]<1&&(this.hasAlpha=!0);var K;Array.isArray(U)?K=U.length>S-1?U[S-1]:U.length>0?U[U.length-1]:[0,0,0,1]:K=U;var $=I;if(I+=T(ee,Q),G){for(y=0;y<2;++y)C.push(ee[0],ee[1],ee[2],Q[0],Q[1],Q[2],$,K,O[0],O[1],O[2],O[3]);P+=2,G=!1}C.push(ee[0],ee[1],ee[2],Q[0],Q[1],Q[2],$,K,O[0],O[1],O[2],O[3],ee[0],ee[1],ee[2],Q[0],Q[1],Q[2],$,-K,O[0],O[1],O[2],O[3],Q[0],Q[1],Q[2],ee[0],ee[1],ee[2],I,-K,Z[0],Z[1],Z[2],Z[3],Q[0],Q[1],Q[2],ee[0],ee[1],ee[2],I,K,Z[0],Z[1],Z[2],Z[3]),P+=4}}if(this.buffer.update(C),L.push(I),R.push(q[q.length-1].slice()),this.bounds=D,this.vertexCount=P,this.points=R,this.arcLength=L,"dashes"in p){var oe=p.dashes,te=oe.slice();for(te.unshift(0),S=1;S1.0001)return null;y+=S[k]}return Math.abs(y-1)>.001?null:[x,h(v,S),S]}},840:function(i,a,o){var s=o(3236),l=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position, normal; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model + , view + , projection + , inverseModel; +uniform vec3 eyePosition + , lightPosition; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +vec4 project(vec3 p) { + return projection * (view * (model * vec4(p, 1.0))); +} + +void main() { + gl_Position = project(position); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * vec4(position , 1.0); + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + f_color = color; + f_data = position; + f_uv = uv; +} +`]),u=s([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness + , fresnel + , kambient + , kdiffuse + , kspecular; +uniform sampler2D texture; + +varying vec3 f_normal + , f_lightDirection + , f_eyeDirection + , f_data; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (f_color.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], f_data) + ) discard; + + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d + + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * f_color.a; +} +`]),f=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; + +uniform mat4 model, view, projection; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_color = color; + f_data = position; + f_uv = uv; +}`]),c=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec3 f_data; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard; + + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),h=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 uv; +attribute float pointSize; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + } + gl_PointSize = pointSize; + f_color = color; + f_uv = uv; +}`]),d=s([`precision highp float; +#define GLSLIFY 1 + +uniform sampler2D texture; +uniform float opacity; + +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5); + if(dot(pointR, pointR) > 0.25) { + discard; + } + gl_FragColor = f_color * texture2D(texture, f_uv) * opacity; +}`]),v=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; +attribute vec4 id; + +uniform mat4 model, view, projection; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + f_id = id; + f_position = position; +}`]),m=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]),b=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute float pointSize; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0.0, 0.0, 0.0, 0.0); + } else { + gl_Position = projection * (view * (model * vec4(position, 1.0))); + gl_PointSize = pointSize; + } + f_id = id; + f_position = position; +}`]),g=s([`precision highp float; +#define GLSLIFY 1 + +attribute vec3 position; + +uniform mat4 model, view, projection; + +void main() { + gl_Position = projection * (view * (model * vec4(position, 1.0))); +}`]),_=s([`precision highp float; +#define GLSLIFY 1 + +uniform vec3 contourColor; + +void main() { + gl_FragColor = vec4(contourColor, 1.0); +} +`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},a.wireShader={vertex:f,fragment:c,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},a.pointShader={vertex:h,fragment:d,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},a.pickShader={vertex:v,fragment:m,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},a.pointPickShader={vertex:b,fragment:m,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},a.contourShader={vertex:g,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(i,a,o){"use strict";var s=1e-6,l=1e-6,u=o(9405),f=o(2762),c=o(8116),h=o(7766),d=o(8406),v=o(6760),m=o(7608),b=o(9618),g=o(6729),_=o(7765),T=o(1888),w=o(840),k=o(7626),x=w.meshShader,M=w.wireShader,A=w.pointShader,p=w.pickShader,S=w.pointPickShader,y=w.contourShader,E=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function C(j,O,Z,K,$,oe,te,V,ne,W,fe,ge,Ce,Ne,pe,me,Ie,Re,ze,Be,tt,rt,ce,Ee,Ae,Pe,He){this.gl=j,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=O,this.dirty=!0,this.triShader=Z,this.lineShader=K,this.pointShader=$,this.pickShader=oe,this.pointPickShader=te,this.contourShader=V,this.trianglePositions=ne,this.triangleColors=fe,this.triangleNormals=Ce,this.triangleUVs=ge,this.triangleIds=W,this.triangleVAO=Ne,this.triangleCount=0,this.lineWidth=1,this.edgePositions=pe,this.edgeColors=Ie,this.edgeUVs=Re,this.edgeIds=me,this.edgeVAO=ze,this.edgeCount=0,this.pointPositions=Be,this.pointColors=rt,this.pointUVs=ce,this.pointSizes=Ee,this.pointIds=tt,this.pointVAO=Ae,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=Pe,this.contourVAO=He,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!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.hasAlpha=!1,this.opacityscale=!1,this._model=E,this._view=E,this._projection=E,this._resolution=[1,1]}var L=C.prototype;L.isOpaque=function(){return!this.hasAlpha},L.isTransparent=function(){return this.hasAlpha},L.pickSlots=1,L.setPickBase=function(j){this.pickId=j};function R(j,O){if(!O||!O.length)return 1;for(var Z=0;Zj&&Z>0){var K=(O[Z][0]-j)/(O[Z][0]-O[Z-1][0]);return O[Z][1]*(1-K)+K*O[Z-1][1]}}return 1}function I(j,O){for(var Z=g({colormap:j,nshades:256,format:"rgba"}),K=new Uint8Array(256*4),$=0;$<256;++$){for(var oe=Z[$],te=0;te<3;++te)K[4*$+te]=oe[te];O?K[4*$+3]=255*R($/255,O):K[4*$+3]=255*oe[3]}return b(K,[256,256,4],[4,0,1])}function P(j){for(var O=j.length,Z=new Array(O),K=0;K0){var Ce=this.triShader;Ce.bind(),Ce.uniforms=V,this.triangleVAO.bind(),O.drawArrays(O.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var Ce=this.lineShader;Ce.bind(),Ce.uniforms=V,this.edgeVAO.bind(),O.lineWidth(this.lineWidth*this.pixelRatio),O.drawArrays(O.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var Ce=this.pointShader;Ce.bind(),Ce.uniforms=V,this.pointVAO.bind(),O.drawArrays(O.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var Ce=this.contourShader;Ce.bind(),Ce.uniforms=V,this.contourVAO.bind(),O.drawArrays(O.LINES,0,this.contourCount),this.contourVAO.unbind()}},L.drawPick=function(j){j=j||{};for(var O=this.gl,Z=j.model||E,K=j.view||E,$=j.projection||E,oe=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],te=0;te<3;++te)oe[0][te]=Math.max(oe[0][te],this.clipBounds[0][te]),oe[1][te]=Math.min(oe[1][te],this.clipBounds[1][te]);this._model=[].slice.call(Z),this._view=[].slice.call(K),this._projection=[].slice.call($),this._resolution=[O.drawingBufferWidth,O.drawingBufferHeight];var V={model:Z,view:K,projection:$,clipBounds:oe,pickId:this.pickId/255},ne=this.pickShader;if(ne.bind(),ne.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),O.drawArrays(O.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),O.lineWidth(this.lineWidth*this.pixelRatio),O.drawArrays(O.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ne=this.pointPickShader;ne.bind(),ne.uniforms=V,this.pointVAO.bind(),O.drawArrays(O.POINTS,0,this.pointCount),this.pointVAO.unbind()}},L.pick=function(j){if(!j||j.id!==this.pickId)return null;for(var O=j.value[0]+256*j.value[1]+65536*j.value[2],Z=this.cells[O],K=this.positions,$=new Array(Z.length),oe=0;oex[G]&&(w.uniforms.dataAxis=m,w.uniforms.screenOffset=b,w.uniforms.color=L[_],w.uniforms.angle=R[_],M.drawArrays(M.TRIANGLES,x[G],x[ee]-x[G]))),I[_]&&U&&(b[_^1]-=Q*y*P[_],w.uniforms.dataAxis=g,w.uniforms.screenOffset=b,w.uniforms.color=D[_],w.uniforms.angle=q[_],M.drawArrays(M.TRIANGLES,N,U)),b[_^1]=Q*A[2+(_^1)]-1,E[_+2]&&(b[_^1]+=Q*y*C[_+2],Gx[G]&&(w.uniforms.dataAxis=m,w.uniforms.screenOffset=b,w.uniforms.color=L[_+2],w.uniforms.angle=R[_+2],M.drawArrays(M.TRIANGLES,x[G],x[ee]-x[G]))),I[_+2]&&U&&(b[_^1]+=Q*y*P[_+2],w.uniforms.dataAxis=g,w.uniforms.screenOffset=b,w.uniforms.color=D[_+2],w.uniforms.angle=q[_+2],M.drawArrays(M.TRIANGLES,N,U))}}(),d.drawTitle=function(){var m=[0,0],b=[0,0];return function(){var g=this.plot,_=this.shader,T=g.gl,w=g.screenBox,k=g.titleCenter,x=g.titleAngle,M=g.titleColor,A=g.pixelRatio;if(this.titleCount){for(var p=0;p<2;++p)b[p]=2*(k[p]*A-w[p])/(w[2+p]-w[p])-1;_.bind(),_.uniforms.dataAxis=m,_.uniforms.screenOffset=b,_.uniforms.angle=x,_.uniforms.color=M,T.drawArrays(T.TRIANGLES,this.titleOffset,this.titleCount)}}}(),d.bind=function(){var m=[0,0],b=[0,0],g=[0,0];return function(){var _=this.plot,T=this.shader,w=_._tickBounds,k=_.dataBox,x=_.screenBox,M=_.viewBox;T.bind();for(var A=0;A<2;++A){var p=w[A],S=w[A+2],y=S-p,E=.5*(k[A+2]+k[A]),C=k[A+2]-k[A],L=M[A],R=M[A+2],I=R-L,P=x[A],D=x[A+2],q=D-P;b[A]=2*y/C*I/q,m[A]=2*(p-E)/C*I/q}g[1]=2*_.pixelRatio/(x[3]-x[1]),g[0]=g[1]*(x[3]-x[1])/(x[2]-x[0]),T.uniforms.dataScale=b,T.uniforms.dataShift=m,T.uniforms.textScale=g,this.vbo.bind(),T.attributes.textCoordinate.pointer()}}(),d.update=function(m){var b=[],g=m.ticks,_=m.bounds,T,w,k,x,M,A;for(A=0;A<2;++A){var p=[Math.floor(b.length/3)],S=[-1/0],y=g[A];for(T=0;T=0))){var D=w[P]-x[P]*(w[P+2]-w[P])/(x[P+2]-x[P]);P===0?p.drawLine(D,w[1],D,w[3],I[P],R[P]):p.drawLine(w[0],D,w[2],D,I[P],R[P])}}for(var P=0;P=0;--_)this.objects[_].dispose();this.objects.length=0;for(var _=this.overlays.length-1;_>=0;--_)this.overlays[_].dispose();this.overlays.length=0,this.gl=null},d.addObject=function(_){this.objects.indexOf(_)<0&&(this.objects.push(_),this.setDirty())},d.removeObject=function(_){for(var T=this.objects,w=0;wMath.abs(p))g.rotate(E,0,0,-A*S*Math.PI*x.rotateSpeed/window.innerWidth);else if(!x._ortho){var C=-x.zoomSpeed*y*p/window.innerHeight*(E-g.lastT())/20;g.pan(E,0,0,T*(Math.exp(C)-1))}}},!0)},x.enableMouseListeners(),x}},799:function(i,a,o){var s=o(3236),l=o(9405),u=s([`precision mediump float; +#define GLSLIFY 1 +attribute vec2 position; +varying vec2 uv; +void main() { + uv = position; + gl_Position = vec4(position, 0, 1); +}`]),f=s([`precision mediump float; +#define GLSLIFY 1 + +uniform sampler2D accumBuffer; +varying vec2 uv; + +void main() { + vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0)); + gl_FragColor = min(vec4(1,1,1,1), accum); +}`]);i.exports=function(c){return l(c,u,f,null,[{name:"position",type:"vec2"}])}},4100:function(i,a,o){"use strict";var s=o(4437),l=o(3837),u=o(5445),f=o(4449),c=o(3589),h=o(2260),d=o(7169),v=o(351),m=o(4772),b=o(4040),g=o(799),_=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:M,createCamera:s};function T(){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 w(p,S){var y=null;try{y=p.getContext("webgl",S),y||(y=p.getContext("experimental-webgl",S))}catch{return null}return y}function k(p){var S=Math.round(Math.log(Math.abs(p))/Math.log(10));if(S<0){var y=Math.round(Math.pow(10,-S));return Math.ceil(p*y)/y}else if(S>0){var y=Math.round(Math.pow(10,S));return Math.ceil(p/y)*y}return Math.ceil(p)}function x(p){return typeof p=="boolean"?p:!0}function M(p){p=p||{},p.camera=p.camera||{};var S=p.canvas;if(!S)if(S=document.createElement("canvas"),p.container){var y=p.container;y.appendChild(S)}else document.body.appendChild(S);var E=p.gl;if(E||(p.glOptions&&(_=!!p.glOptions.preserveDrawingBuffer),E=w(S,p.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!E)throw new Error("webgl not supported");var C=p.bounds||[[-10,-10,-10],[10,10,10]],L=new T,R=h(E,E.drawingBufferWidth,E.drawingBufferHeight,{preferFloat:!_}),I=g(E),P=p.cameraObject&&p.cameraObject._ortho===!0||p.camera.projection&&p.camera.projection.type==="orthographic"||!1,D={eye:p.camera.eye||[2,0,0],center:p.camera.center||[0,0,0],up:p.camera.up||[0,1,0],zoomMin:p.camera.zoomMax||.1,zoomMax:p.camera.zoomMin||100,mode:p.camera.mode||"turntable",_ortho:P},q=p.axes||{},N=l(E,q);N.enable=!q.disable;var U=p.spikes||{},G=f(E,U),ee=[],Q=[],j=[],O=[],Z=!0,te=!0,K=new Array(16),$=new Array(16),oe={view:null,projection:K,model:$,_ortho:!1},te=!0,V=[E.drawingBufferWidth,E.drawingBufferHeight],ne=p.cameraObject||s(S,D),W={gl:E,contextLost:!1,pixelRatio:p.pixelRatio||1,canvas:S,selection:L,camera:ne,axes:N,axesPixels:null,spikes:G,bounds:C,objects:ee,shape:V,aspect:p.aspectRatio||[1,1,1],pickRadius:p.pickRadius||10,zNear:p.zNear||.01,zFar:p.zFar||1e3,fovy:p.fovy||Math.PI/4,clearColor:p.clearColor||[0,0,0,0],autoResize:x(p.autoResize),autoBounds:x(p.autoBounds),autoScale:!!p.autoScale,autoCenter:x(p.autoCenter),clipToBounds:x(p.clipToBounds),snapToData:!!p.snapToData,onselect:p.onselect||null,onrender:p.onrender||null,onclick:p.onclick||null,cameraParams:oe,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Be){this.aspect[0]=Be.x,this.aspect[1]=Be.y,this.aspect[2]=Be.z,te=!0},setBounds:function(Be,tt){this.bounds[0][Be]=tt.min,this.bounds[1][Be]=tt.max},setClearColor:function(Be){this.clearColor=Be},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},fe=[E.drawingBufferWidth/W.pixelRatio|0,E.drawingBufferHeight/W.pixelRatio|0];function ge(){if(!W._stopped&&W.autoResize){var Be=S.parentNode,tt=1,rt=1;Be&&Be!==document.body?(tt=Be.clientWidth,rt=Be.clientHeight):(tt=window.innerWidth,rt=window.innerHeight);var ce=Math.ceil(tt*W.pixelRatio)|0,Ee=Math.ceil(rt*W.pixelRatio)|0;if(ce!==S.width||Ee!==S.height){S.width=ce,S.height=Ee;var Ae=S.style;Ae.position=Ae.position||"absolute",Ae.left="0px",Ae.top="0px",Ae.width=tt+"px",Ae.height=rt+"px",Z=!0}}}W.autoResize&&ge(),window.addEventListener("resize",ge);function Ce(){for(var Be=ee.length,tt=O.length,rt=0;rt0&&j[tt-1]===0;)j.pop(),O.pop().dispose()}W.update=function(Be){W._stopped||(Be=Be||{},Z=!0,te=!0)},W.add=function(Be){W._stopped||(Be.axes=N,ee.push(Be),Q.push(-1),Z=!0,te=!0,Ce())},W.remove=function(Be){if(!W._stopped){var tt=ee.indexOf(Be);tt<0||(ee.splice(tt,1),Q.pop(),Z=!0,te=!0,Ce())}},W.dispose=function(){if(!W._stopped&&(W._stopped=!0,window.removeEventListener("resize",ge),S.removeEventListener("webglcontextlost",Ne),W.mouseListener.enabled=!1,!W.contextLost)){N.dispose(),G.dispose();for(var Be=0;BeL.distance)continue;for(var ke=0;ke 1.0) { + discard; + } + baseColor = mix(borderColor, color, step(radius, centerFraction)); + gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a); + } +} +`]),a.pickVertex=s([`precision mediump float; +#define GLSLIFY 1 + +attribute vec2 position; +attribute vec4 pickId; + +uniform mat3 matrix; +uniform float pointSize; +uniform vec4 pickOffset; + +varying vec4 fragId; + +void main() { + vec3 hgPosition = matrix * vec3(position, 1); + gl_Position = vec4(hgPosition.xy, 0, hgPosition.z); + gl_PointSize = pointSize; + + vec4 id = pickId + pickOffset; + id.y += floor(id.x / 256.0); + id.x -= floor(id.x / 256.0) * 256.0; + + id.z += floor(id.y / 256.0); + id.y -= floor(id.y / 256.0) * 256.0; + + id.w += floor(id.z / 256.0); + id.z -= floor(id.z / 256.0) * 256.0; + + fragId = id; +} +`]),a.pickFragment=s([`precision mediump float; +#define GLSLIFY 1 + +varying vec4 fragId; + +void main() { + float radius = length(2.0 * gl_PointCoord.xy - 1.0); + if(radius > 1.0) { + discard; + } + gl_FragColor = fragId / 255.0; +} +`])},4696:function(i,a,o){"use strict";var s=o(9405),l=o(2762),u=o(1888),f=o(6640);i.exports=v;function c(m,b,g,_,T){this.plot=m,this.offsetBuffer=b,this.pickBuffer=g,this.shader=_,this.pickShader=T,this.sizeMin=.5,this.sizeMinCap=2,this.sizeMax=20,this.areaRatio=1,this.pointCount=0,this.color=[1,0,0,1],this.borderColor=[0,0,0,1],this.blend=!1,this.pickOffset=0,this.points=null}var h=c.prototype;h.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},h.update=function(m){var b;m=m||{};function g(A,p){return A in m?m[A]:p}this.sizeMin=g("sizeMin",.5),this.sizeMax=g("sizeMax",20),this.color=g("color",[1,0,0,1]).slice(),this.areaRatio=g("areaRatio",1),this.borderColor=g("borderColor",[0,0,0,1]).slice(),this.blend=g("blend",!1);var _=m.positions.length>>>1,T=m.positions instanceof Float32Array,w=m.idToIndex instanceof Int32Array&&m.idToIndex.length>=_,k=m.positions,x=T?k:u.mallocFloat32(k.length),M=w?m.idToIndex:u.mallocInt32(_);if(T||x.set(k),!w)for(x.set(k),b=0;b<_;b++)M[b]=b;this.points=k,this.offsetBuffer.update(x),this.pickBuffer.update(M),T||u.free(x),w||u.free(M),this.pointCount=_,this.pickOffset=0};function d(m,b){var g=0,_=m.length>>>1,T;for(T=0;T<_;T++){var w=m[T*2],k=m[T*2+1];w>=b[0]&&w<=b[2]&&k>=b[1]&&k<=b[3]&&g++}return g}h.unifiedDraw=function(){var m=[1,0,0,0,1,0,0,0,1],b=[0,0,0,0];return function(g){var _=g!==void 0,T=_?this.pickShader:this.shader,w=this.plot.gl,k=this.plot.dataBox;if(this.pointCount===0)return g;var x=k[2]-k[0],M=k[3]-k[1],A=d(this.points,k),p=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(A,.33333)));m[0]=2/x,m[4]=2/M,m[6]=-2*k[0]/x-1,m[7]=-2*k[1]/M-1,this.offsetBuffer.bind(),T.bind(),T.attributes.position.pointer(),T.uniforms.matrix=m,T.uniforms.color=this.color,T.uniforms.borderColor=this.borderColor,T.uniforms.pointCloud=p<5,T.uniforms.pointSize=p,T.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),_&&(b[0]=g&255,b[1]=g>>8&255,b[2]=g>>16&255,b[3]=g>>24&255,this.pickBuffer.bind(),T.attributes.pickId.pointer(w.UNSIGNED_BYTE),T.uniforms.pickOffset=b,this.pickOffset=g);var S=w.getParameter(w.BLEND),y=w.getParameter(w.DITHER);return S&&!this.blend&&w.disable(w.BLEND),y&&w.disable(w.DITHER),w.drawArrays(w.POINTS,0,this.pointCount),S&&!this.blend&&w.enable(w.BLEND),y&&w.enable(w.DITHER),g+this.pointCount}}(),h.draw=h.unifiedDraw,h.drawPick=h.unifiedDraw,h.pick=function(m,b,g){var _=this.pickOffset,T=this.pointCount;if(g<_||g>=_+T)return null;var w=g-_,k=this.points;return{object:this,pointId:w,dataCoord:[k[2*w],k[2*w+1]]}};function v(m,b){var g=m.gl,_=l(g),T=l(g),w=s(g,f.pointVertex,f.pointFragment),k=s(g,f.pickVertex,f.pickFragment),x=new c(m,_,T,w,k);return x.update(b),m.addObject(x),x}},783:function(i){i.exports=a;function a(o,s,l,u){var f=s[0],c=s[1],h=s[2],d=s[3],v=l[0],m=l[1],b=l[2],g=l[3],_,T,w,k,x;return T=f*v+c*m+h*b+d*g,T<0&&(T=-T,v=-v,m=-m,b=-b,g=-g),1-T>1e-6?(_=Math.acos(T),w=Math.sin(_),k=Math.sin((1-u)*_)/w,x=Math.sin(u*_)/w):(k=1-u,x=u),o[0]=k*f+x*v,o[1]=k*c+x*m,o[2]=k*h+x*b,o[3]=k*d+x*g,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},9366:function(i,a,o){"use strict";var s=o(4359);i.exports=u;var l={};function u(f,c,h){var d=[c.style,c.weight,c.variant,c.family].join("_"),v=l[d];if(v||(v=l[d]={}),f in v)return v[f];var m={textAlign:"center",textBaseline:"middle",lineHeight:1,font:c.family,fontStyle:c.style,fontWeight:c.weight,fontVariant:c.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};m.triangles=!0;var b=s(f,m);m.triangles=!1;var g=s(f,m),_,T;if(h&&h!==1){for(_=0;_ max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform vec4 highlightId; +uniform float highlightScale; +uniform mat4 model, view, projection; +uniform vec3 clipBounds[2]; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = 1.0; + if(distance(highlightId, id) < 0.0001) { + scale = highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1); + vec4 viewPosition = view * worldPosition; + viewPosition = viewPosition / viewPosition.w; + vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0)); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),f=l([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float highlightScale, pixelRatio; +uniform vec4 highlightId; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float scale = pixelRatio; + if(distance(highlightId.bgr, id.bgr) < 0.001) { + scale *= highlightScale; + } + + vec4 worldPosition = model * vec4(position, 1.0); + vec4 viewPosition = view * worldPosition; + vec4 clipPosition = projection * viewPosition; + clipPosition /= clipPosition.w; + + gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0); + interpColor = color; + pickId = id; + dataCoordinate = position; + } +}`]),c=l([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +attribute vec3 position; +attribute vec4 color; +attribute vec2 glyph; +attribute vec4 id; + +uniform float highlightScale; +uniform vec4 highlightId; +uniform vec3 axes[2]; +uniform mat4 model, view, projection; +uniform vec2 screenSize; +uniform vec3 clipBounds[2]; +uniform float scale, pixelRatio; + +varying vec4 interpColor; +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], position)) { + + gl_Position = vec4(0,0,0,0); + } else { + float lscale = pixelRatio * scale; + if(distance(highlightId, id) < 0.0001) { + lscale *= highlightScale; + } + + vec4 clipCenter = projection * (view * (model * vec4(position, 1))); + vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y; + vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1))); + + gl_Position = clipPosition; + interpColor = color; + pickId = id; + dataCoordinate = dataPosition; + } +} +`]),h=l([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float opacity; + +varying vec4 interpColor; +varying vec3 dataCoordinate; + +void main() { + if ( + outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) || + interpColor.a * opacity == 0. + ) discard; + gl_FragColor = interpColor * opacity; +} +`]),d=l([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 fragClipBounds[2]; +uniform float pickGroup; + +varying vec4 pickId; +varying vec3 dataCoordinate; + +void main() { + if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard; + + gl_FragColor = vec4(pickGroup, pickId.bgr); +}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],m={vertex:u,fragment:h,attributes:v},b={vertex:f,fragment:h,attributes:v},g={vertex:c,fragment:h,attributes:v},_={vertex:u,fragment:d,attributes:v},T={vertex:f,fragment:d,attributes:v},w={vertex:c,fragment:d,attributes:v};function k(x,M){var A=s(x,M),p=A.attributes;return p.position.location=0,p.color.location=1,p.glyph.location=2,p.id.location=3,A}a.createPerspective=function(x){return k(x,m)},a.createOrtho=function(x){return k(x,b)},a.createProject=function(x){return k(x,g)},a.createPickPerspective=function(x){return k(x,_)},a.createPickOrtho=function(x){return k(x,T)},a.createPickProject=function(x){return k(x,w)}},8418:function(i,a,o){"use strict";var s=o(5219),l=o(2762),u=o(8116),f=o(1888),c=o(6760),h=o(1283),d=o(9366),v=o(5964),m=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,g=DataView;function _($){return b.isView($)&&!($ instanceof g)}function T($){return Array.isArray($)||_($)}i.exports=K;function w($,oe){var te=$[0],V=$[1],ne=$[2],W=$[3];return $[0]=oe[0]*te+oe[4]*V+oe[8]*ne+oe[12]*W,$[1]=oe[1]*te+oe[5]*V+oe[9]*ne+oe[13]*W,$[2]=oe[2]*te+oe[6]*V+oe[10]*ne+oe[14]*W,$[3]=oe[3]*te+oe[7]*V+oe[11]*ne+oe[15]*W,$}function k($,oe,te,V){return w(V,V,te),w(V,V,oe),w(V,V,$)}function x($,oe){this.index=$,this.dataCoordinate=this.position=oe}function M($){return $===!0||$>1?1:$}function A($,oe,te,V,ne,W,fe,ge,Ce,Ne,pe,me){this.gl=$,this.pixelRatio=1,this.shader=oe,this.orthoShader=te,this.projectShader=V,this.pointBuffer=ne,this.colorBuffer=W,this.glyphBuffer=fe,this.idBuffer=ge,this.vao=Ce,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Ne,this.pickOrthoShader=pe,this.pickProjectShader=me,this.points=[],this._selectResult=new x(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}var p=A.prototype;p.pickSlots=1,p.setPickBase=function($){this.pickId=$},p.isTransparent=function(){if(this.hasAlpha)return!0;for(var $=0;$<3;++$)if(this.axesProject[$]&&this.projectHasAlpha)return!0;return!1},p.isOpaque=function(){if(!this.hasAlpha)return!0;for(var $=0;$<3;++$)if(this.axesProject[$]&&!this.projectHasAlpha)return!0;return!1};var S=[0,0],y=[0,0,0],E=[0,0,0],C=[0,0,0,1],L=[0,0,0,1],R=m.slice(),I=[0,0,0],P=[[0,0,0],[0,0,0]];function D($){return $[0]=$[1]=$[2]=0,$}function q($,oe){return $[0]=oe[0],$[1]=oe[1],$[2]=oe[2],$[3]=1,$}function N($,oe,te,V){return $[0]=oe[0],$[1]=oe[1],$[2]=oe[2],$[te]=V,$}function U($){for(var oe=P,te=0;te<2;++te)for(var V=0;V<3;++V)oe[te][V]=Math.max(Math.min($[te][V],1e8),-1e8);return oe}function G($,oe,te,V){var ne=oe.axesProject,W=oe.gl,fe=$.uniforms,ge=te.model||m,Ce=te.view||m,Ne=te.projection||m,pe=oe.axesBounds,me=U(oe.clipBounds),Ie;oe.axes&&oe.axes.lastCubeProps?Ie=oe.axes.lastCubeProps.axis:Ie=[1,1,1],S[0]=2/W.drawingBufferWidth,S[1]=2/W.drawingBufferHeight,$.bind(),fe.view=Ce,fe.projection=Ne,fe.screenSize=S,fe.highlightId=oe.highlightId,fe.highlightScale=oe.highlightScale,fe.clipBounds=me,fe.pickGroup=oe.pickId/255,fe.pixelRatio=V;for(var Re=0;Re<3;++Re)if(ne[Re]){fe.scale=oe.projectScale[Re],fe.opacity=oe.projectOpacity[Re];for(var ze=R,Be=0;Be<16;++Be)ze[Be]=0;for(var Be=0;Be<4;++Be)ze[5*Be]=1;ze[5*Re]=0,Ie[Re]<0?ze[12+Re]=pe[0][Re]:ze[12+Re]=pe[1][Re],c(ze,ge,ze),fe.model=ze;var tt=(Re+1)%3,rt=(Re+2)%3,ce=D(y),Ee=D(E);ce[tt]=1,Ee[rt]=1;var Ae=k(Ne,Ce,ge,q(C,ce)),Pe=k(Ne,Ce,ge,q(L,Ee));if(Math.abs(Ae[1])>Math.abs(Pe[1])){var He=Ae;Ae=Pe,Pe=He,He=ce,ce=Ee,Ee=He;var Fe=tt;tt=rt,rt=Fe}Ae[0]<0&&(ce[tt]=-1),Pe[1]>0&&(Ee[rt]=-1);for(var ke=0,Ue=0,Be=0;Be<4;++Be)ke+=Math.pow(ge[4*tt+Be],2),Ue+=Math.pow(ge[4*rt+Be],2);ce[tt]/=Math.sqrt(ke),Ee[rt]/=Math.sqrt(Ue),fe.axes[0]=ce,fe.axes[1]=Ee,fe.fragClipBounds[0]=N(I,me[0],Re,-1e8),fe.fragClipBounds[1]=N(I,me[1],Re,1e8),oe.vao.bind(),oe.vao.draw(W.TRIANGLES,oe.vertexCount),oe.lineWidth>0&&(W.lineWidth(oe.lineWidth*V),oe.vao.draw(W.LINES,oe.lineVertexCount,oe.vertexCount)),oe.vao.unbind()}}var ee=[-1e8,-1e8,-1e8],Q=[1e8,1e8,1e8],j=[ee,Q];function O($,oe,te,V,ne,W,fe){var ge=te.gl;if((W===te.projectHasAlpha||fe)&&G(oe,te,V,ne),W===te.hasAlpha||fe){$.bind();var Ce=$.uniforms;Ce.model=V.model||m,Ce.view=V.view||m,Ce.projection=V.projection||m,S[0]=2/ge.drawingBufferWidth,S[1]=2/ge.drawingBufferHeight,Ce.screenSize=S,Ce.highlightId=te.highlightId,Ce.highlightScale=te.highlightScale,Ce.fragClipBounds=j,Ce.clipBounds=te.axes.bounds,Ce.opacity=te.opacity,Ce.pickGroup=te.pickId/255,Ce.pixelRatio=ne,te.vao.bind(),te.vao.draw(ge.TRIANGLES,te.vertexCount),te.lineWidth>0&&(ge.lineWidth(te.lineWidth*ne),te.vao.draw(ge.LINES,te.lineVertexCount,te.vertexCount)),te.vao.unbind()}}p.draw=function($){var oe=this.useOrtho?this.orthoShader:this.shader;O(oe,this.projectShader,this,$,this.pixelRatio,!1,!1)},p.drawTransparent=function($){var oe=this.useOrtho?this.orthoShader:this.shader;O(oe,this.projectShader,this,$,this.pixelRatio,!0,!1)},p.drawPick=function($){var oe=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;O(oe,this.pickProjectShader,this,$,1,!0,!0)},p.pick=function($){if(!$||$.id!==this.pickId)return null;var oe=$.value[2]+($.value[1]<<8)+($.value[0]<<16);if(oe>=this.pointCount||oe<0)return null;var te=this.points[oe],V=this._selectResult;V.index=oe;for(var ne=0;ne<3;++ne)V.position[ne]=V.dataCoordinate[ne]=te[ne];return V},p.highlight=function($){if(!$)this.highlightId=[1,1,1,1];else{var oe=$.index,te=oe&255,V=oe>>8&255,ne=oe>>16&255;this.highlightId=[te/255,V/255,ne/255,0]}};function Z($,oe,te,V){var ne;T($)?oe<$.length?ne=$[oe]:ne=void 0:ne=$,ne=v(ne);var W=!0;s(ne)&&(ne="\u25BC",W=!1),te||(te={});var fe=te.family;T(fe)&&(fe=fe[oe]),fe||(fe="normal");var ge=te.weight;T(ge)&&(ge=ge[oe]),ge||(ge="normal");var Ce=te.style;T(Ce)&&(Ce=Ce[oe]),Ce||(Ce="normal");var Ne=te.variant;T(Ne)&&(Ne=Ne[oe]),Ne||(Ne="normal");var pe=d(ne,{family:fe,weight:ge,style:Ce,variant:Ne},V),pe=d(ne,te,V);return{mesh:pe[0],lines:pe[1],bounds:pe[2],visible:W}}p.update=function($){if($=$||{},"perspective"in $&&(this.useOrtho=!$.perspective),"orthographic"in $&&(this.useOrtho=!!$.orthographic),"lineWidth"in $&&(this.lineWidth=$.lineWidth),"project"in $)if(T($.project))this.axesProject=$.project;else{var oe=!!$.project;this.axesProject=[oe,oe,oe]}if("projectScale"in $)if(T($.projectScale))this.projectScale=$.projectScale.slice();else{var te=+$.projectScale;this.projectScale=[te,te,te]}if(this.projectHasAlpha=!1,"projectOpacity"in $){if(T($.projectOpacity))this.projectOpacity=$.projectOpacity.slice();else{var te=+$.projectOpacity;this.projectOpacity=[te,te,te]}for(var V=0;V<3;++V)this.projectOpacity[V]=M(this.projectOpacity[V]),this.projectOpacity[V]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in $&&(this.opacity=M($.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var ne=$.position,W={family:$.font||"normal",style:$.fontStyle||"normal",weight:$.fontWeight||"normal",variant:$.fontVariant||"normal"},fe=$.alignment||[0,0],ge,Ce;if(fe.length===2)ge=fe[0],Ce=fe[1];else{ge=[],Ce=[];for(var V=0;V0){var Tt=0,nt=rt,bt=[0,0,0,1],At=[0,0,0,1],Ye=T(Ie)&&T(Ie[0]),je=T(Be)&&T(Be[0]);e:for(var V=0;V0?1-Ue[0][0]:at<0?1+Ue[1][0]:1,ft*=ft>0?1-Ue[0][1]:ft<0?1+Ue[1][1]:1;for(var Ht=[at,ft],_r=Fe.cells||[],br=Fe.positions||[],Pe=0;Pe<_r.length;++Pe)for(var Xt=_r[Pe],St=0;St<3;++St){for(var Vt=0;Vt<3;++Vt)lt[3*Tt+Vt]=Ae[Vt];for(var Vt=0;Vt<4;++Vt)it[4*Tt+Vt]=bt[Vt];_t[Tt]=tt;var er=br[Xt[St]];wt[2*Tt]=Y*(Te*er[0]-Ve*er[1]+Ht[0]),wt[2*Tt+1]=Y*(Ve*er[0]+Te*er[1]+Ht[1]),Tt+=1}for(var _r=ke.edges,br=ke.positions,Pe=0;Pe<_r.length;++Pe)for(var Xt=_r[Pe],St=0;St<2;++St){for(var Vt=0;Vt<3;++Vt)lt[3*nt+Vt]=Ae[Vt];for(var Vt=0;Vt<4;++Vt)it[4*nt+Vt]=At[Vt];_t[nt]=tt;var er=br[Xt[St]];wt[2*nt]=Y*(Te*er[0]-Ve*er[1]+Ht[0]),wt[2*nt+1]=Y*(Ve*er[0]+Te*er[1]+Ht[1]),nt+=1}}}this.bounds=[Ne,pe],this.points=ne,this.pointCount=ne.length,this.vertexCount=rt,this.lineVertexCount=ce,this.pointBuffer.update(lt),this.colorBuffer.update(it),this.glyphBuffer.update(wt),this.idBuffer.update(_t),f.free(lt),f.free(it),f.free(wt),f.free(_t)},p.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()};function K($){var oe=$.gl,te=h.createPerspective(oe),V=h.createOrtho(oe),ne=h.createProject(oe),W=h.createPickPerspective(oe),fe=h.createPickOrtho(oe),ge=h.createPickProject(oe),Ce=l(oe),Ne=l(oe),pe=l(oe),me=l(oe),Ie=u(oe,[{buffer:Ce,size:3,type:oe.FLOAT},{buffer:Ne,size:4,type:oe.FLOAT},{buffer:pe,size:2,type:oe.FLOAT},{buffer:me,size:4,type:oe.UNSIGNED_BYTE,normalized:!0}]),Re=new A(oe,te,V,ne,Ce,Ne,pe,me,Ie,W,fe,ge);return Re.update($),Re}},4298:function(i,a,o){"use strict";var s=o(3236);a.boxVertex=s([`precision mediump float; +#define GLSLIFY 1 + +attribute vec2 vertex; + +uniform vec2 cornerA, cornerB; + +void main() { + gl_Position = vec4(mix(cornerA, cornerB, vertex), 0, 1); +} +`]),a.boxFragment=s([`precision mediump float; +#define GLSLIFY 1 + +uniform vec4 color; + +void main() { + gl_FragColor = color; +} +`])},3161:function(i,a,o){"use strict";var s=o(9405),l=o(2762),u=o(4298);i.exports=h;function f(d,v,m){this.plot=d,this.boxBuffer=v,this.boxShader=m,this.enabled=!0,this.selectBox=[1/0,1/0,-1/0,-1/0],this.borderColor=[0,0,0,1],this.innerFill=!1,this.innerColor=[0,0,0,.25],this.outerFill=!0,this.outerColor=[0,0,0,.5],this.borderWidth=10}var c=f.prototype;c.draw=function(){if(this.enabled){var d=this.plot,v=this.selectBox,m=this.borderWidth,b=this.innerFill,g=this.innerColor,_=this.outerFill,T=this.outerColor,w=this.borderColor,k=d.box,x=d.screenBox,M=d.dataBox,A=d.viewBox,p=d.pixelRatio,S=(v[0]-M[0])*(A[2]-A[0])/(M[2]-M[0])+A[0],y=(v[1]-M[1])*(A[3]-A[1])/(M[3]-M[1])+A[1],E=(v[2]-M[0])*(A[2]-A[0])/(M[2]-M[0])+A[0],C=(v[3]-M[1])*(A[3]-A[1])/(M[3]-M[1])+A[1];if(S=Math.max(S,A[0]),y=Math.max(y,A[1]),E=Math.min(E,A[2]),C=Math.min(C,A[3]),!(E0){var I=m*p;k.drawBox(S-I,y-I,E+I,y+I,w),k.drawBox(S-I,C-I,E+I,C+I,w),k.drawBox(S-I,y-I,S+I,C+I,w),k.drawBox(E-I,y-I,E+I,C+I,w)}}}},c.update=function(d){d=d||{},this.innerFill=!!d.innerFill,this.outerFill=!!d.outerFill,this.innerColor=(d.innerColor||[0,0,0,.5]).slice(),this.outerColor=(d.outerColor||[0,0,0,.5]).slice(),this.borderColor=(d.borderColor||[0,0,0,1]).slice(),this.borderWidth=d.borderWidth||0,this.selectBox=(d.selectBox||this.selectBox).slice()},c.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)};function h(d,v){var m=d.gl,b=l(m,[0,0,0,1,1,0,1,1]),g=s(m,u.boxVertex,u.boxFragment),_=new f(d,b,g);return _.update(v),d.addOverlay(_),_}},3589:function(i,a,o){"use strict";i.exports=m;var s=o(2260),l=o(1888),u=o(9618),f=o(8828).nextPow2,c=function(b,g,_){for(var T=1e8,w=-1,k=-1,x=b.shape[0],M=b.shape[1],A=0;Athis.buffer.length){l.free(this.buffer);for(var T=this.buffer=l.mallocUint8(f(_*g*4)),w=0;w<_*g*4;++w)T[w]=255}return b}}}),v.begin=function(){var b=this.gl,g=this.shape;b&&(this.fbo.bind(),b.clearColor(1,1,1,1),b.clear(b.COLOR_BUFFER_BIT|b.DEPTH_BUFFER_BIT))},v.end=function(){var b=this.gl;b&&(b.bindFramebuffer(b.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(b,g,_){if(!this.gl)return null;var T=this.fbo.shape.slice();b=b|0,g=g|0,typeof _!="number"&&(_=1);var w=Math.min(Math.max(b-_,0),T[0])|0,k=Math.min(Math.max(b+_,0),T[0])|0,x=Math.min(Math.max(g-_,0),T[1])|0,M=Math.min(Math.max(g+_,0),T[1])|0;if(k<=w||M<=x)return null;var A=[k-w,M-x],p=u(this.buffer,[A[0],A[1],4],[4,T[0]*4,1],4*(w+T[0]*x)),S=c(p.hi(A[0],A[1],1),_,_),y=S[0],E=S[1];if(y<0||Math.pow(this.radius,2)T)for(g=T;g<_;g++)this.gl.enableVertexAttribArray(g);else if(T>_)for(g=_;g=0){for(var P=I.type.charAt(I.type.length-1)|0,D=new Array(P),q=0;q=0;)N+=1;L[R]=N}var U=new Array(T.length);function G(){x.program=f.program(M,x._vref,x._fref,C,L);for(var ee=0;ee=0){var p=M.charCodeAt(M.length-1)-48;if(p<2||p>4)throw new s("","Invalid data type for attribute "+x+": "+M);c(v,m,A[0],g,p,_,x)}else if(M.indexOf("mat")>=0){var p=M.charCodeAt(M.length-1)-48;if(p<2||p>4)throw new s("","Invalid data type for attribute "+x+": "+M);h(v,m,A,g,p,_,x)}else throw new s("","Unknown data type for attribute "+x+": "+M);break}}return _}},3327:function(i,a,o){"use strict";var s=o(216),l=o(8866);i.exports=c;function u(h){return function(){return h}}function f(h,d){for(var v=new Array(h),m=0;m4)throw new l("","Invalid data type");switch(N.charAt(0)){case"b":case"i":h["uniform"+U+"iv"](m[L],R);break;case"v":h["uniform"+U+"fv"](m[L],R);break;default:throw new l("","Unrecognized data type for vector "+name+": "+N)}}else if(N.indexOf("mat")===0&&N.length===4){if(U=N.charCodeAt(N.length-1)-48,U<2||U>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+N);h["uniformMatrix"+U+"fv"](m[L],!1,R);break}else throw new l("","Unknown uniform data type for "+name+": "+N)}}}}}function _(M,A){if(typeof A!="object")return[[M,A]];var p=[];for(var S in A){var y=A[S],E=M;parseInt(S)+""===S?E+="["+S+"]":E+="."+S,typeof y=="object"?p.push.apply(p,_(E,y)):p.push([E,y])}return p}function T(M){switch(M){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var A=M.indexOf("vec");if(0<=A&&A<=1&&M.length===4+A){var p=M.charCodeAt(M.length-1)-48;if(p<2||p>4)throw new l("","Invalid data type");return M.charAt(0)==="b"?f(p,!1):f(p,0)}else if(M.indexOf("mat")===0&&M.length===4){var p=M.charCodeAt(M.length-1)-48;if(p<2||p>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+M);return f(p*p,0)}else throw new l("","Unknown uniform data type for "+name+": "+M)}}function w(M,A,p){if(typeof p=="object"){var S=k(p);Object.defineProperty(M,A,{get:u(S),set:g(p),enumerable:!0,configurable:!1})}else m[p]?Object.defineProperty(M,A,{get:b(p),set:g(p),enumerable:!0,configurable:!1}):M[A]=T(v[p].type)}function k(M){var A;if(Array.isArray(M)){A=new Array(M.length);for(var p=0;p1){v[0]in h||(h[v[0]]=[]),h=h[v[0]];for(var m=1;m1)for(var _=0;_"u"?o(606):WeakMap,f=new u,c=0;function h(w,k,x,M,A,p,S){this.id=w,this.src=k,this.type=x,this.shader=M,this.count=p,this.programs=[],this.cache=S}h.prototype.dispose=function(){if(--this.count===0){for(var w=this.cache,k=w.gl,x=this.programs,M=0,A=x.length;M 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 color, position; +attribute vec2 uv; + +uniform float vectorScale, tubeScale; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 eyePosition, lightPosition; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + // Scale the vector magnitude to stay constant with + // model & view changes. + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * tubePosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + f_lightDirection = lightPosition - cameraCoordinate.xyz; + f_eyeDirection = eyePosition - cameraCoordinate.xyz; + f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz); + + // vec4 m_position = model * vec4(tubePosition, 1.0); + vec4 t_position = view * tubePosition; + gl_Position = projection * t_position; + + f_color = color; + f_data = tubePosition.xyz; + f_position = position.xyz; + f_uv = uv; +} +`]),u=s([`#extension GL_OES_standard_derivatives : enable + +precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float cookTorranceSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness, + float fresnel) { + + float VdotN = max(dot(viewDirection, surfaceNormal), 0.0); + float LdotN = max(dot(lightDirection, surfaceNormal), 0.0); + + //Half angle vector + vec3 H = normalize(lightDirection + viewDirection); + + //Geometric term + float NdotH = max(dot(surfaceNormal, H), 0.0); + float VdotH = max(dot(viewDirection, H), 0.000001); + float LdotH = max(dot(lightDirection, H), 0.000001); + float G1 = (2.0 * NdotH * VdotN) / VdotH; + float G2 = (2.0 * NdotH * LdotN) / LdotH; + float G = min(1.0, min(G1, G2)); + + //Distribution term + float D = beckmannDistribution(NdotH, roughness); + + //Fresnel term + float F = pow(1.0 - VdotN, fresnel); + + //Multiply terms and done + return G * F * D / max(3.14159265 * VdotN, 0.000001); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform sampler2D texture; + +varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position; +varying vec4 f_color; +varying vec2 f_uv; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + vec3 N = normalize(f_normal); + vec3 L = normalize(f_lightDirection); + vec3 V = normalize(f_eyeDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel))); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + vec4 surfaceColor = f_color * texture2D(texture, f_uv); + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = litColor * opacity; +} +`]),f=s([`precision highp float; + +precision highp float; +#define GLSLIFY 1 + +vec3 getOrthogonalVector(vec3 v) { + // Return up-vector for only-z vector. + // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0). + // From the above if-statement we have ||a|| > 0 U ||b|| > 0. + // Assign z = 0, x = -b, y = a: + // a*-b + b*a + c*0 = -ba + ba + 0 = 0 + if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) { + return normalize(vec3(-v.y, v.x, 0.0)); + } else { + return normalize(vec3(0.0, v.z, -v.y)); + } +} + +// Calculate the tube vertex and normal at the given index. +// +// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d. +// +// Each tube segment is made up of a ring of vertices. +// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array. +// The indexes of tube segments run from 0 to 8. +// +vec3 getTubePosition(vec3 d, float index, out vec3 normal) { + float segmentCount = 8.0; + + float angle = 2.0 * 3.14159 * (index / segmentCount); + + vec3 u = getOrthogonalVector(d); + vec3 v = normalize(cross(u, d)); + + vec3 x = u * cos(angle) * length(d); + vec3 y = v * sin(angle) * length(d); + vec3 v3 = x + y; + + normal = normalize(v3); + + return v3; +} + +attribute vec4 vector; +attribute vec4 position; +attribute vec4 id; + +uniform mat4 model, view, projection; +uniform float tubeScale; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + vec3 normal; + vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal); + vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0); + + gl_Position = projection * (view * tubePosition); + f_id = id; + f_position = position.xyz; +} +`]),c=s([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying vec3 f_position; +varying vec4 f_id; + +void main() { + if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard; + + gl_FragColor = vec4(pickId, f_id.xyz); +}`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},a.pickShader={vertex:f,fragment:c,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(i,a,o){"use strict";var s=o(2931),l=o(9970),u=["xyz","xzy","yxz","yzx","zxy","zyx"],f=function(w,k,x,M){for(var A=w.points,p=w.velocities,S=w.divergences,y=[],E=[],C=[],L=[],R=[],I=[],P=0,D=0,q=l.create(),N=l.create(),U=8,G=0;G0)for(var O=0;Ok)return M-1}return M},d=function(w,k,x){return wx?x:w},v=function(w,k,x){var M=k.vectors,A=k.meshgrid,p=w[0],S=w[1],y=w[2],E=A[0].length,C=A[1].length,L=A[2].length,R=h(A[0],p),I=h(A[1],S),P=h(A[2],y),D=R+1,q=I+1,N=P+1;if(R=d(R,0,E-1),D=d(D,0,E-1),I=d(I,0,C-1),q=d(q,0,C-1),P=d(P,0,L-1),N=d(N,0,L-1),R<0||I<0||P<0||D>E-1||q>C-1||N>L-1)return s.create();var U=A[0][R],G=A[0][D],ee=A[1][I],Q=A[1][q],j=A[2][P],O=A[2][N],Z=(p-U)/(G-U),K=(S-ee)/(Q-ee),$=(y-j)/(O-j);isFinite(Z)||(Z=.5),isFinite(K)||(K=.5),isFinite($)||($=.5);var oe,te,V,ne,W,fe;switch(x.reversedX&&(R=E-1-R,D=E-1-D),x.reversedY&&(I=C-1-I,q=C-1-q),x.reversedZ&&(P=L-1-P,N=L-1-N),x.filled){case 5:W=P,fe=N,V=I*L,ne=q*L,oe=R*L*C,te=D*L*C;break;case 4:W=P,fe=N,oe=R*L,te=D*L,V=I*L*E,ne=q*L*E;break;case 3:V=I,ne=q,W=P*C,fe=N*C,oe=R*C*L,te=D*C*L;break;case 2:V=I,ne=q,oe=R*C,te=D*C,W=P*C*E,fe=N*C*E;break;case 1:oe=R,te=D,W=P*E,fe=N*E,V=I*E*L,ne=q*E*L;break;default:oe=R,te=D,V=I*E,ne=q*E,W=P*E*C,fe=N*E*C;break}var ge=M[oe+V+W],Ce=M[oe+V+fe],Ne=M[oe+ne+W],pe=M[oe+ne+fe],me=M[te+V+W],Ie=M[te+V+fe],Re=M[te+ne+W],ze=M[te+ne+fe],Be=s.create(),tt=s.create(),rt=s.create(),ce=s.create();s.lerp(Be,ge,me,Z),s.lerp(tt,Ce,Ie,Z),s.lerp(rt,Ne,Re,Z),s.lerp(ce,pe,ze,Z);var Ee=s.create(),Ae=s.create();s.lerp(Ee,Be,rt,K),s.lerp(Ae,tt,ce,K);var Pe=s.create();return s.lerp(Pe,Ee,Ae,$),Pe},m=function(w,k){var x=k[0],M=k[1],A=k[2];return w[0]=x<0?-x:x,w[1]=M<0?-M:M,w[2]=A<0?-A:A,w},b=function(w){var k=1/0;w.sort(function(p,S){return p-S});for(var x=w.length,M=1;MD||zeq||BeN)},G=s.distance(k[0],k[1]),ee=10*G/M,Q=ee*ee,j=1,O=0,Z=x.length;Z>1&&(j=g(x));for(var K=0;KO&&(O=ge),W.push(ge),L.push({points:oe,velocities:te,divergences:W});for(var Ce=0;CeQ&&s.scale(Ne,Ne,ee/Math.sqrt(pe)),s.add(Ne,Ne,$),V=E(Ne),s.squaredDistance(ne,Ne)-Q>-1e-4*Q){oe.push(Ne),ne=Ne,te.push(V);var fe=C(Ne,V),ge=s.length(fe);isFinite(ge)&&ge>O&&(O=ge),W.push(ge)}$=Ne}}var me=c(L,w.colormap,O,j);return p?me.tubeScale=p:(O===0&&(O=1),me.tubeScale=A*.5*j/O),me};var _=o(6740),T=o(6405).createMesh;i.exports.createTubeMesh=function(w,k){return T(w,k,{shaders:_,traceType:"streamtube"})}},990:function(i,a,o){var s=o(9405),l=o(3236),u=l([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute vec3 f; +attribute vec3 normal; + +uniform vec3 objectOffset; +uniform mat4 model, view, projection, inverseModel; +uniform vec3 lightPosition, eyePosition; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 localCoordinate = vec3(uv.zw, f.x); + worldCoordinate = objectOffset + localCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0); + vec4 clipPosition = projection * (view * worldPosition); + gl_Position = clipPosition; + kill = f.y; + value = f.z; + planeCoordinate = uv.xy; + + vColor = texture2D(colormap, vec2(value, value)); + + //Lighting geometry parameters + vec4 cameraCoordinate = view * worldPosition; + cameraCoordinate.xyz /= cameraCoordinate.w; + lightDirection = lightPosition - cameraCoordinate.xyz; + eyeDirection = eyePosition - cameraCoordinate.xyz; + surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz); +} +`]),f=l([`precision highp float; +#define GLSLIFY 1 + +float beckmannDistribution(float x, float roughness) { + float NdotH = max(x, 0.0001); + float cos2Alpha = NdotH * NdotH; + float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha; + float roughness2 = roughness * roughness; + float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha; + return exp(tan2Alpha / roughness2) / denom; +} + +float beckmannSpecular( + vec3 lightDirection, + vec3 viewDirection, + vec3 surfaceNormal, + float roughness) { + return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness); +} + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec3 lowerBound, upperBound; +uniform float contourTint; +uniform vec4 contourColor; +uniform sampler2D colormap; +uniform vec3 clipBounds[2]; +uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity; +uniform float vertexColor; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + if ( + kill > 0.0 || + vColor.a == 0.0 || + outOfRange(clipBounds[0], clipBounds[1], worldCoordinate) + ) discard; + + vec3 N = normalize(surfaceNormal); + vec3 V = normalize(eyeDirection); + vec3 L = normalize(lightDirection); + + if(gl_FrontFacing) { + N = -N; + } + + float specular = max(beckmannSpecular(L, V, N, roughness), 0.); + float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0); + + //decide how to interpolate color \u2014 in vertex or in fragment + vec4 surfaceColor = + step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) + + step(.5, vertexColor) * vColor; + + vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0); + + gl_FragColor = mix(litColor, contourColor, contourTint) * opacity; +} +`]),c=l([`precision highp float; +#define GLSLIFY 1 + +attribute vec4 uv; +attribute float f; + +uniform vec3 objectOffset; +uniform mat3 permutation; +uniform mat4 model, view, projection; +uniform float height, zOffset; +uniform sampler2D colormap; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 lightDirection, eyeDirection, surfaceNormal; +varying vec4 vColor; + +void main() { + vec3 dataCoordinate = permutation * vec3(uv.xy, height); + worldCoordinate = objectOffset + dataCoordinate; + mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0)); + vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0); + + vec4 clipPosition = projection * (view * worldPosition); + clipPosition.z += zOffset; + + gl_Position = clipPosition; + value = f + objectOffset.z; + kill = -1.0; + planeCoordinate = uv.zw; + + vColor = texture2D(colormap, vec2(value, value)); + + //Don't do lighting for contours + surfaceNormal = vec3(1,0,0); + eyeDirection = vec3(0,1,0); + lightDirection = vec3(0,0,1); +} +`]),h=l([`precision highp float; +#define GLSLIFY 1 + +bool outOfRange(float a, float b, float p) { + return ((p > max(a, b)) || + (p < min(a, b))); +} + +bool outOfRange(vec2 a, vec2 b, vec2 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y)); +} + +bool outOfRange(vec3 a, vec3 b, vec3 p) { + return (outOfRange(a.x, b.x, p.x) || + outOfRange(a.y, b.y, p.y) || + outOfRange(a.z, b.z, p.z)); +} + +bool outOfRange(vec4 a, vec4 b, vec4 p) { + return outOfRange(a.xyz, b.xyz, p.xyz); +} + +uniform vec2 shape; +uniform vec3 clipBounds[2]; +uniform float pickId; + +varying float value, kill; +varying vec3 worldCoordinate; +varying vec2 planeCoordinate; +varying vec3 surfaceNormal; + +vec2 splitFloat(float v) { + float vh = 255.0 * v; + float upper = floor(vh); + float lower = fract(vh); + return vec2(upper / 255.0, floor(lower * 16.0) / 16.0); +} + +void main() { + if ((kill > 0.0) || + (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard; + + vec2 ux = splitFloat(planeCoordinate.x / shape.x); + vec2 uy = splitFloat(planeCoordinate.y / shape.y); + gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0)); +} +`]);a.createShader=function(d){var v=s(d,u,f,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},a.createPickShader=function(d){var v=s(d,u,h,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},a.createContourShader=function(d){var v=s(d,c,f,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},a.createPickContourShader=function(d){var v=s(d,c,h,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(i,a,o){"use strict";i.exports=oe;var s=o(8828),l=o(2762),u=o(8116),f=o(7766),c=o(1888),h=o(6729),d=o(5298),v=o(9994),m=o(9618),b=o(3711),g=o(6760),_=o(7608),T=o(2478),w=o(6199),k=o(990),x=k.createShader,M=k.createContourShader,A=k.createPickShader,p=k.createPickContourShader,S=4*(4+3+3),y=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],E=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],C=[[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 te=0;te<3;++te){var V=C[te],ne=(te+1)%3,W=(te+2)%3;V[ne+0]=1,V[W+3]=1,V[te+6]=1}})();function L(te,V,ne,W,fe){this.position=te,this.index=V,this.uv=ne,this.level=W,this.dataCoordinate=fe}var R=256;function I(te,V,ne,W,fe,ge,Ce,Ne,pe,me,Ie,Re,ze,Be,tt){this.gl=te,this.shape=V,this.bounds=ne,this.objectOffset=tt,this.intensityBounds=[],this._shader=W,this._pickShader=fe,this._coordinateBuffer=ge,this._vao=Ce,this._colorMap=Ne,this._contourShader=pe,this._contourPickShader=me,this._contourBuffer=Ie,this._contourVAO=Re,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new L([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=ze,this._dynamicVAO=Be,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=[NaN,NaN,NaN],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.colorBounds=[!1,!1],this._field=[m(c.mallocFloat(1024),[0,0]),m(c.mallocFloat(1024),[0,0]),m(c.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.pixelRatio=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.vertexColor=0,this.dirty=!0}var P=I.prototype;P.genColormap=function(te,V){var ne=!1,W=v([h({colormap:te,nshades:R,format:"rgba"}).map(function(fe,ge){var Ce=V?D(ge/255,V):fe[3];return Ce<1&&(ne=!0),[fe[0],fe[1],fe[2],255*Ce]})]);return d.divseq(W,255),this.hasAlphaScale=ne,W},P.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},P.isOpaque=function(){return!this.isTransparent()},P.pickSlots=1,P.setPickBase=function(te){this.pickId=te};function D(te,V){if(!V||!V.length)return 1;for(var ne=0;nete&&ne>0){var W=(V[ne][0]-te)/(V[ne][0]-V[ne-1][0]);return V[ne][1]*(1-W)+W*V[ne-1][1]}}return 1}var q=[0,0,0],N={showSurface:!1,showContour:!1,projections:[y.slice(),y.slice(),y.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function U(te,V){var ne,W,fe,ge=V.axes&&V.axes.lastCubeProps.axis||q,Ce=V.showSurface,Ne=V.showContour;for(ne=0;ne<3;++ne)for(Ce=Ce||V.surfaceProject[ne],W=0;W<3;++W)Ne=Ne||V.contourProject[ne][W];for(ne=0;ne<3;++ne){var pe=N.projections[ne];for(W=0;W<16;++W)pe[W]=0;for(W=0;W<4;++W)pe[5*W]=1;pe[5*ne]=0,pe[12+ne]=V.axesBounds[+(ge[ne]>0)][ne],g(pe,te.model,pe);var me=N.clipBounds[ne];for(fe=0;fe<2;++fe)for(W=0;W<3;++W)me[fe][W]=te.clipBounds[fe][W];me[0][ne]=-1e8,me[1][ne]=1e8}return N.showSurface=Ce,N.showContour=Ne,N}var G={model:y,view:y,projection:y,inverseModel:y.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,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ee=y.slice(),Q=[1,0,0,0,1,0,0,0,1];function j(te,V){te=te||{};var ne=this.gl;ne.disable(ne.CULL_FACE),this._colorMap.bind(0);var W=G;W.model=te.model||y,W.view=te.view||y,W.projection=te.projection||y,W.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],W.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],W.objectOffset=this.objectOffset,W.contourColor=this.contourColor[0],W.inverseModel=_(W.inverseModel,W.model);for(var fe=0;fe<2;++fe)for(var ge=W.clipBounds[fe],Ce=0;Ce<3;++Ce)ge[Ce]=Math.min(Math.max(this.clipBounds[fe][Ce],-1e8),1e8);W.kambient=this.ambientLight,W.kdiffuse=this.diffuseLight,W.kspecular=this.specularLight,W.roughness=this.roughness,W.fresnel=this.fresnel,W.opacity=this.opacity,W.height=0,W.permutation=Q,W.vertexColor=this.vertexColor;var Ne=ee;for(g(Ne,W.view,W.model),g(Ne,W.projection,Ne),_(Ne,Ne),fe=0;fe<3;++fe)W.eyePosition[fe]=Ne[12+fe]/Ne[15];var pe=Ne[15];for(fe=0;fe<3;++fe)pe+=this.lightPosition[fe]*Ne[4*fe+3];for(fe=0;fe<3;++fe){var me=Ne[12+fe];for(Ce=0;Ce<3;++Ce)me+=Ne[4*Ce+fe]*this.lightPosition[Ce];W.lightPosition[fe]=me/pe}var Ie=U(W,this);if(Ie.showSurface){for(this._shader.bind(),this._shader.uniforms=W,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ne.TRIANGLES,this._vertexCount),fe=0;fe<3;++fe)!this.surfaceProject[fe]||!this.vertexCount||(this._shader.uniforms.model=Ie.projections[fe],this._shader.uniforms.clipBounds=Ie.clipBounds[fe],this._vao.draw(ne.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ie.showContour){var Re=this._contourShader;W.kambient=1,W.kdiffuse=0,W.kspecular=0,W.opacity=1,Re.bind(),Re.uniforms=W;var ze=this._contourVAO;for(ze.bind(),fe=0;fe<3;++fe)for(Re.uniforms.permutation=C[fe],ne.lineWidth(this.contourWidth[fe]*this.pixelRatio),Ce=0;Ce>4)/16)/255,fe=Math.floor(W),ge=W-fe,Ce=V[1]*(te.value[1]+(te.value[2]&15)/16)/255,Ne=Math.floor(Ce),pe=Ce-Ne;fe+=1,Ne+=1;var me=ne.position;me[0]=me[1]=me[2]=0;for(var Ie=0;Ie<2;++Ie)for(var Re=Ie?ge:1-ge,ze=0;ze<2;++ze)for(var Be=ze?pe:1-pe,tt=fe+Ie,rt=Ne+ze,ce=Re*Be,Ee=0;Ee<3;++Ee)me[Ee]+=this._field[Ee].get(tt,rt)*ce;for(var Ae=this._pickResult.level,Pe=0;Pe<3;++Pe)if(Ae[Pe]=T.le(this.contourLevels[Pe],me[Pe]),Ae[Pe]<0)this.contourLevels[Pe].length>0&&(Ae[Pe]=0);else if(Ae[Pe]Math.abs(Fe-me[Pe])&&(Ae[Pe]+=1)}for(ne.index[0]=ge<.5?fe:fe+1,ne.index[1]=pe<.5?Ne:Ne+1,ne.uv[0]=W/V[0],ne.uv[1]=Ce/V[1],Ee=0;Ee<3;++Ee)ne.dataCoordinate[Ee]=this._field[Ee].get(ne.index[0],ne.index[1]);return ne},P.padField=function(te,V){var ne=V.shape.slice(),W=te.shape.slice();d.assign(te.lo(1,1).hi(ne[0],ne[1]),V),d.assign(te.lo(1).hi(ne[0],1),V.hi(ne[0],1)),d.assign(te.lo(1,W[1]-1).hi(ne[0],1),V.lo(0,ne[1]-1).hi(ne[0],1)),d.assign(te.lo(0,1).hi(1,ne[1]),V.hi(1)),d.assign(te.lo(W[0]-1,1).hi(1,ne[1]),V.lo(ne[0]-1)),te.set(0,0,V.get(0,0)),te.set(0,W[1]-1,V.get(0,ne[1]-1)),te.set(W[0]-1,0,V.get(ne[0]-1,0)),te.set(W[0]-1,W[1]-1,V.get(ne[0]-1,ne[1]-1))};function Z(te,V){return Array.isArray(te)?[V(te[0]),V(te[1]),V(te[2])]:[V(te),V(te),V(te)]}function K(te){return Array.isArray(te)?te.length===3?[te[0],te[1],te[2],1]:[te[0],te[1],te[2],te[3]]:[0,0,0,1]}function $(te){if(Array.isArray(te)){if(Array.isArray(te))return[K(te[0]),K(te[1]),K(te[2])];var V=K(te);return[V.slice(),V.slice(),V.slice()]}}P.update=function(te){te=te||{},this.objectOffset=te.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in te&&(this.contourWidth=Z(te.contourWidth,Number)),"showContour"in te&&(this.showContour=Z(te.showContour,Boolean)),"showSurface"in te&&(this.showSurface=!!te.showSurface),"contourTint"in te&&(this.contourTint=Z(te.contourTint,Boolean)),"contourColor"in te&&(this.contourColor=$(te.contourColor)),"contourProject"in te&&(this.contourProject=Z(te.contourProject,function(Ji){return Z(Ji,Boolean)})),"surfaceProject"in te&&(this.surfaceProject=te.surfaceProject),"dynamicColor"in te&&(this.dynamicColor=$(te.dynamicColor)),"dynamicTint"in te&&(this.dynamicTint=Z(te.dynamicTint,Number)),"dynamicWidth"in te&&(this.dynamicWidth=Z(te.dynamicWidth,Number)),"opacity"in te&&(this.opacity=te.opacity),"opacityscale"in te&&(this.opacityscale=te.opacityscale),"colorBounds"in te&&(this.colorBounds=te.colorBounds),"vertexColor"in te&&(this.vertexColor=te.vertexColor?1:0),"colormap"in te&&this._colorMap.setPixels(this.genColormap(te.colormap,this.opacityscale));var V=te.field||te.coords&&te.coords[2]||null,ne=!1;if(V||(this._field[2].shape[0]||this._field[2].shape[2]?V=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):V=this._field[2].hi(0,0)),"field"in te||"coords"in te){var W=(V.shape[0]+2)*(V.shape[1]+2);W>this._field[2].data.length&&(c.freeFloat(this._field[2].data),this._field[2].data=c.mallocFloat(s.nextPow2(W))),this._field[2]=m(this._field[2].data,[V.shape[0]+2,V.shape[1]+2]),this.padField(this._field[2],V),this.shape=V.shape.slice();for(var fe=this.shape,ge=0;ge<2;++ge)this._field[2].size>this._field[ge].data.length&&(c.freeFloat(this._field[ge].data),this._field[ge].data=c.mallocFloat(this._field[2].size)),this._field[ge]=m(this._field[ge].data,[fe[0]+2,fe[1]+2]);if(te.coords){var Ce=te.coords;if(!Array.isArray(Ce)||Ce.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(ge=0;ge<2;++ge){var Ne=Ce[ge];for(ze=0;ze<2;++ze)if(Ne.shape[ze]!==fe[ze])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[ge],Ne)}}else if(te.ticks){var pe=te.ticks;if(!Array.isArray(pe)||pe.length!==2)throw new Error("gl-surface: invalid ticks");for(ge=0;ge<2;++ge){var me=pe[ge];if((Array.isArray(me)||me.length)&&(me=m(me)),me.shape[0]!==fe[ge])throw new Error("gl-surface: invalid tick length");var Ie=m(me.data,fe);Ie.stride[ge]=me.stride[0],Ie.stride[ge^1]=0,this.padField(this._field[ge],Ie)}}else{for(ge=0;ge<2;++ge){var Re=[0,0];Re[ge]=1,this._field[ge]=m(this._field[ge].data,[fe[0]+2,fe[1]+2],Re,0)}this._field[0].set(0,0,0);for(var ze=0;ze0){for(var ia=0;ia<5;++ia)Xt.pop();Ye-=1}continue e}}}_r.push(Ye)}this._contourOffsets[St]=er,this._contourCounts[St]=_r}var An=c.mallocFloat(Xt.length);for(ge=0;geL||E<0||E>L)throw new Error("gl-texture2d: Invalid texture size");return S._shape=[y,E],S.bind(),C.texImage2D(C.TEXTURE_2D,0,S.format,y,E,0,S.format,S.type,null),S._mipLevels=[0],S}function g(S,y,E,C,L,R){this.gl=S,this.handle=y,this.format=L,this.type=R,this._shape=[E,C],this._mipLevels=[0],this._magFilter=S.NEAREST,this._minFilter=S.NEAREST,this._wrapS=S.CLAMP_TO_EDGE,this._wrapT=S.CLAMP_TO_EDGE,this._anisoSamples=1;var I=this,P=[this._wrapS,this._wrapT];Object.defineProperties(P,[{get:function(){return I._wrapS},set:function(q){return I.wrapS=q}},{get:function(){return I._wrapT},set:function(q){return I.wrapT=q}}]),this._wrapVector=P;var D=[this._shape[0],this._shape[1]];Object.defineProperties(D,[{get:function(){return I._shape[0]},set:function(q){return I.width=q}},{get:function(){return I._shape[1]},set:function(q){return I.height=q}}]),this._shapeVector=D}var _=g.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(S){this.bind();var y=this.gl;if(this.type===y.FLOAT&&f.indexOf(S)>=0&&(y.getExtension("OES_texture_float_linear")||(S=y.NEAREST)),c.indexOf(S)<0)throw new Error("gl-texture2d: Unknown filter mode "+S);return y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,S),this._minFilter=S}},magFilter:{get:function(){return this._magFilter},set:function(S){this.bind();var y=this.gl;if(this.type===y.FLOAT&&f.indexOf(S)>=0&&(y.getExtension("OES_texture_float_linear")||(S=y.NEAREST)),c.indexOf(S)<0)throw new Error("gl-texture2d: Unknown filter mode "+S);return y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,S),this._magFilter=S}},mipSamples:{get:function(){return this._anisoSamples},set:function(S){var y=this._anisoSamples;if(this._anisoSamples=Math.max(S,1)|0,y!==this._anisoSamples){var E=this.gl.getExtension("EXT_texture_filter_anisotropic");E&&this.gl.texParameterf(this.gl.TEXTURE_2D,E.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(S){if(this.bind(),h.indexOf(S)<0)throw new Error("gl-texture2d: Unknown wrap mode "+S);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,S),this._wrapS=S}},wrapT:{get:function(){return this._wrapT},set:function(S){if(this.bind(),h.indexOf(S)<0)throw new Error("gl-texture2d: Unknown wrap mode "+S);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,S),this._wrapT=S}},wrap:{get:function(){return this._wrapVector},set:function(S){if(Array.isArray(S)||(S=[S,S]),S.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var y=0;y<2;++y)if(h.indexOf(S[y])<0)throw new Error("gl-texture2d: Unknown wrap mode "+S);this._wrapS=S[0],this._wrapT=S[1];var E=this.gl;return this.bind(),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_S,this._wrapS),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_T,this._wrapT),S}},shape:{get:function(){return this._shapeVector},set:function(S){if(!Array.isArray(S))S=[S|0,S|0];else if(S.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,S[0]|0,S[1]|0),[S[0]|0,S[1]|0]}},width:{get:function(){return this._shape[0]},set:function(S){return S=S|0,b(this,S,this._shape[1]),S}},height:{get:function(){return this._shape[1]},set:function(S){return S=S|0,b(this,this._shape[0],S),S}}}),_.bind=function(S){var y=this.gl;return S!==void 0&&y.activeTexture(y.TEXTURE0+(S|0)),y.bindTexture(y.TEXTURE_2D,this.handle),S!==void 0?S|0:y.getParameter(y.ACTIVE_TEXTURE)-y.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var S=Math.min(this._shape[0],this._shape[1]),y=0;S>0;++y,S>>>=1)this._mipLevels.indexOf(y)<0&&this._mipLevels.push(y)},_.setPixels=function(S,y,E,C){var L=this.gl;this.bind(),Array.isArray(y)?(C=E,E=y[1]|0,y=y[0]|0):(y=y||0,E=E||0),C=C||0;var R=v(S)?S:S.raw;if(R){var I=this._mipLevels.indexOf(C)<0;I?(L.texImage2D(L.TEXTURE_2D,0,this.format,this.format,this.type,R),this._mipLevels.push(C)):L.texSubImage2D(L.TEXTURE_2D,C,y,E,this.format,this.type,R)}else if(S.shape&&S.stride&&S.data){if(S.shape.length<2||y+S.shape[1]>this._shape[1]>>>C||E+S.shape[0]>this._shape[0]>>>C||y<0||E<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");w(L,y,E,C,this.format,this.type,this._mipLevels,S)}else throw new Error("gl-texture2d: Unsupported data type")};function T(S,y){return S.length===3?y[2]===1&&y[1]===S[0]*S[2]&&y[0]===S[2]:y[0]===1&&y[1]===S[0]}function w(S,y,E,C,L,R,I,P){var D=P.dtype,q=P.shape.slice();if(q.length<2||q.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var N=0,U=0,G=T(q,P.stride.slice());D==="float32"?N=S.FLOAT:D==="float64"?(N=S.FLOAT,G=!1,D="float32"):D==="uint8"?N=S.UNSIGNED_BYTE:(N=S.UNSIGNED_BYTE,G=!1,D="uint8");var ee=1;if(q.length===2)U=S.LUMINANCE,q=[q[0],q[1],1],P=s(P.data,q,[P.stride[0],P.stride[1],1],P.offset);else if(q.length===3){if(q[2]===1)U=S.ALPHA;else if(q[2]===2)U=S.LUMINANCE_ALPHA;else if(q[2]===3)U=S.RGB;else if(q[2]===4)U=S.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ee=q[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((U===S.LUMINANCE||U===S.ALPHA)&&(L===S.LUMINANCE||L===S.ALPHA)&&(U=L),U!==L)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var Q=P.size,j=I.indexOf(C)<0;if(j&&I.push(C),N===R&&G)P.offset===0&&P.data.length===Q?j?S.texImage2D(S.TEXTURE_2D,C,L,q[0],q[1],0,L,R,P.data):S.texSubImage2D(S.TEXTURE_2D,C,y,E,q[0],q[1],L,R,P.data):j?S.texImage2D(S.TEXTURE_2D,C,L,q[0],q[1],0,L,R,P.data.subarray(P.offset,P.offset+Q)):S.texSubImage2D(S.TEXTURE_2D,C,y,E,q[0],q[1],L,R,P.data.subarray(P.offset,P.offset+Q));else{var O;R===S.FLOAT?O=u.mallocFloat32(Q):O=u.mallocUint8(Q);var Z=s(O,q,[q[2],q[2]*q[0],1]);N===S.FLOAT&&R===S.UNSIGNED_BYTE?m(Z,P):l.assign(Z,P),j?S.texImage2D(S.TEXTURE_2D,C,L,q[0],q[1],0,L,R,O.subarray(0,Q)):S.texSubImage2D(S.TEXTURE_2D,C,y,E,q[0],q[1],L,R,O.subarray(0,Q)),R===S.FLOAT?u.freeFloat32(O):u.freeUint8(O)}}function k(S){var y=S.createTexture();return S.bindTexture(S.TEXTURE_2D,y),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MIN_FILTER,S.NEAREST),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MAG_FILTER,S.NEAREST),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_S,S.CLAMP_TO_EDGE),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_T,S.CLAMP_TO_EDGE),y}function x(S,y,E,C,L){var R=S.getParameter(S.MAX_TEXTURE_SIZE);if(y<0||y>R||E<0||E>R)throw new Error("gl-texture2d: Invalid texture shape");if(L===S.FLOAT&&!S.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var I=k(S);return S.texImage2D(S.TEXTURE_2D,0,C,y,E,0,C,L,null),new g(S,I,y,E,C,L)}function M(S,y,E,C,L,R){var I=k(S);return S.texImage2D(S.TEXTURE_2D,0,L,L,R,y),new g(S,I,E,C,L,R)}function A(S,y){var E=y.dtype,C=y.shape.slice(),L=S.getParameter(S.MAX_TEXTURE_SIZE);if(C[0]<0||C[0]>L||C[1]<0||C[1]>L)throw new Error("gl-texture2d: Invalid texture size");var R=T(C,y.stride.slice()),I=0;E==="float32"?I=S.FLOAT:E==="float64"?(I=S.FLOAT,R=!1,E="float32"):E==="uint8"?I=S.UNSIGNED_BYTE:(I=S.UNSIGNED_BYTE,R=!1,E="uint8");var P=0;if(C.length===2)P=S.LUMINANCE,C=[C[0],C[1],1],y=s(y.data,C,[y.stride[0],y.stride[1],1],y.offset);else if(C.length===3)if(C[2]===1)P=S.ALPHA;else if(C[2]===2)P=S.LUMINANCE_ALPHA;else if(C[2]===3)P=S.RGB;else if(C[2]===4)P=S.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");I===S.FLOAT&&!S.getExtension("OES_texture_float")&&(I=S.UNSIGNED_BYTE,R=!1);var D,q,N=y.size;if(R)y.offset===0&&y.data.length===N?D=y.data:D=y.data.subarray(y.offset,y.offset+N);else{var U=[C[2],C[2]*C[0],1];q=u.malloc(N,E);var G=s(q,C,U,0);(E==="float32"||E==="float64")&&I===S.UNSIGNED_BYTE?m(G,y):l.assign(G,y),D=q.subarray(0,N)}var ee=k(S);return S.texImage2D(S.TEXTURE_2D,0,P,C[0],C[1],0,P,I,D),R||u.free(q),new g(S,ee,C[0],C[1],P,I)}function p(S){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(f||d(S),typeof arguments[1]=="number")return x(S,arguments[1],arguments[2],arguments[3]||S.RGBA,arguments[4]||S.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(S,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||S.RGBA,arguments[3]||S.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var y=arguments[1],E=v(y)?y:y.raw;if(E)return M(S,E,y.width|0,y.height|0,arguments[2]||S.RGBA,arguments[3]||S.UNSIGNED_BYTE);if(y.shape&&y.data&&y.stride)return A(S,y)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(i){"use strict";function a(o,s,l){s?s.bind():o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null);var u=o.getParameter(o.MAX_VERTEX_ATTRIBS)|0;if(l){if(l.length>u)throw new Error("gl-vao: Too many vertex attributes");for(var f=0;f1?0:Math.acos(m)}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3990:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o}},1091:function(i){i.exports=a;function a(){var o=new Float32Array(3);return o[0]=0,o[1]=0,o[2]=0,o}},5911:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2],h=l[0],d=l[1],v=l[2];return o[0]=f*v-c*d,o[1]=c*h-u*v,o[2]=u*d-f*h,o}},5455:function(i,a,o){i.exports=o(7056)},7056:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],f=s[2]-o[2];return Math.sqrt(l*l+u*u+f*f)}},4008:function(i,a,o){i.exports=o(6690)},6690:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]/l[0],o[1]=s[1]/l[1],o[2]=s[2]/l[2],o}},244:function(i){i.exports=a;function a(o,s){return o[0]*s[0]+o[1]*s[1]+o[2]*s[2]}},2613:function(i){i.exports=1e-6},9922:function(i,a,o){i.exports=l;var s=o(2613);function l(u,f){var c=u[0],h=u[1],d=u[2],v=f[0],m=f[1],b=f[2];return Math.abs(c-v)<=s*Math.max(1,Math.abs(c),Math.abs(v))&&Math.abs(h-m)<=s*Math.max(1,Math.abs(h),Math.abs(m))&&Math.abs(d-b)<=s*Math.max(1,Math.abs(d),Math.abs(b))}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},2681:function(i){i.exports=a;function a(o,s){return o[0]=Math.floor(s[0]),o[1]=Math.floor(s[1]),o[2]=Math.floor(s[2]),o}},5137:function(i,a,o){i.exports=l;var s=o(1091)();function l(u,f,c,h,d,v){var m,b;for(f||(f=3),c||(c=0),h?b=Math.min(h*f+c,u.length):b=u.length,m=c;m0&&(c=1/Math.sqrt(c),o[0]=s[0]*c,o[1]=s[1]*c,o[2]=s[2]*c),o}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var l=Math.random()*2*Math.PI,u=Math.random()*2-1,f=Math.sqrt(1-u*u)*s;return o[0]=Math.cos(l)*f,o[1]=Math.sin(l)*f,o[2]=u*s,o}},6894:function(i){i.exports=a;function a(o,s,l,u){var f=l[1],c=l[2],h=s[1]-f,d=s[2]-c,v=Math.sin(u),m=Math.cos(u);return o[0]=s[0],o[1]=f+h*m-d*v,o[2]=c+h*v+d*m,o}},109:function(i){i.exports=a;function a(o,s,l,u){var f=l[0],c=l[2],h=s[0]-f,d=s[2]-c,v=Math.sin(u),m=Math.cos(u);return o[0]=f+d*v+h*m,o[1]=s[1],o[2]=c+d*m-h*v,o}},8692:function(i){i.exports=a;function a(o,s,l,u){var f=l[0],c=l[1],h=s[0]-f,d=s[1]-c,v=Math.sin(u),m=Math.cos(u);return o[0]=f+h*m-d*v,o[1]=c+h*v+d*m,o[2]=s[2],o}},2447:function(i){i.exports=a;function a(o,s){return o[0]=Math.round(s[0]),o[1]=Math.round(s[1]),o[2]=Math.round(s[2]),o}},6621:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o}},8489:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o}},1463:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s,o[1]=l,o[2]=u,o}},6141:function(i,a,o){i.exports=o(2953)},5486:function(i,a,o){i.exports=o(3066)},2953:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],f=s[2]-o[2];return l*l+u*u+f*f}},3066:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2];return s*s+l*l+u*u}},2229:function(i,a,o){i.exports=o(6843)},6843:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o}},492:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2];return o[0]=u*l[0]+f*l[3]+c*l[6],o[1]=u*l[1]+f*l[4]+c*l[7],o[2]=u*l[2]+f*l[5]+c*l[8],o}},5673:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2],h=l[3]*u+l[7]*f+l[11]*c+l[15];return h=h||1,o[0]=(l[0]*u+l[4]*f+l[8]*c+l[12])/h,o[1]=(l[1]*u+l[5]*f+l[9]*c+l[13])/h,o[2]=(l[2]*u+l[6]*f+l[10]*c+l[14])/h,o}},264:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2],h=l[0],d=l[1],v=l[2],m=l[3],b=m*u+d*c-v*f,g=m*f+v*u-h*c,_=m*c+h*f-d*u,T=-h*u-d*f-v*c;return o[0]=b*m+T*-h+g*-v-_*-d,o[1]=g*m+T*-d+_*-h-b*-v,o[2]=_*m+T*-v+b*-d-g*-h,o}},4361:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]+l[0],o[1]=s[1]+l[1],o[2]=s[2]+l[2],o[3]=s[3]+l[3],o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},7536:function(i){i.exports=a;function a(){var o=new Float32Array(4);return o[0]=0,o[1]=0,o[2]=0,o[3]=0,o}},4691:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],f=s[2]-o[2],c=s[3]-o[3];return Math.sqrt(l*l+u*u+f*f+c*c)}},1373:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]/l[0],o[1]=s[1]/l[1],o[2]=s[2]/l[2],o[3]=s[3]/l[3],o}},3750:function(i){i.exports=a;function a(o,s){return o[0]*s[0]+o[1]*s[1]+o[2]*s[2]+o[3]*s[3]}},3390:function(i){i.exports=a;function a(o,s,l,u){var f=new Float32Array(4);return f[0]=o,f[1]=s,f[2]=l,f[3]=u,f}},9970:function(i,a,o){i.exports={create:o(7536),clone:o(2335),fromValues:o(3390),copy:o(2933),set:o(4578),add:o(4361),subtract:o(6860),multiply:o(3576),divide:o(1373),min:o(2334),max:o(160),scale:o(9288),scaleAndAdd:o(4844),distance:o(4691),squaredDistance:o(7960),length:o(6808),squaredLength:o(483),negate:o(1498),inverse:o(4494),normalize:o(5177),dot:o(3750),lerp:o(2573),random:o(9131),transformMat4:o(5352),transformQuat:o(4041)}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},6808:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2],f=o[3];return Math.sqrt(s*s+l*l+u*u+f*f)}},2573:function(i){i.exports=a;function a(o,s,l,u){var f=s[0],c=s[1],h=s[2],d=s[3];return o[0]=f+u*(l[0]-f),o[1]=c+u*(l[1]-c),o[2]=h+u*(l[2]-h),o[3]=d+u*(l[3]-d),o}},160:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o[3]=Math.max(s[3],l[3]),o}},2334:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o[3]=Math.min(s[3],l[3]),o}},3576:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l[0],o[1]=s[1]*l[1],o[2]=s[2]*l[2],o[3]=s[3]*l[3],o}},1498:function(i){i.exports=a;function a(o,s){return o[0]=-s[0],o[1]=-s[1],o[2]=-s[2],o[3]=-s[3],o}},5177:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],f=s[2],c=s[3],h=l*l+u*u+f*f+c*c;return h>0&&(h=1/Math.sqrt(h),o[0]=l*h,o[1]=u*h,o[2]=f*h,o[3]=c*h),o}},9131:function(i,a,o){var s=o(5177),l=o(9288);i.exports=u;function u(f,c){return c=c||1,f[0]=Math.random(),f[1]=Math.random(),f[2]=Math.random(),f[3]=Math.random(),s(f,f),l(f,f,c),f}},9288:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o}},4844:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o[3]=s[3]+l[3]*u,o}},4578:function(i){i.exports=a;function a(o,s,l,u,f){return o[0]=s,o[1]=l,o[2]=u,o[3]=f,o}},7960:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],f=s[2]-o[2],c=s[3]-o[3];return l*l+u*u+f*f+c*c}},483:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2],f=o[3];return s*s+l*l+u*u+f*f}},6860:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o[3]=s[3]-l[3],o}},5352:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2],h=s[3];return o[0]=l[0]*u+l[4]*f+l[8]*c+l[12]*h,o[1]=l[1]*u+l[5]*f+l[9]*c+l[13]*h,o[2]=l[2]*u+l[6]*f+l[10]*c+l[14]*h,o[3]=l[3]*u+l[7]*f+l[11]*c+l[15]*h,o}},4041:function(i){i.exports=a;function a(o,s,l){var u=s[0],f=s[1],c=s[2],h=l[0],d=l[1],v=l[2],m=l[3],b=m*u+d*c-v*f,g=m*f+v*u-h*c,_=m*c+h*f-d*u,T=-h*u-d*f-v*c;return o[0]=b*m+T*-h+g*-v-_*-d,o[1]=g*m+T*-d+_*-h-b*-v,o[2]=_*m+T*-v+b*-d-g*-h,o[3]=s[3],o}},1848:function(i,a,o){var s=o(4905),l=o(6468);i.exports=u;function u(f){for(var c=Array.isArray(f)?f:s(f),h=0;h0)continue;Pe=ce.slice(0,1).join("")}return ne(Pe),Q+=Pe.length,D=D.slice(Pe.length),D.length}while(1)}function ze(){return/[^a-fA-F0-9]/.test(I)?(ne(D.join("")),R=h,C):(D.push(I),P=I,C+1)}function Be(){return I==="."||/[eE]/.test(I)?(D.push(I),R=T,P=I,C+1):I==="x"&&D.length===1&&D[0]==="0"?(R=p,D.push(I),P=I,C+1):/[^\d]/.test(I)?(ne(D.join("")),R=h,C):(D.push(I),P=I,C+1)}function tt(){return I==="f"&&(D.push(I),P=I,C+=1),/[eE]/.test(I)||(I==="-"||I==="+")&&/[eE]/.test(P)?(D.push(I),P=I,C+1):/[^\d]/.test(I)?(ne(D.join("")),R=h,C):(D.push(I),P=I,C+1)}function rt(){if(/[^\d\w_]/.test(I)){var ce=D.join("");return V[ce]?R=x:te[ce]?R=k:R=w,ne(D.join("")),R=h,C}return D.push(I),P=I,C+1}}},3508:function(i,a,o){var s=o(6852);s=s.slice().filter(function(l){return!/^(gl\_|texture)/.test(l)}),i.exports=s.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(i){i.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(i){i.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(i,a,o){var s=o(5874);i.exports=l;function l(u,f){var c=s(f),h=[];return h=h.concat(c(u)),h=h.concat(c(null)),h}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],l=0;l>1,b=-7,g=l?f-1:0,_=l?-1:1,T=o[s+g];for(g+=_,c=T&(1<<-b)-1,T>>=-b,b+=d;b>0;c=c*256+o[s+g],g+=_,b-=8);for(h=c&(1<<-b)-1,c>>=-b,b+=u;b>0;h=h*256+o[s+g],g+=_,b-=8);if(c===0)c=1-m;else{if(c===v)return h?NaN:(T?-1:1)*(1/0);h=h+Math.pow(2,u),c=c-m}return(T?-1:1)*h*Math.pow(2,c-u)},a.write=function(o,s,l,u,f,c){var h,d,v,m=c*8-f-1,b=(1<>1,_=f===23?Math.pow(2,-24)-Math.pow(2,-77):0,T=u?0:c-1,w=u?1:-1,k=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(v=Math.pow(2,-h))<1&&(h--,v*=2),h+g>=1?s+=_/v:s+=_*Math.pow(2,1-g),s*v>=2&&(h++,v/=2),h+g>=b?(d=0,h=b):h+g>=1?(d=(s*v-1)*Math.pow(2,f),h=h+g):(d=s*Math.pow(2,g-1)*Math.pow(2,f),h=0));f>=8;o[l+T]=d&255,T+=w,d/=256,f-=8);for(h=h<0;o[l+T]=h&255,T+=w,h/=256,m-=8);o[l+T-w]|=k*128}},8954:function(i,a,o){"use strict";i.exports=g;var s=o(3250),l=o(6803).Fw;function u(_,T,w){this.vertices=_,this.adjacent=T,this.boundary=w,this.lastVisited=-1}u.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var T=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=T};function f(_,T,w){this.vertices=_,this.cell=T,this.index=w}function c(_,T){return l(_.vertices,T.vertices)}function h(_){return function(){var T=this.tuple;return _.apply(this,T)}}function d(_){var T=s[_+1];return T||(T=s),h(T)}var v=[];function m(_,T,w){this.dimension=_,this.vertices=T,this.simplices=w,this.interior=w.filter(function(M){return!M.boundary}),this.tuple=new Array(_+1);for(var k=0;k<=_;++k)this.tuple[k]=this.vertices[k];var x=v[_];x||(x=v[_]=d(_)),this.orient=x}var b=m.prototype;b.handleBoundaryDegeneracy=function(_,T){var w=this.dimension,k=this.vertices.length-1,x=this.tuple,M=this.vertices,A=[_];for(_.lastVisited=-k;A.length>0;){_=A.pop();for(var p=_.adjacent,S=0;S<=w;++S){var y=p[S];if(!(!y.boundary||y.lastVisited<=-k)){for(var E=y.vertices,C=0;C<=w;++C){var L=E[C];L<0?x[C]=T:x[C]=M[L]}var R=this.orient();if(R>0)return y;y.lastVisited=-k,R===0&&A.push(y)}}}return null},b.walk=function(_,T){var w=this.vertices.length-1,k=this.dimension,x=this.vertices,M=this.tuple,A=T?this.interior.length*Math.random()|0:this.interior.length-1,p=this.interior[A];e:for(;!p.boundary;){for(var S=p.vertices,y=p.adjacent,E=0;E<=k;++E)M[E]=x[S[E]];p.lastVisited=w;for(var E=0;E<=k;++E){var C=y[E];if(!(C.lastVisited>=w)){var L=M[E];M[E]=_;var R=this.orient();if(M[E]=L,R<0){p=C;continue e}else C.boundary?C.lastVisited=-w:C.lastVisited=w}}return}return p},b.addPeaks=function(_,T){var w=this.vertices.length-1,k=this.dimension,x=this.vertices,M=this.tuple,A=this.interior,p=this.simplices,S=[T];T.lastVisited=w,T.vertices[T.vertices.indexOf(-1)]=w,T.boundary=!1,A.push(T);for(var y=[];S.length>0;){var T=S.pop(),E=T.vertices,C=T.adjacent,L=E.indexOf(w);if(!(L<0)){for(var R=0;R<=k;++R)if(R!==L){var I=C[R];if(!(!I.boundary||I.lastVisited>=w)){var P=I.vertices;if(I.lastVisited!==-w){for(var D=0,q=0;q<=k;++q)P[q]<0?(D=q,M[q]=_):M[q]=x[P[q]];var N=this.orient();if(N>0){P[D]=w,I.boundary=!1,A.push(I),S.push(I),I.lastVisited=w;continue}else I.lastVisited=-w}var U=I.adjacent,G=E.slice(),ee=C.slice(),Q=new u(G,ee,!0);p.push(Q);var j=U.indexOf(T);if(!(j<0)){U[j]=Q,ee[L]=I,G[R]=-1,ee[R]=T,C[R]=Q,Q.flip();for(var q=0;q<=k;++q){var O=G[q];if(!(O<0||O===w)){for(var Z=new Array(k-1),K=0,$=0;$<=k;++$){var oe=G[$];oe<0||$===q||(Z[K++]=oe)}y.push(new f(Z,Q,q))}}}}}}}y.sort(c);for(var R=0;R+1=0?A[S++]=p[E]:y=E&1;if(y===(_&1)){var C=A[0];A[0]=A[1],A[1]=C}T.push(A)}}return T};function g(_,T){var w=_.length;if(w===0)throw new Error("Must have at least d+1 points");var k=_[0].length;if(w<=k)throw new Error("Must input at least d+1 points");var x=_.slice(0,k+1),M=s.apply(void 0,x);if(M===0)throw new Error("Input not in general position");for(var A=new Array(k+1),p=0;p<=k;++p)A[p]=p;M<0&&(A[0]=1,A[1]=0);for(var S=new u(A,new Array(k+1),!1),y=S.adjacent,E=new Array(k+2),p=0;p<=k;++p){for(var C=A.slice(),L=0;L<=k;++L)L===p&&(C[L]=-1);var R=C[0];C[0]=C[1],C[1]=R;var I=new u(C,new Array(k+1),!0);y[p]=I,E[p]=I}E[k+1]=S;for(var p=0;p<=k;++p)for(var C=y[p].vertices,P=y[p].adjacent,L=0;L<=k;++L){var D=C[L];if(D<0){P[L]=S;continue}for(var q=0;q<=k;++q)y[q].vertices.indexOf(D)<0&&(P[L]=y[q])}for(var N=new m(k,x,E),U=!!T,p=k+1;p3*(E+1)?m(this,y):this.left.insert(y):this.left=M([y]);else if(y[0]>this.mid)this.right?4*(this.right.count+1)>3*(E+1)?m(this,y):this.right.insert(y):this.right=M([y]);else{var C=s.ge(this.leftPoints,y,k),L=s.ge(this.rightPoints,y,x);this.leftPoints.splice(C,0,y),this.rightPoints.splice(L,0,y)}},h.remove=function(y){var E=this.count-this.leftPoints;if(y[1]3*(E-1))return b(this,y);var L=this.left.remove(y);return L===f?(this.left=null,this.count-=1,u):(L===u&&(this.count-=1),L)}else if(y[0]>this.mid){if(!this.right)return l;var R=this.left?this.left.count:0;if(4*R>3*(E-1))return b(this,y);var L=this.right.remove(y);return L===f?(this.right=null,this.count-=1,u):(L===u&&(this.count-=1),L)}else{if(this.count===1)return this.leftPoints[0]===y?f:l;if(this.leftPoints.length===1&&this.leftPoints[0]===y){if(this.left&&this.right){for(var I=this,P=this.left;P.right;)I=P,P=P.right;if(I===this)P.right=this.right;else{var D=this.left,L=this.right;I.count-=P.count,I.right=P.left,P.left=D,P.right=L}d(this,P),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var D=s.ge(this.leftPoints,y,k);D=0&&y[L][1]>=E;--L){var R=C(y[L]);if(R)return R}}function T(y,E){for(var C=0;Cthis.mid){if(this.right){var C=this.right.queryPoint(y,E);if(C)return C}return _(this.rightPoints,y,E)}else return T(this.leftPoints,E)},h.queryInterval=function(y,E,C){if(ythis.mid&&this.right){var L=this.right.queryInterval(y,E,C);if(L)return L}return Ethis.mid?_(this.rightPoints,y,C):T(this.leftPoints,C)};function w(y,E){return y-E}function k(y,E){var C=y[0]-E[0];return C||y[1]-E[1]}function x(y,E){var C=y[1]-E[1];return C||y[0]-E[0]}function M(y){if(y.length===0)return null;for(var E=[],C=0;C>1],R=[],I=[],P=[],C=0;C13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},395:function(i){function a(o,s,l){return o*(1-l)+s*l}i.exports=a},2652:function(i,a,o){var s=o(4335),l=o(6864),u=o(1903),f=o(9921),c=o(7608),h=o(5665),d={length:o(1387),normalize:o(3536),dot:o(244),cross:o(5911)},v=l(),m=l(),b=[0,0,0,0],g=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];i.exports=function(M,A,p,S,y,E){if(A||(A=[0,0,0]),p||(p=[0,0,0]),S||(S=[0,0,0]),y||(y=[0,0,0,1]),E||(E=[0,0,0,1]),!s(v,M)||(u(m,v),m[3]=0,m[7]=0,m[11]=0,m[15]=1,Math.abs(f(m)<1e-8)))return!1;var C=v[3],L=v[7],R=v[11],I=v[12],P=v[13],D=v[14],q=v[15];if(C!==0||L!==0||R!==0){b[0]=C,b[1]=L,b[2]=R,b[3]=q;var N=c(m,m);if(!N)return!1;h(m,m),T(y,b,m)}else y[0]=y[1]=y[2]=0,y[3]=1;if(A[0]=I,A[1]=P,A[2]=D,w(g,v),p[0]=d.length(g[0]),d.normalize(g[0],g[0]),S[0]=d.dot(g[0],g[1]),k(g[1],g[1],g[0],1,-S[0]),p[1]=d.length(g[1]),d.normalize(g[1],g[1]),S[0]/=p[1],S[1]=d.dot(g[0],g[2]),k(g[2],g[2],g[0],1,-S[1]),S[2]=d.dot(g[1],g[2]),k(g[2],g[2],g[1],1,-S[2]),p[2]=d.length(g[2]),d.normalize(g[2],g[2]),S[1]/=p[2],S[2]/=p[2],d.cross(_,g[1],g[2]),d.dot(g[0],_)<0)for(var U=0;U<3;U++)p[U]*=-1,g[U][0]*=-1,g[U][1]*=-1,g[U][2]*=-1;return E[0]=.5*Math.sqrt(Math.max(1+g[0][0]-g[1][1]-g[2][2],0)),E[1]=.5*Math.sqrt(Math.max(1-g[0][0]+g[1][1]-g[2][2],0)),E[2]=.5*Math.sqrt(Math.max(1-g[0][0]-g[1][1]+g[2][2],0)),E[3]=.5*Math.sqrt(Math.max(1+g[0][0]+g[1][1]+g[2][2],0)),g[2][1]>g[1][2]&&(E[0]=-E[0]),g[0][2]>g[2][0]&&(E[1]=-E[1]),g[1][0]>g[0][1]&&(E[2]=-E[2]),!0};function T(x,M,A){var p=M[0],S=M[1],y=M[2],E=M[3];return x[0]=A[0]*p+A[4]*S+A[8]*y+A[12]*E,x[1]=A[1]*p+A[5]*S+A[9]*y+A[13]*E,x[2]=A[2]*p+A[6]*S+A[10]*y+A[14]*E,x[3]=A[3]*p+A[7]*S+A[11]*y+A[15]*E,x}function w(x,M){x[0][0]=M[0],x[0][1]=M[1],x[0][2]=M[2],x[1][0]=M[4],x[1][1]=M[5],x[1][2]=M[6],x[2][0]=M[8],x[2][1]=M[9],x[2][2]=M[10]}function k(x,M,A,p,S){x[0]=M[0]*p+A[0]*S,x[1]=M[1]*p+A[1]*S,x[2]=M[2]*p+A[2]*S}},4335:function(i){i.exports=function(o,s){var l=s[15];if(l===0)return!1;for(var u=1/l,f=0;f<16;f++)o[f]=s[f]*u;return!0}},7442:function(i,a,o){var s=o(6658),l=o(7182),u=o(2652),f=o(9921),c=o(8648),h=b(),d=b(),v=b();i.exports=m;function m(T,w,k,x){if(f(w)===0||f(k)===0)return!1;var M=u(w,h.translate,h.scale,h.skew,h.perspective,h.quaternion),A=u(k,d.translate,d.scale,d.skew,d.perspective,d.quaternion);return!M||!A?!1:(s(v.translate,h.translate,d.translate,x),s(v.skew,h.skew,d.skew,x),s(v.scale,h.scale,d.scale,x),s(v.perspective,h.perspective,d.perspective,x),c(v.quaternion,h.quaternion,d.quaternion,x),l(T,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function b(){return{translate:g(),scale:g(1),skew:g(),perspective:_(),quaternion:_()}}function g(T){return[T||0,T||0,T||0]}function _(){return[0,0,0,1]}},7182:function(i,a,o){var s={identity:o(7894),translate:o(7656),multiply:o(6760),create:o(6864),scale:o(2504),fromRotationTranslation:o(6743)},l=s.create(),u=s.create();i.exports=function(c,h,d,v,m,b){return s.identity(c),s.fromRotationTranslation(c,b,h),c[3]=m[0],c[7]=m[1],c[11]=m[2],c[15]=m[3],s.identity(u),v[2]!==0&&(u[9]=v[2],s.multiply(c,c,u)),v[1]!==0&&(u[9]=0,u[8]=v[1],s.multiply(c,c,u)),v[0]!==0&&(u[8]=0,u[4]=v[0],s.multiply(c,c,u)),s.scale(c,c,d),c}},4192:function(i,a,o){"use strict";var s=o(2478),l=o(7442),u=o(7608),f=o(5567),c=o(2408),h=o(7089),d=o(6582),v=o(7656),m=o(2504),b=o(3536),g=[0,0,0];i.exports=k;function _(x){this._components=x.slice(),this._time=[0],this.prevMatrix=x.slice(),this.nextMatrix=x.slice(),this.computedMatrix=x.slice(),this.computedInverse=x.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]}var T=_.prototype;T.recalcMatrix=function(x){var M=this._time,A=s.le(M,x),p=this.computedMatrix;if(!(A<0)){var S=this._components;if(A===M.length-1)for(var y=16*A,E=0;E<16;++E)p[E]=S[y++];else{for(var C=M[A+1]-M[A],y=16*A,L=this.prevMatrix,R=!0,E=0;E<16;++E)L[E]=S[y++];for(var I=this.nextMatrix,E=0;E<16;++E)I[E]=S[y++],R=R&&L[E]===I[E];if(C<1e-6||R)for(var E=0;E<16;++E)p[E]=L[E];else l(p,L,I,(x-M[A])/C)}var P=this.computedUp;P[0]=p[1],P[1]=p[5],P[2]=p[9],b(P,P);var D=this.computedInverse;u(D,p);var q=this.computedEye,N=D[15];q[0]=D[12]/N,q[1]=D[13]/N,q[2]=D[14]/N;for(var U=this.computedCenter,G=Math.exp(this.computedRadius[0]),E=0;E<3;++E)U[E]=q[E]-p[2+4*E]*G}},T.idle=function(x){if(!(x1&&s(u[d[g-2]],u[d[g-1]],b)<=0;)g-=1,d.pop();for(d.push(m),g=v.length;g>1&&s(u[v[g-2]],u[v[g-1]],b)>=0;)g-=1,v.pop();v.push(m)}for(var _=new Array(v.length+d.length-2),T=0,c=0,w=d.length;c0;--k)_[T++]=v[k];return _}},351:function(i,a,o){"use strict";i.exports=l;var s=o(4687);function l(u,f){f||(f=u,u=window);var c=0,h=0,d=0,v={shift:!1,alt:!1,control:!1,meta:!1},m=!1;function b(y){var E=!1;return"altKey"in y&&(E=E||y.altKey!==v.alt,v.alt=!!y.altKey),"shiftKey"in y&&(E=E||y.shiftKey!==v.shift,v.shift=!!y.shiftKey),"ctrlKey"in y&&(E=E||y.ctrlKey!==v.control,v.control=!!y.ctrlKey),"metaKey"in y&&(E=E||y.metaKey!==v.meta,v.meta=!!y.metaKey),E}function g(y,E){var C=s.x(E),L=s.y(E);"buttons"in E&&(y=E.buttons|0),(y!==c||C!==h||L!==d||b(E))&&(c=y|0,h=C||0,d=L||0,f&&f(c,h,d,v))}function _(y){g(0,y)}function T(){(c||h||d||v.shift||v.alt||v.meta||v.control)&&(h=d=0,c=0,v.shift=v.alt=v.control=v.meta=!1,f&&f(0,0,0,v))}function w(y){b(y)&&f&&f(c,h,d,v)}function k(y){s.buttons(y)===0?g(0,y):g(c,y)}function x(y){g(c|s.buttons(y),y)}function M(y){g(c&~s.buttons(y),y)}function A(){m||(m=!0,u.addEventListener("mousemove",k),u.addEventListener("mousedown",x),u.addEventListener("mouseup",M),u.addEventListener("mouseleave",_),u.addEventListener("mouseenter",_),u.addEventListener("mouseout",_),u.addEventListener("mouseover",_),u.addEventListener("blur",T),u.addEventListener("keyup",w),u.addEventListener("keydown",w),u.addEventListener("keypress",w),u!==window&&(window.addEventListener("blur",T),window.addEventListener("keyup",w),window.addEventListener("keydown",w),window.addEventListener("keypress",w)))}function p(){m&&(m=!1,u.removeEventListener("mousemove",k),u.removeEventListener("mousedown",x),u.removeEventListener("mouseup",M),u.removeEventListener("mouseleave",_),u.removeEventListener("mouseenter",_),u.removeEventListener("mouseout",_),u.removeEventListener("mouseover",_),u.removeEventListener("blur",T),u.removeEventListener("keyup",w),u.removeEventListener("keydown",w),u.removeEventListener("keypress",w),u!==window&&(window.removeEventListener("blur",T),window.removeEventListener("keyup",w),window.removeEventListener("keydown",w),window.removeEventListener("keypress",w)))}A();var S={element:u};return Object.defineProperties(S,{enabled:{get:function(){return m},set:function(y){y?A():p()},enumerable:!0},buttons:{get:function(){return c},enumerable:!0},x:{get:function(){return h},enumerable:!0},y:{get:function(){return d},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),S}},24:function(i){var a={left:0,top:0};i.exports=o;function o(l,u,f){u=u||l.currentTarget||l.srcElement,Array.isArray(f)||(f=[0,0]);var c=l.clientX||0,h=l.clientY||0,d=s(u);return f[0]=c-d.left,f[1]=h-d.top,f}function s(l){return l===window||l===document||l===document.body?a:l.getBoundingClientRect()}},4687:function(i,a){"use strict";function o(f){if(typeof f=="object"){if("buttons"in f)return f.buttons;if("which"in f){var c=f.which;if(c===2)return 4;if(c===3)return 2;if(c>0)return 1<=0)return 1<0){if(ee=1,O[K++]=v(A[E],T,w,k),E+=N,x>0)for(G=1,C=A[E],$=O[K]=v(C,T,w,k),V=O[K+oe],fe=O[K+ne],Ne=O[K+ge],($!==V||$!==fe||$!==Ne)&&(R=A[E+L],P=A[E+I],q=A[E+D],h(G,ee,C,R,P,q,$,V,fe,Ne,T,w,k),pe=Z[K]=Q++),K+=1,E+=N,G=2;G0)for(G=1,C=A[E],$=O[K]=v(C,T,w,k),V=O[K+oe],fe=O[K+ne],Ne=O[K+ge],($!==V||$!==fe||$!==Ne)&&(R=A[E+L],P=A[E+I],q=A[E+D],h(G,ee,C,R,P,q,$,V,fe,Ne,T,w,k),pe=Z[K]=Q++,Ne!==fe&&d(Z[K+ne],pe,P,q,fe,Ne,T,w,k)),K+=1,E+=N,G=2;G0){if(G=1,O[K++]=v(A[E],T,w,k),E+=N,M>0)for(ee=1,C=A[E],$=O[K]=v(C,T,w,k),fe=O[K+ne],V=O[K+oe],Ne=O[K+ge],($!==fe||$!==V||$!==Ne)&&(R=A[E+L],P=A[E+I],q=A[E+D],h(G,ee,C,R,P,q,$,fe,V,Ne,T,w,k),pe=Z[K]=Q++),K+=1,E+=N,ee=2;ee0)for(ee=1,C=A[E],$=O[K]=v(C,T,w,k),fe=O[K+ne],V=O[K+oe],Ne=O[K+ge],($!==fe||$!==V||$!==Ne)&&(R=A[E+L],P=A[E+I],q=A[E+D],h(G,ee,C,R,P,q,$,fe,V,Ne,T,w,k),pe=Z[K]=Q++,Ne!==fe&&d(Z[K+ne],pe,q,R,Ne,fe,T,w,k)),K+=1,E+=N,ee=2;ee 0"),typeof c.vertex!="function"&&h("Must specify vertex creation function"),typeof c.cell!="function"&&h("Must specify cell creation function"),typeof c.phase!="function"&&h("Must specify phase function");for(var b=c.getters||[],g=new Array(v),_=0;_=0?g[_]=!0:g[_]=!1;return u(c.vertex,c.cell,c.phase,m,d,g)}},6199:function(i,a,o){"use strict";var s=o(1338),l={zero:function(k,x,M,A){var p=k[0],S=M[0];A|=0;var y=0,E=S;for(y=0;y2&&y[1]>2&&A(S.pick(-1,-1).lo(1,1).hi(y[0]-2,y[1]-2),p.pick(-1,-1,0).lo(1,1).hi(y[0]-2,y[1]-2),p.pick(-1,-1,1).lo(1,1).hi(y[0]-2,y[1]-2)),y[1]>2&&(M(S.pick(0,-1).lo(1).hi(y[1]-2),p.pick(0,-1,1).lo(1).hi(y[1]-2)),x(p.pick(0,-1,0).lo(1).hi(y[1]-2))),y[1]>2&&(M(S.pick(y[0]-1,-1).lo(1).hi(y[1]-2),p.pick(y[0]-1,-1,1).lo(1).hi(y[1]-2)),x(p.pick(y[0]-1,-1,0).lo(1).hi(y[1]-2))),y[0]>2&&(M(S.pick(-1,0).lo(1).hi(y[0]-2),p.pick(-1,0,0).lo(1).hi(y[0]-2)),x(p.pick(-1,0,1).lo(1).hi(y[0]-2))),y[0]>2&&(M(S.pick(-1,y[1]-1).lo(1).hi(y[0]-2),p.pick(-1,y[1]-1,0).lo(1).hi(y[0]-2)),x(p.pick(-1,y[1]-1,1).lo(1).hi(y[0]-2))),p.set(0,0,0,0),p.set(0,0,1,0),p.set(y[0]-1,0,0,0),p.set(y[0]-1,0,1,0),p.set(0,y[1]-1,0,0),p.set(0,y[1]-1,1,0),p.set(y[0]-1,y[1]-1,0,0),p.set(y[0]-1,y[1]-1,1,0),p}}function w(k){var x=k.join(),y=v[x];if(y)return y;for(var M=k.length,A=[b,g],p=1;p<=M;++p)A.push(_(p));var S=T,y=S.apply(void 0,A);return v[x]=y,y}i.exports=function(x,M,A){if(Array.isArray(A)||(typeof A=="string"?A=s(M.dimension,A):A=s(M.dimension,"clamp")),M.size===0)return x;if(M.dimension===0)return x.set(0),x;var p=w(A);return p(x,M)}},4317:function(i){"use strict";function a(f,c){var h=Math.floor(c),d=c-h,v=0<=h&&h0;){P<64?(x=P,P=0):(x=64,P-=64);for(var D=v[1]|0;D>0;){D<64?(M=D,D=0):(M=64,D-=64),g=R+P*p+D*S,w=I+P*E+D*C;var q=0,N=0,U=0,G=y,ee=p-A*y,Q=S-x*p,j=L,O=E-A*L,Z=C-x*E;for(U=0;U0;){C<64?(x=C,C=0):(x=64,C-=64);for(var L=v[0]|0;L>0;){L<64?(k=L,L=0):(k=64,L-=64),g=y+C*A+L*M,w=E+C*S+L*p;var R=0,I=0,P=A,D=M-x*A,q=S,N=p-x*S;for(I=0;I0;){I<64?(M=I,I=0):(M=64,I-=64);for(var P=v[0]|0;P>0;){P<64?(k=P,P=0):(k=64,P-=64);for(var D=v[1]|0;D>0;){D<64?(x=D,D=0):(x=64,D-=64),g=L+I*S+P*A+D*p,w=R+I*C+P*y+D*E;var q=0,N=0,U=0,G=S,ee=A-M*S,Q=p-k*A,j=C,O=y-M*C,Z=E-k*y;for(U=0;U_;){q=0,N=R-x;t:for(P=0;PG)break t;N+=y,q+=E}for(q=R,N=R-x,P=0;P>1,D=P-L,q=P+L,N=R,U=D,G=P,ee=q,Q=I,j=T+1,O=w-1,Z=!0,K,$,oe,te,V,ne,W,fe,ge,Ce=0,Ne=0,pe=0,me,Ie,Re,ze,Be,tt,rt,ce,Ee,Ae,Pe,He,Fe,ke,Ue,Ge,lt=S,it=b(lt),wt=b(lt);Ie=M*N,Re=M*U,Ge=x;e:for(me=0;me0){$=N,N=U,U=$;break e}if(pe<0)break e;Ge+=E}Ie=M*ee,Re=M*Q,Ge=x;e:for(me=0;me0){$=ee,ee=Q,Q=$;break e}if(pe<0)break e;Ge+=E}Ie=M*N,Re=M*G,Ge=x;e:for(me=0;me0){$=N,N=G,G=$;break e}if(pe<0)break e;Ge+=E}Ie=M*U,Re=M*G,Ge=x;e:for(me=0;me0){$=U,U=G,G=$;break e}if(pe<0)break e;Ge+=E}Ie=M*N,Re=M*ee,Ge=x;e:for(me=0;me0){$=N,N=ee,ee=$;break e}if(pe<0)break e;Ge+=E}Ie=M*G,Re=M*ee,Ge=x;e:for(me=0;me0){$=G,G=ee,ee=$;break e}if(pe<0)break e;Ge+=E}Ie=M*U,Re=M*Q,Ge=x;e:for(me=0;me0){$=U,U=Q,Q=$;break e}if(pe<0)break e;Ge+=E}Ie=M*U,Re=M*G,Ge=x;e:for(me=0;me0){$=U,U=G,G=$;break e}if(pe<0)break e;Ge+=E}Ie=M*ee,Re=M*Q,Ge=x;e:for(me=0;me0){$=ee,ee=Q,Q=$;break e}if(pe<0)break e;Ge+=E}for(Ie=M*N,Re=M*U,ze=M*G,Be=M*ee,tt=M*Q,rt=M*R,ce=M*P,Ee=M*I,Ue=0,Ge=x,me=0;me0)O--;else if(pe<0){for(Ie=M*ne,Re=M*j,ze=M*O,Ge=x,me=0;me0)for(;;){W=x+O*M,Ue=0;e:for(me=0;me0){if(--OI){e:for(;;){for(W=x+j*M,Ue=0,Ge=x,me=0;me1&&_?w(g,_[0],_[1]):w(g)}var d={"uint32,1,0":function(m,b){return function(g){var _=g.data,T=g.offset|0,w=g.shape,k=g.stride,x=k[0]|0,M=w[0]|0,A=k[1]|0,p=w[1]|0,S=A,y=A,E=1;M<=32?m(0,M-1,_,T,x,A,M,p,S,y,E):b(0,M-1,_,T,x,A,M,p,S,y,E)}}};function v(m,b){var g=[b,m].join(","),_=d[g],T=f(m,b),w=h(m,b,T);return _(T,w)}i.exports=v},446:function(i,a,o){"use strict";var s=o(7640),l={};function u(f){var c=f.order,h=f.dtype,d=[c,h],v=d.join(":"),m=l[v];return m||(l[v]=m=s(c,h)),m(f),f}i.exports=u},9618:function(i,a,o){var s=o(7163),l=typeof Float64Array<"u";function u(b,g){return b[0]-g[0]}function f(){var b=this.stride,g=new Array(b.length),_;for(_=0;_=0&&(A=x|0,M+=S*A,p-=A),new T(this.data,p,S,M)},w.step=function(x){var M=this.shape[0],A=this.stride[0],p=this.offset,S=0,y=Math.ceil;return typeof x=="number"&&(S=x|0,S<0?(p+=A*(M-1),M=y(-M/S)):M=y(M/S),A*=S),new T(this.data,M,A,p)},w.transpose=function(x){x=x===void 0?0:x|0;var M=this.shape,A=this.stride;return new T(this.data,M[x],A[x],this.offset)},w.pick=function(x){var M=[],A=[],p=this.offset;typeof x=="number"&&x>=0?p=p+this.stride[0]*x|0:(M.push(this.shape[0]),A.push(this.stride[0]));var S=g[M.length+1];return S(this.data,M,A,p)},function(x,M,A,p){return new T(x,M[0],A[0],p)}},2:function(b,g,_){function T(k,x,M,A,p,S){this.data=k,this.shape=[x,M],this.stride=[A,p],this.offset=S|0}var w=T.prototype;return w.dtype=b,w.dimension=2,Object.defineProperty(w,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(w,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),w.set=function(x,M,A){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*M,A):this.data[this.offset+this.stride[0]*x+this.stride[1]*M]=A},w.get=function(x,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*M):this.data[this.offset+this.stride[0]*x+this.stride[1]*M]},w.index=function(x,M){return this.offset+this.stride[0]*x+this.stride[1]*M},w.hi=function(x,M){return new T(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof M!="number"||M<0?this.shape[1]:M|0,this.stride[0],this.stride[1],this.offset)},w.lo=function(x,M){var A=this.offset,p=0,S=this.shape[0],y=this.shape[1],E=this.stride[0],C=this.stride[1];return typeof x=="number"&&x>=0&&(p=x|0,A+=E*p,S-=p),typeof M=="number"&&M>=0&&(p=M|0,A+=C*p,y-=p),new T(this.data,S,y,E,C,A)},w.step=function(x,M){var A=this.shape[0],p=this.shape[1],S=this.stride[0],y=this.stride[1],E=this.offset,C=0,L=Math.ceil;return typeof x=="number"&&(C=x|0,C<0?(E+=S*(A-1),A=L(-A/C)):A=L(A/C),S*=C),typeof M=="number"&&(C=M|0,C<0?(E+=y*(p-1),p=L(-p/C)):p=L(p/C),y*=C),new T(this.data,A,p,S,y,E)},w.transpose=function(x,M){x=x===void 0?0:x|0,M=M===void 0?1:M|0;var A=this.shape,p=this.stride;return new T(this.data,A[x],A[M],p[x],p[M],this.offset)},w.pick=function(x,M){var A=[],p=[],S=this.offset;typeof x=="number"&&x>=0?S=S+this.stride[0]*x|0:(A.push(this.shape[0]),p.push(this.stride[0])),typeof M=="number"&&M>=0?S=S+this.stride[1]*M|0:(A.push(this.shape[1]),p.push(this.stride[1]));var y=g[A.length+1];return y(this.data,A,p,S)},function(x,M,A,p){return new T(x,M[0],M[1],A[0],A[1],p)}},3:function(b,g,_){function T(k,x,M,A,p,S,y,E){this.data=k,this.shape=[x,M,A],this.stride=[p,S,y],this.offset=E|0}var w=T.prototype;return w.dtype=b,w.dimension=3,Object.defineProperty(w,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(w,"order",{get:function(){var x=Math.abs(this.stride[0]),M=Math.abs(this.stride[1]),A=Math.abs(this.stride[2]);return x>M?M>A?[2,1,0]:x>A?[1,2,0]:[1,0,2]:x>A?[2,0,1]:A>M?[0,1,2]:[0,2,1]}}),w.set=function(x,M,A,p){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A,p):this.data[this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A]=p},w.get=function(x,M,A){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A):this.data[this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A]},w.index=function(x,M,A){return this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A},w.hi=function(x,M,A){return new T(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof A!="number"||A<0?this.shape[2]:A|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},w.lo=function(x,M,A){var p=this.offset,S=0,y=this.shape[0],E=this.shape[1],C=this.shape[2],L=this.stride[0],R=this.stride[1],I=this.stride[2];return typeof x=="number"&&x>=0&&(S=x|0,p+=L*S,y-=S),typeof M=="number"&&M>=0&&(S=M|0,p+=R*S,E-=S),typeof A=="number"&&A>=0&&(S=A|0,p+=I*S,C-=S),new T(this.data,y,E,C,L,R,I,p)},w.step=function(x,M,A){var p=this.shape[0],S=this.shape[1],y=this.shape[2],E=this.stride[0],C=this.stride[1],L=this.stride[2],R=this.offset,I=0,P=Math.ceil;return typeof x=="number"&&(I=x|0,I<0?(R+=E*(p-1),p=P(-p/I)):p=P(p/I),E*=I),typeof M=="number"&&(I=M|0,I<0?(R+=C*(S-1),S=P(-S/I)):S=P(S/I),C*=I),typeof A=="number"&&(I=A|0,I<0?(R+=L*(y-1),y=P(-y/I)):y=P(y/I),L*=I),new T(this.data,p,S,y,E,C,L,R)},w.transpose=function(x,M,A){x=x===void 0?0:x|0,M=M===void 0?1:M|0,A=A===void 0?2:A|0;var p=this.shape,S=this.stride;return new T(this.data,p[x],p[M],p[A],S[x],S[M],S[A],this.offset)},w.pick=function(x,M,A){var p=[],S=[],y=this.offset;typeof x=="number"&&x>=0?y=y+this.stride[0]*x|0:(p.push(this.shape[0]),S.push(this.stride[0])),typeof M=="number"&&M>=0?y=y+this.stride[1]*M|0:(p.push(this.shape[1]),S.push(this.stride[1])),typeof A=="number"&&A>=0?y=y+this.stride[2]*A|0:(p.push(this.shape[2]),S.push(this.stride[2]));var E=g[p.length+1];return E(this.data,p,S,y)},function(x,M,A,p){return new T(x,M[0],M[1],M[2],A[0],A[1],A[2],p)}},4:function(b,g,_){function T(k,x,M,A,p,S,y,E,C,L){this.data=k,this.shape=[x,M,A,p],this.stride=[S,y,E,C],this.offset=L|0}var w=T.prototype;return w.dtype=b,w.dimension=4,Object.defineProperty(w,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(w,"order",{get:_}),w.set=function(x,M,A,p,S){return b==="generic"?this.data.set(this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A+this.stride[3]*p,S):this.data[this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A+this.stride[3]*p]=S},w.get=function(x,M,A,p){return b==="generic"?this.data.get(this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A+this.stride[3]*p):this.data[this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A+this.stride[3]*p]},w.index=function(x,M,A,p){return this.offset+this.stride[0]*x+this.stride[1]*M+this.stride[2]*A+this.stride[3]*p},w.hi=function(x,M,A,p){return new T(this.data,typeof x!="number"||x<0?this.shape[0]:x|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof A!="number"||A<0?this.shape[2]:A|0,typeof p!="number"||p<0?this.shape[3]:p|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},w.lo=function(x,M,A,p){var S=this.offset,y=0,E=this.shape[0],C=this.shape[1],L=this.shape[2],R=this.shape[3],I=this.stride[0],P=this.stride[1],D=this.stride[2],q=this.stride[3];return typeof x=="number"&&x>=0&&(y=x|0,S+=I*y,E-=y),typeof M=="number"&&M>=0&&(y=M|0,S+=P*y,C-=y),typeof A=="number"&&A>=0&&(y=A|0,S+=D*y,L-=y),typeof p=="number"&&p>=0&&(y=p|0,S+=q*y,R-=y),new T(this.data,E,C,L,R,I,P,D,q,S)},w.step=function(x,M,A,p){var S=this.shape[0],y=this.shape[1],E=this.shape[2],C=this.shape[3],L=this.stride[0],R=this.stride[1],I=this.stride[2],P=this.stride[3],D=this.offset,q=0,N=Math.ceil;return typeof x=="number"&&(q=x|0,q<0?(D+=L*(S-1),S=N(-S/q)):S=N(S/q),L*=q),typeof M=="number"&&(q=M|0,q<0?(D+=R*(y-1),y=N(-y/q)):y=N(y/q),R*=q),typeof A=="number"&&(q=A|0,q<0?(D+=I*(E-1),E=N(-E/q)):E=N(E/q),I*=q),typeof p=="number"&&(q=p|0,q<0?(D+=P*(C-1),C=N(-C/q)):C=N(C/q),P*=q),new T(this.data,S,y,E,C,L,R,I,P,D)},w.transpose=function(x,M,A,p){x=x===void 0?0:x|0,M=M===void 0?1:M|0,A=A===void 0?2:A|0,p=p===void 0?3:p|0;var S=this.shape,y=this.stride;return new T(this.data,S[x],S[M],S[A],S[p],y[x],y[M],y[A],y[p],this.offset)},w.pick=function(x,M,A,p){var S=[],y=[],E=this.offset;typeof x=="number"&&x>=0?E=E+this.stride[0]*x|0:(S.push(this.shape[0]),y.push(this.stride[0])),typeof M=="number"&&M>=0?E=E+this.stride[1]*M|0:(S.push(this.shape[1]),y.push(this.stride[1])),typeof A=="number"&&A>=0?E=E+this.stride[2]*A|0:(S.push(this.shape[2]),y.push(this.stride[2])),typeof p=="number"&&p>=0?E=E+this.stride[3]*p|0:(S.push(this.shape[3]),y.push(this.stride[3]));var C=g[S.length+1];return C(this.data,S,y,E)},function(x,M,A,p){return new T(x,M[0],M[1],M[2],M[3],A[0],A[1],A[2],A[3],p)}},5:function(g,_,T){function w(x,M,A,p,S,y,E,C,L,R,I,P){this.data=x,this.shape=[M,A,p,S,y],this.stride=[E,C,L,R,I],this.offset=P|0}var k=w.prototype;return k.dtype=g,k.dimension=5,Object.defineProperty(k,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(k,"order",{get:T}),k.set=function(M,A,p,S,y,E){return g==="generic"?this.data.set(this.offset+this.stride[0]*M+this.stride[1]*A+this.stride[2]*p+this.stride[3]*S+this.stride[4]*y,E):this.data[this.offset+this.stride[0]*M+this.stride[1]*A+this.stride[2]*p+this.stride[3]*S+this.stride[4]*y]=E},k.get=function(M,A,p,S,y){return g==="generic"?this.data.get(this.offset+this.stride[0]*M+this.stride[1]*A+this.stride[2]*p+this.stride[3]*S+this.stride[4]*y):this.data[this.offset+this.stride[0]*M+this.stride[1]*A+this.stride[2]*p+this.stride[3]*S+this.stride[4]*y]},k.index=function(M,A,p,S,y){return this.offset+this.stride[0]*M+this.stride[1]*A+this.stride[2]*p+this.stride[3]*S+this.stride[4]*y},k.hi=function(M,A,p,S,y){return new w(this.data,typeof M!="number"||M<0?this.shape[0]:M|0,typeof A!="number"||A<0?this.shape[1]:A|0,typeof p!="number"||p<0?this.shape[2]:p|0,typeof S!="number"||S<0?this.shape[3]:S|0,typeof y!="number"||y<0?this.shape[4]:y|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},k.lo=function(M,A,p,S,y){var E=this.offset,C=0,L=this.shape[0],R=this.shape[1],I=this.shape[2],P=this.shape[3],D=this.shape[4],q=this.stride[0],N=this.stride[1],U=this.stride[2],G=this.stride[3],ee=this.stride[4];return typeof M=="number"&&M>=0&&(C=M|0,E+=q*C,L-=C),typeof A=="number"&&A>=0&&(C=A|0,E+=N*C,R-=C),typeof p=="number"&&p>=0&&(C=p|0,E+=U*C,I-=C),typeof S=="number"&&S>=0&&(C=S|0,E+=G*C,P-=C),typeof y=="number"&&y>=0&&(C=y|0,E+=ee*C,D-=C),new w(this.data,L,R,I,P,D,q,N,U,G,ee,E)},k.step=function(M,A,p,S,y){var E=this.shape[0],C=this.shape[1],L=this.shape[2],R=this.shape[3],I=this.shape[4],P=this.stride[0],D=this.stride[1],q=this.stride[2],N=this.stride[3],U=this.stride[4],G=this.offset,ee=0,Q=Math.ceil;return typeof M=="number"&&(ee=M|0,ee<0?(G+=P*(E-1),E=Q(-E/ee)):E=Q(E/ee),P*=ee),typeof A=="number"&&(ee=A|0,ee<0?(G+=D*(C-1),C=Q(-C/ee)):C=Q(C/ee),D*=ee),typeof p=="number"&&(ee=p|0,ee<0?(G+=q*(L-1),L=Q(-L/ee)):L=Q(L/ee),q*=ee),typeof S=="number"&&(ee=S|0,ee<0?(G+=N*(R-1),R=Q(-R/ee)):R=Q(R/ee),N*=ee),typeof y=="number"&&(ee=y|0,ee<0?(G+=U*(I-1),I=Q(-I/ee)):I=Q(I/ee),U*=ee),new w(this.data,E,C,L,R,I,P,D,q,N,U,G)},k.transpose=function(M,A,p,S,y){M=M===void 0?0:M|0,A=A===void 0?1:A|0,p=p===void 0?2:p|0,S=S===void 0?3:S|0,y=y===void 0?4:y|0;var E=this.shape,C=this.stride;return new w(this.data,E[M],E[A],E[p],E[S],E[y],C[M],C[A],C[p],C[S],C[y],this.offset)},k.pick=function(M,A,p,S,y){var E=[],C=[],L=this.offset;typeof M=="number"&&M>=0?L=L+this.stride[0]*M|0:(E.push(this.shape[0]),C.push(this.stride[0])),typeof A=="number"&&A>=0?L=L+this.stride[1]*A|0:(E.push(this.shape[1]),C.push(this.stride[1])),typeof p=="number"&&p>=0?L=L+this.stride[2]*p|0:(E.push(this.shape[2]),C.push(this.stride[2])),typeof S=="number"&&S>=0?L=L+this.stride[3]*S|0:(E.push(this.shape[3]),C.push(this.stride[3])),typeof y=="number"&&y>=0?L=L+this.stride[4]*y|0:(E.push(this.shape[4]),C.push(this.stride[4]));var R=_[E.length+1];return R(this.data,E,C,L)},function(M,A,p,S){return new w(M,A[0],A[1],A[2],A[3],A[4],p[0],p[1],p[2],p[3],p[4],S)}}};function h(b,g){var _=g===-1?"T":String(g),T=c[_];return g===-1?T(b):g===0?T(b,v[b][0]):T(b,v[b],f)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){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 Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function m(b,g,_,T){if(b===void 0){var p=v.array[0];return p([])}else typeof b=="number"&&(b=[b]);g===void 0&&(g=[b.length]);var w=g.length;if(_===void 0){_=new Array(w);for(var k=w-1,x=1;k>=0;--k)_[k]=x,x*=g[k]}if(T===void 0){T=0;for(var k=0;k>>0;i.exports=f;function f(c,h){if(isNaN(c)||isNaN(h))return NaN;if(c===h)return c;if(c===0)return h<0?-l:l;var d=s.hi(c),v=s.lo(c);return h>c==c>0?v===u?(d+=1,v=0):v+=1:v===0?(v=u,d-=1):v-=1,s.pack(v,d)}},8406:function(i,a){var o=1e-6,s=1e-6;a.vertexNormals=function(l,u,f){for(var c=u.length,h=new Array(c),d=f===void 0?o:f,v=0;vd)for(var E=h[g],C=1/Math.sqrt(A*S),y=0;y<3;++y){var L=(y+1)%3,R=(y+2)%3;E[y]+=C*(p[L]*M[R]-p[R]*M[L])}}for(var v=0;vd)for(var C=1/Math.sqrt(I),y=0;y<3;++y)E[y]*=C;else for(var y=0;y<3;++y)E[y]=0}return h},a.faceNormals=function(l,u,f){for(var c=l.length,h=new Array(c),d=f===void 0?s:f,v=0;vd?k=1/Math.sqrt(k):k=0;for(var g=0;g<3;++g)w[g]*=k;h[v]=w}return h}},4081:function(i){"use strict";i.exports=a;function a(o,s,l,u,f,c,h,d,v,m){var b=s+c+m;if(g>0){var g=Math.sqrt(b+1);o[0]=.5*(h-v)/g,o[1]=.5*(d-u)/g,o[2]=.5*(l-c)/g,o[3]=.5*g}else{var _=Math.max(s,c,m),g=Math.sqrt(2*_-b+1);s>=_?(o[0]=.5*g,o[1]=.5*(f+l)/g,o[2]=.5*(d+u)/g,o[3]=.5*(h-v)/g):c>=_?(o[0]=.5*(l+f)/g,o[1]=.5*g,o[2]=.5*(v+h)/g,o[3]=.5*(d-u)/g):(o[0]=.5*(u+d)/g,o[1]=.5*(h+v)/g,o[2]=.5*g,o[3]=.5*(l-f)/g)}return o}},9977:function(i,a,o){"use strict";i.exports=g;var s=o(9215),l=o(6582),u=o(7399),f=o(7608),c=o(4081);function h(_,T,w){return Math.sqrt(Math.pow(_,2)+Math.pow(T,2)+Math.pow(w,2))}function d(_,T,w,k){return Math.sqrt(Math.pow(_,2)+Math.pow(T,2)+Math.pow(w,2)+Math.pow(k,2))}function v(_,T){var w=T[0],k=T[1],x=T[2],M=T[3],A=d(w,k,x,M);A>1e-6?(_[0]=w/A,_[1]=k/A,_[2]=x/A,_[3]=M/A):(_[0]=_[1]=_[2]=0,_[3]=1)}function m(_,T,w){this.radius=s([w]),this.center=s(T),this.rotation=s(_),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)}var b=m.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var T=this.computedRotation;v(T,T);var w=this.computedMatrix;u(w,T);var k=this.computedCenter,x=this.computedEye,M=this.computedUp,A=Math.exp(this.computedRadius[0]);x[0]=k[0]+A*w[2],x[1]=k[1]+A*w[6],x[2]=k[2]+A*w[10],M[0]=w[1],M[1]=w[5],M[2]=w[9];for(var p=0;p<3;++p){for(var S=0,y=0;y<3;++y)S+=w[p+4*y]*x[y];w[12+p]=-S}},b.getMatrix=function(_,T){this.recalcMatrix(_);var w=this.computedMatrix;if(T){for(var k=0;k<16;++k)T[k]=w[k];return T}return w},b.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},b.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},b.pan=function(_,T,w,k){T=T||0,w=w||0,k=k||0,this.recalcMatrix(_);var x=this.computedMatrix,M=x[1],A=x[5],p=x[9],S=h(M,A,p);M/=S,A/=S,p/=S;var y=x[0],E=x[4],C=x[8],L=y*M+E*A+C*p;y-=M*L,E-=A*L,C-=p*L;var R=h(y,E,C);y/=R,E/=R,C/=R;var I=x[2],P=x[6],D=x[10],q=I*M+P*A+D*p,N=I*y+P*E+D*C;I-=q*M+N*y,P-=q*A+N*E,D-=q*p+N*C;var U=h(I,P,D);I/=U,P/=U,D/=U;var G=y*T+M*w,ee=E*T+A*w,Q=C*T+p*w;this.center.move(_,G,ee,Q);var j=Math.exp(this.computedRadius[0]);j=Math.max(1e-4,j+k),this.radius.set(_,Math.log(j))},b.rotate=function(_,T,w,k){this.recalcMatrix(_),T=T||0,w=w||0;var x=this.computedMatrix,M=x[0],A=x[4],p=x[8],S=x[1],y=x[5],E=x[9],C=x[2],L=x[6],R=x[10],I=T*M+w*S,P=T*A+w*y,D=T*p+w*E,q=-(L*D-R*P),N=-(R*I-C*D),U=-(C*P-L*I),G=Math.sqrt(Math.max(0,1-Math.pow(q,2)-Math.pow(N,2)-Math.pow(U,2))),ee=d(q,N,U,G);ee>1e-6?(q/=ee,N/=ee,U/=ee,G/=ee):(q=N=U=0,G=1);var Q=this.computedRotation,j=Q[0],O=Q[1],Z=Q[2],K=Q[3],$=j*G+K*q+O*U-Z*N,oe=O*G+K*N+Z*q-j*U,te=Z*G+K*U+j*N-O*q,V=K*G-j*q-O*N-Z*U;if(k){q=C,N=L,U=R;var ne=Math.sin(k)/h(q,N,U);q*=ne,N*=ne,U*=ne,G=Math.cos(T),$=$*G+V*q+oe*U-te*N,oe=oe*G+V*N+te*q-$*U,te=te*G+V*U+$*N-oe*q,V=V*G-$*q-oe*N-te*U}var W=d($,oe,te,V);W>1e-6?($/=W,oe/=W,te/=W,V/=W):($=oe=te=0,V=1),this.rotation.set(_,$,oe,te,V)},b.lookAt=function(_,T,w,k){this.recalcMatrix(_),w=w||this.computedCenter,T=T||this.computedEye,k=k||this.computedUp;var x=this.computedMatrix;l(x,T,w,k);var M=this.computedRotation;c(M,x[0],x[1],x[2],x[4],x[5],x[6],x[8],x[9],x[10]),v(M,M),this.rotation.set(_,M[0],M[1],M[2],M[3]);for(var A=0,p=0;p<3;++p)A+=Math.pow(w[p]-T[p],2);this.radius.set(_,.5*Math.log(Math.max(A,1e-6))),this.center.set(_,w[0],w[1],w[2])},b.translate=function(_,T,w,k){this.center.move(_,T||0,w||0,k||0)},b.setMatrix=function(_,T){var w=this.computedRotation;c(w,T[0],T[1],T[2],T[4],T[5],T[6],T[8],T[9],T[10]),v(w,w),this.rotation.set(_,w[0],w[1],w[2],w[3]);var k=this.computedMatrix;f(k,T);var x=k[15];if(Math.abs(x)>1e-6){var M=k[12]/x,A=k[13]/x,p=k[14]/x;this.recalcMatrix(_);var S=Math.exp(this.computedRadius[0]);this.center.set(_,M-k[2]*S,A-k[6]*S,p-k[10]*S),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},b.setDistance=function(_,T){T>0&&this.radius.set(_,Math.log(T))},b.setDistanceLimits=function(_,T){_>0?_=Math.log(_):_=-1/0,T>0?T=Math.log(T):T=1/0,T=Math.max(T,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=T},b.getDistanceLimits=function(_){var T=this.radius.bounds;return _?(_[0]=Math.exp(T[0][0]),_[1]=Math.exp(T[1][0]),_):[Math.exp(T[0][0]),Math.exp(T[1][0])]},b.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]}},b.fromJSON=function(_){var T=this.lastT(),w=_.center;w&&this.center.set(T,w[0],w[1],w[2]);var k=_.rotation;k&&this.rotation.set(T,k[0],k[1],k[2],k[3]);var x=_.distance;x&&x>0&&this.radius.set(T,Math.log(x)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function g(_){_=_||{};var T=_.center||[0,0,0],w=_.rotation||[0,0,0,1],k=_.radius||1;T=[].slice.call(T,0,3),w=[].slice.call(w,0,4),v(w,w);var x=new m(w,T,Math.log(k));return x.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&x.lookAt(0,_.eye,_.center,_.up),x}},1371:function(i,a,o){"use strict";var s=o(3233);i.exports=function(u,f,c){return c=typeof c<"u"?c+"":" ",s(c,f)+u}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var l=parseFloat(o,10);return s[0]=l,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3088:function(i,a,o){"use strict";i.exports=l;var s=o(3140);function l(u,f){for(var c=f.length|0,h=u.length,d=[new Array(c),new Array(c)],v=0;v0){E=d[R][S][0],L=R;break}C=E[L^1];for(var I=0;I<2;++I)for(var P=d[I][S],D=0;D0&&(E=q,C=N,L=I)}return y||E&&g(E,L),C}function T(p,S){var y=d[S][p][0],E=[p];g(y,S);for(var C=y[S^1],L=S;;){for(;C!==p;)E.push(C),C=_(E[E.length-2],C,!1);if(d[0][p].length+d[1][p].length===0)break;var R=E[E.length-1],I=p,P=E[1],D=_(R,I,!0);if(s(f[R],f[I],f[P],f[D])<0)break;E.push(p),C=_(R,I)}return E}function w(p,S){return S[1]===S[S.length-1]}for(var v=0;v0;){var M=d[0][v].length,A=T(v,k);w(x,A)?x.push.apply(x,A):(x.length>0&&b.push(x),x=A)}x.length>0&&b.push(x)}return b}},5609:function(i,a,o){"use strict";i.exports=l;var s=o(3134);function l(u,f){for(var c=s(u,f.length),h=new Array(f.length),d=new Array(f.length),v=[],m=0;m0;){var g=v.pop();h[g]=!1;for(var _=c[g],m=0;m<_.length;++m){var T=_[m];--d[T]===0&&v.push(T)}}for(var w=new Array(f.length),k=[],m=0;m0}M=M.filter(A);for(var p=M.length,S=new Array(p),y=new Array(p),x=0;x0;){var W=te.pop(),fe=ee[W];h(fe,function(me,Ie){return me-Ie});var ge=fe.length,Ce=V[W],Ne;if(Ce===0){var P=M[W];Ne=[P]}for(var x=0;x=0)&&(V[pe]=Ce^1,te.push(pe),Ce===0)){var P=M[pe];oe(P)||(P.reverse(),Ne.push(P))}}Ce===0&&ne.push(Ne)}return ne}},5085:function(i,a,o){i.exports=_;var s=o(3250)[3],l=o(4209),u=o(3352),f=o(2478);function c(){return!0}function h(T){return function(w,k){var x=T[w];return x?!!x.queryPoint(k,c):!1}}function d(T){for(var w={},k=0;k0&&w[x]===k[0])M=T[x-1];else return 1;for(var A=1;M;){var p=M.key,S=s(k,p[0],p[1]);if(p[0][0]0)A=-1,M=M.right;else return 0;else if(S>0)M=M.left;else if(S<0)A=1,M=M.right;else return 0}return A}}function m(T){return 1}function b(T){return function(k){return T(k[0],k[1])?0:1}}function g(T,w){return function(x){return T(x[0],x[1])?0:w(x)}}function _(T){for(var w=T.length,k=[],x=[],M=0,A=0;A=m?(p=1,y=m+2*_+w):(p=-_/m,y=_*p+w)):(p=0,T>=0?(S=0,y=w):-T>=g?(S=1,y=g+2*T+w):(S=-T/g,y=T*S+w));else if(S<0)S=0,_>=0?(p=0,y=w):-_>=m?(p=1,y=m+2*_+w):(p=-_/m,y=_*p+w);else{var E=1/A;p*=E,S*=E,y=p*(m*p+b*S+2*_)+S*(b*p+g*S+2*T)+w}else{var C,L,R,I;p<0?(C=b+_,L=g+T,L>C?(R=L-C,I=m-2*b+g,R>=I?(p=1,S=0,y=m+2*_+w):(p=R/I,S=1-p,y=p*(m*p+b*S+2*_)+S*(b*p+g*S+2*T)+w)):(p=0,L<=0?(S=1,y=g+2*T+w):T>=0?(S=0,y=w):(S=-T/g,y=T*S+w))):S<0?(C=b+T,L=m+_,L>C?(R=L-C,I=m-2*b+g,R>=I?(S=1,p=0,y=g+2*T+w):(S=R/I,p=1-S,y=p*(m*p+b*S+2*_)+S*(b*p+g*S+2*T)+w)):(S=0,L<=0?(p=1,y=m+2*_+w):_>=0?(p=0,y=w):(p=-_/m,y=_*p+w))):(R=g+T-b-_,R<=0?(p=0,S=1,y=g+2*T+w):(I=m-2*b+g,R>=I?(p=1,S=0,y=m+2*_+w):(p=R/I,S=1-p,y=p*(m*p+b*S+2*_)+S*(b*p+g*S+2*T)+w)))}for(var P=1-p-S,v=0;v0){var g=c[d-1];if(s(m,g)===0&&u(g)!==b){d-=1;continue}}c[d++]=m}}return c.length=d,c}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(l,u){if(typeof l!="string")throw new TypeError("expected a string");if(u===1)return l;if(u===2)return l+l;var f=l.length*u;if(o!==l||typeof o>"u")o=l,a="";else if(a.length>=f)return a.substr(0,f);for(;f>a.length&&u>1;)u&1&&(a+=l),u>>=1,l+=l;return a+=l,a=a.substr(0,f),a}},3025:function(i,a,o){i.exports=o.g.performance&&o.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,l=o[o.length-1],u=s,f=s-2;f>=0;--f){var c=l,h=o[f];l=c+h;var d=l-c,v=h-d;v&&(o[--u]=l,l=v)}for(var m=0,f=u;f0){if(L<=0)return R;I=C+L}else if(C<0){if(L>=0)return R;I=-(C+L)}else return R;var P=d*I;return R>=P||R<=-P?R:T(S,y,E)},function(S,y,E,C){var L=S[0]-C[0],R=y[0]-C[0],I=E[0]-C[0],P=S[1]-C[1],D=y[1]-C[1],q=E[1]-C[1],N=S[2]-C[2],U=y[2]-C[2],G=E[2]-C[2],ee=R*q,Q=I*D,j=I*P,O=L*q,Z=L*D,K=R*P,$=N*(ee-Q)+U*(j-O)+G*(Z-K),oe=(Math.abs(ee)+Math.abs(Q))*Math.abs(N)+(Math.abs(j)+Math.abs(O))*Math.abs(U)+(Math.abs(Z)+Math.abs(K))*Math.abs(G),te=v*oe;return $>te||-$>te?$:w(S,y,E,C)}];function x(p){var S=k[p.length];return S||(S=k[p.length]=_(p.length)),S.apply(void 0,p)}function M(p,S,y,E,C,L,R){return function(P,D,q,N,U){switch(arguments.length){case 0:case 1:return 0;case 2:return E(P,D);case 3:return C(P,D,q);case 4:return L(P,D,q,N);case 5:return R(P,D,q,N,U)}for(var G=new Array(arguments.length),ee=0;ee0&&m>0||v<0&&m<0)return!1;var b=s(h,f,c),g=s(d,f,c);return b>0&&g>0||b<0&&g<0?!1:v===0&&m===0&&b===0&&g===0?l(f,c,h,d):!0}},8545:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,f=u-s,c=u-f,h=l-f,d=s-c,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,f=l.length|0;if(u===1&&f===1)return a(s[0],-l[0]);var c=u+f,h=new Array(c),d=0,v=0,m=0,b=Math.abs,g=s[v],_=b(g),T=-l[m],w=b(T),k,x;_=f?(k=g,v+=1,v=f?(k=g,v+=1,v"u"&&(k=c(_));var x=_.length;if(x===0||k<1)return{cells:[],vertexIds:[],vertexWeights:[]};var M=h(T,+w),A=d(_,k),p=v(A,T,M,+w),S=m(A,T.length|0),y=f(k)(_,A.data,S,M),E=b(A),C=[].slice.call(p.data,0,p.shape[0]);return l.free(M),l.free(A.data),l.free(p.data),l.free(S),{cells:y,vertexIds:E,vertexWeights:C}}},1570:function(i){"use strict";i.exports=o;var a=[function(){function l(f,c,h,d){for(var v=Math.min(h,d)|0,m=Math.max(h,d)|0,b=f[2*v],g=f[2*v+1];b>1,T=c[2*_+1];if(T===m)return _;m>1,T=c[2*_+1];if(T===m)return _;m>1,T=c[2*_+1];if(T===m)return _;m>1,T=c[2*_+1];if(T===m)return _;m>1,I=d(S[R],y);I<=0?(I===0&&(L=R),E=R+1):I>0&&(C=R-1)}return L}s=g;function _(S,y){for(var E=new Array(S.length),C=0,L=E.length;C=S.length||d(S[ee],R)!==0););}return E}s=_;function T(S,y){if(!y)return _(b(k(S,0)),S,0);for(var E=new Array(y),C=0;C>>q&1&&D.push(L[q]);y.push(D)}return m(y)}s=w;function k(S,y){if(y<0)return[];for(var E=[],C=(1<0)-(u<0)},a.abs=function(u){var f=u>>o-1;return(u^f)-f},a.min=function(u,f){return f^(u^f)&-(u65535)<<4,u>>>=f,c=(u>255)<<3,u>>>=c,f|=c,c=(u>15)<<2,u>>>=c,f|=c,c=(u>3)<<1,u>>>=c,f|=c,f|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var f=32;return u&=-u,u&&f--,u&65535&&(f-=16),u&16711935&&(f-=8),u&252645135&&(f-=4),u&858993459&&(f-=2),u&1431655765&&(f-=1),f}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var f=0;f<256;++f){var c=f,h=f,d=7;for(c>>>=1;c;c>>>=1)h<<=1,h|=c&1,--d;u[f]=h<>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,f){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,f&=65535,f=(f|f<<8)&16711935,f=(f|f<<4)&252645135,f=(f|f<<2)&858993459,f=(f|f<<1)&1431655765,u|f<<1},a.deinterleave2=function(u,f){return u=u>>>f&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,f,c){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|=f<<1,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|c<<2},a.deinterleave3=function(u,f){return u=u>>>f&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var f=u|u-1;return f+1|(~f&-~f)-1>>>s(u)+1}},2014:function(i,a,o){"use strict";var s=o(3105),l=o(4623);function u(p){for(var S=0,y=Math.max,E=0,C=p.length;E>1,R=h(p[L],S);R<=0?(R===0&&(C=L),y=L+1):R>0&&(E=L-1)}return C}a.findCell=b;function g(p,S){for(var y=new Array(p.length),E=0,C=y.length;E=p.length||h(p[G],L)!==0););}return y}a.incidence=g;function _(p,S){if(!S)return g(m(w(p,0)),p,0);for(var y=new Array(S),E=0;E>>D&1&&P.push(C[D]);S.push(P)}return v(S)}a.explode=T;function w(p,S){if(S<0)return[];for(var y=[],E=(1<>1:(O>>1)-1}function E(O){for(var Z=S(O);;){var K=Z,$=2*O+1,oe=2*(O+1),te=O;if($0;){var K=y(O);if(K>=0){var $=S(K);if(Z<$){p(O,K),O=K;continue}}return O}}function L(){if(N>0){var O=P[0];return p(0,N-1),N-=1,E(0),O}return-1}function R(O,Z){var K=P[O];return _[K]===Z?O:(_[K]=-1/0,C(O),L(),_[K]=Z,N+=1,C(N-1))}function I(O){if(!T[O]){T[O]=!0;var Z=b[O],K=g[O];b[K]>=0&&(b[K]=Z),g[Z]>=0&&(g[Z]=K),D[Z]>=0&&R(D[Z],A(Z)),D[K]>=0&&R(D[K],A(K))}}for(var P=[],D=new Array(v),w=0;w>1;w>=0;--w)E(w);for(;;){var U=L();if(U<0||_[U]>d)break;I(U)}for(var G=[],w=0;w=0&&K>=0&&Z!==K){var $=D[Z],oe=D[K];$!==oe&&j.push([$,oe])}}),l.unique(l.normalize(j)),{positions:G,edges:j}}},1303:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(f,c){var h,d;if(c[0][0]c[1][0])h=c[1],d=c[0];else{var v=Math.min(f[0][1],f[1][1]),m=Math.max(f[0][1],f[1][1]),b=Math.min(c[0][1],c[1][1]),g=Math.max(c[0][1],c[1][1]);return mg?v-g:m-g}var _,T;f[0][1]c[1][0])h=c[1],d=c[0];else return l(c,f);var v,m;if(f[0][0]f[1][0])v=f[1],m=f[0];else return-l(f,c);var b=s(h,d,m),g=s(h,d,v);if(b<0){if(g<=0)return b}else if(b>0){if(g>=0)return b}else if(g)return g;if(b=s(m,v,d),g=s(m,v,h),b<0){if(g<=0)return b}else if(b>0){if(g>=0)return b}else if(g)return g;return d[0]-m[0]}},4209:function(i,a,o){"use strict";i.exports=g;var s=o(2478),l=o(3840),u=o(3250),f=o(1303);function c(_,T,w){this.slabs=_,this.coordinates=T,this.horizontal=w}var h=c.prototype;function d(_,T){return _.y-T}function v(_,T){for(var w=null;_;){var k=_.key,x,M;k[0][0]0)if(T[0]!==k[1][0])w=_,_=_.right;else{var p=v(_.right,T);if(p)return p;_=_.left}else{if(T[0]!==k[1][0])return _;var p=v(_.right,T);if(p)return p;_=_.left}}return w}h.castUp=function(_){var T=s.le(this.coordinates,_[0]);if(T<0)return-1;var w=this.slabs[T],k=v(this.slabs[T],_),x=-1;if(k&&(x=k.value),this.coordinates[T]===_[0]){var M=null;if(k&&(M=k.key),T>0){var A=v(this.slabs[T-1],_);A&&(M?f(A.key,M)>0&&(M=A.key,x=A.value):(x=A.value,M=A.key))}var p=this.horizontal[T];if(p.length>0){var S=s.ge(p,_[1],d);if(S=p.length)return x;y=p[S]}}if(y.start)if(M){var E=u(M[0],M[1],[_[0],y.y]);M[0][0]>M[1][0]&&(E=-E),E>0&&(x=y.index)}else x=y.index;else y.y!==_[1]&&(x=y.index)}}}return x};function m(_,T,w,k){this.y=_,this.index=T,this.start=w,this.closed=k}function b(_,T,w,k){this.x=_,this.segment=T,this.create=w,this.index=k}function g(_){for(var T=_.length,w=2*T,k=new Array(w),x=0;x1&&(T=1);for(var w=1-T,k=v.length,x=new Array(k),M=0;M0||_>0&&x<0){var M=f(T,x,w,_);b.push(M),g.push(M.slice())}x<0?g.push(w.slice()):x>0?b.push(w.slice()):(b.push(w.slice()),g.push(w.slice())),_=x}return{positive:b,negative:g}}function h(v,m){for(var b=[],g=u(v[v.length-1],m),_=v[v.length-1],T=v[0],w=0;w0||g>0&&k<0)&&b.push(f(_,k,T,g)),k>=0&&b.push(T.slice()),g=k}return b}function d(v,m){for(var b=[],g=u(v[v.length-1],m),_=v[v.length-1],T=v[0],w=0;w0||g>0&&k<0)&&b.push(f(_,k,T,g)),k<=0&&b.push(T.slice()),g=k}return b}},3387:function(i,a,o){var s;(function(){"use strict";var l={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function u(v){return c(d(v),arguments)}function f(v,m){return u.apply(null,[v].concat(m||[]))}function c(v,m){var b=1,g=v.length,_,T="",w,k,x,M,A,p,S,y;for(w=0;w=0),x.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,x.width?parseInt(x.width):0);break;case"e":_=x.precision?parseFloat(_).toExponential(x.precision):parseFloat(_).toExponential();break;case"f":_=x.precision?parseFloat(_).toFixed(x.precision):parseFloat(_);break;case"g":_=x.precision?String(Number(_.toPrecision(x.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=x.precision?_.substring(0,x.precision):_;break;case"t":_=String(!!_),_=x.precision?_.substring(0,x.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=x.precision?_.substring(0,x.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=x.precision?_.substring(0,x.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}l.json.test(x.type)?T+=_:(l.number.test(x.type)&&(!S||x.sign)?(y=S?"+":"-",_=_.toString().replace(l.sign,"")):y="",A=x.pad_char?x.pad_char==="0"?"0":x.pad_char.charAt(1):" ",p=x.width-(y+_).length,M=x.width&&p>0?A.repeat(p):"",T+=x.align?y+_+M:A==="0"?y+M+_:M+y+_)}return T}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var m=v,b,g=[],_=0;m;){if((b=l.text.exec(m))!==null)g.push(b[0]);else if((b=l.modulo.exec(m))!==null)g.push("%");else if((b=l.placeholder.exec(m))!==null){if(b[2]){_|=1;var T=[],w=b[2],k=[];if((k=l.key.exec(w))!==null)for(T.push(k[1]);(w=w.substring(k[0].length))!=="";)if((k=l.key_access.exec(w))!==null)T.push(k[1]);else if((k=l.index_access.exec(w))!==null)T.push(k[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=T}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");g.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");m=m.substring(b[0].length)}return h[v]=g}a.sprintf=u,a.vsprintf=f,typeof window<"u"&&(window.sprintf=u,window.vsprintf=f,s=function(){return{sprintf:u,vsprintf:f}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3711:function(i,a,o){"use strict";i.exports=d;var s=o(2640),l=o(781),u={"2d":function(v,m,b){var g=v({order:m,scalarArguments:3,getters:b==="generic"?[0]:void 0,phase:function(T,w,k,x){return T>x|0},vertex:function(T,w,k,x,M,A,p,S,y,E,C,L,R){var I=(p<<0)+(S<<1)+(y<<2)+(E<<3)|0;if(!(I===0||I===15))switch(I){case 0:C.push([T-.5,w-.5]);break;case 1:C.push([T-.25-.25*(x+k-2*R)/(k-x),w-.25-.25*(M+k-2*R)/(k-M)]);break;case 2:C.push([T-.75-.25*(-x-k+2*R)/(x-k),w-.25-.25*(A+x-2*R)/(x-A)]);break;case 3:C.push([T-.5,w-.5-.5*(M+k+A+x-4*R)/(k-M+x-A)]);break;case 4:C.push([T-.25-.25*(A+M-2*R)/(M-A),w-.75-.25*(-M-k+2*R)/(M-k)]);break;case 5:C.push([T-.5-.5*(x+k+A+M-4*R)/(k-x+M-A),w-.5]);break;case 6:C.push([T-.5-.25*(-x-k+A+M)/(x-k+M-A),w-.5-.25*(-M-k+A+x)/(M-k+x-A)]);break;case 7:C.push([T-.75-.25*(A+M-2*R)/(M-A),w-.75-.25*(A+x-2*R)/(x-A)]);break;case 8:C.push([T-.75-.25*(-A-M+2*R)/(A-M),w-.75-.25*(-A-x+2*R)/(A-x)]);break;case 9:C.push([T-.5-.25*(x+k+-A-M)/(k-x+A-M),w-.5-.25*(M+k+-A-x)/(k-M+A-x)]);break;case 10:C.push([T-.5-.5*(-x-k+-A-M+4*R)/(x-k+A-M),w-.5]);break;case 11:C.push([T-.25-.25*(-A-M+2*R)/(A-M),w-.75-.25*(M+k-2*R)/(k-M)]);break;case 12:C.push([T-.5,w-.5-.5*(-M-k+-A-x+4*R)/(M-k+A-x)]);break;case 13:C.push([T-.75-.25*(x+k-2*R)/(k-x),w-.25-.25*(-A-x+2*R)/(A-x)]);break;case 14:C.push([T-.25-.25*(-x-k+2*R)/(x-k),w-.25-.25*(-M-k+2*R)/(M-k)]);break;case 15:C.push([T-.5,w-.5]);break}},cell:function(T,w,k,x,M,A,p,S,y){M?S.push([T,w]):S.push([w,T])}});return function(_,T){var w=[],k=[];return g(_,w,k,T),{positions:w,cells:k}}}};function f(v,m){var b=v.length+"d",g=u[b];if(g)return g(s,v,m)}function c(v,m){for(var b=l(v,m),g=b.length,_=new Array(g),T=new Array(g),w=0;w0&&(p+=.02);for(var y=new Float32Array(A),E=0,C=-.5*p,S=0;SMath.max(x,M)?A[2]=1:x>Math.max(k,M)?A[0]=1:A[1]=1;for(var p=0,S=0,y=0;y<3;++y)p+=w[y]*w[y],S+=A[y]*w[y];for(var y=0;y<3;++y)A[y]-=S/p*w[y];return c(A,A),A}function b(w,k,x,M,A,p,S,y){this.center=s(x),this.up=s(M),this.right=s(A),this.radius=s([p]),this.angle=s([S,y]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(w,k),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 E=0;E<16;++E)this.computedMatrix[E]=.5;this.recalcMatrix(0)}var g=b.prototype;g.setDistanceLimits=function(w,k){w>0?w=Math.log(w):w=-1/0,k>0?k=Math.log(k):k=1/0,k=Math.max(k,w),this.radius.bounds[0][0]=w,this.radius.bounds[1][0]=k},g.getDistanceLimits=function(w){var k=this.radius.bounds[0];return w?(w[0]=Math.exp(k[0][0]),w[1]=Math.exp(k[1][0]),w):[Math.exp(k[0][0]),Math.exp(k[1][0])]},g.recalcMatrix=function(w){this.center.curve(w),this.up.curve(w),this.right.curve(w),this.radius.curve(w),this.angle.curve(w);for(var k=this.computedUp,x=this.computedRight,M=0,A=0,p=0;p<3;++p)A+=k[p]*x[p],M+=k[p]*k[p];for(var S=Math.sqrt(M),y=0,p=0;p<3;++p)x[p]-=k[p]*A/M,y+=x[p]*x[p],k[p]/=S;for(var E=Math.sqrt(y),p=0;p<3;++p)x[p]/=E;var C=this.computedToward;f(C,k,x),c(C,C);for(var L=Math.exp(this.computedRadius[0]),R=this.computedAngle[0],I=this.computedAngle[1],P=Math.cos(R),D=Math.sin(R),q=Math.cos(I),N=Math.sin(I),U=this.computedCenter,G=P*q,ee=D*q,Q=N,j=-P*N,O=-D*N,Z=q,K=this.computedEye,$=this.computedMatrix,p=0;p<3;++p){var oe=G*x[p]+ee*C[p]+Q*k[p];$[4*p+1]=j*x[p]+O*C[p]+Z*k[p],$[4*p+2]=oe,$[4*p+3]=0}var te=$[1],V=$[5],ne=$[9],W=$[2],fe=$[6],ge=$[10],Ce=V*ge-ne*fe,Ne=ne*W-te*ge,pe=te*fe-V*W,me=d(Ce,Ne,pe);Ce/=me,Ne/=me,pe/=me,$[0]=Ce,$[4]=Ne,$[8]=pe;for(var p=0;p<3;++p)K[p]=U[p]+$[2+4*p]*L;for(var p=0;p<3;++p){for(var y=0,Ie=0;Ie<3;++Ie)y+=$[p+4*Ie]*K[Ie];$[12+p]=-y}$[15]=1},g.getMatrix=function(w,k){this.recalcMatrix(w);var x=this.computedMatrix;if(k){for(var M=0;M<16;++M)k[M]=x[M];return k}return x};var _=[0,0,0];g.rotate=function(w,k,x,M){if(this.angle.move(w,k,x),M){this.recalcMatrix(w);var A=this.computedMatrix;_[0]=A[2],_[1]=A[6],_[2]=A[10];for(var p=this.computedUp,S=this.computedRight,y=this.computedToward,E=0;E<3;++E)A[4*E]=p[E],A[4*E+1]=S[E],A[4*E+2]=y[E];u(A,A,M,_);for(var E=0;E<3;++E)p[E]=A[4*E],S[E]=A[4*E+1];this.up.set(w,p[0],p[1],p[2]),this.right.set(w,S[0],S[1],S[2])}},g.pan=function(w,k,x,M){k=k||0,x=x||0,M=M||0,this.recalcMatrix(w);var A=this.computedMatrix,p=Math.exp(this.computedRadius[0]),S=A[1],y=A[5],E=A[9],C=d(S,y,E);S/=C,y/=C,E/=C;var L=A[0],R=A[4],I=A[8],P=L*S+R*y+I*E;L-=S*P,R-=y*P,I-=E*P;var D=d(L,R,I);L/=D,R/=D,I/=D;var q=L*k+S*x,N=R*k+y*x,U=I*k+E*x;this.center.move(w,q,N,U);var G=Math.exp(this.computedRadius[0]);G=Math.max(1e-4,G+M),this.radius.set(w,Math.log(G))},g.translate=function(w,k,x,M){this.center.move(w,k||0,x||0,M||0)},g.setMatrix=function(w,k,x,M){var A=1;typeof x=="number"&&(A=x|0),(A<0||A>3)&&(A=1);var p=(A+2)%3,S=(A+1)%3;k||(this.recalcMatrix(w),k=this.computedMatrix);var y=k[A],E=k[A+4],C=k[A+8];if(M){var R=Math.abs(y),I=Math.abs(E),P=Math.abs(C),D=Math.max(R,I,P);R===D?(y=y<0?-1:1,E=C=0):P===D?(C=C<0?-1:1,y=E=0):(E=E<0?-1:1,y=C=0)}else{var L=d(y,E,C);y/=L,E/=L,C/=L}var q=k[p],N=k[p+4],U=k[p+8],G=q*y+N*E+U*C;q-=y*G,N-=E*G,U-=C*G;var ee=d(q,N,U);q/=ee,N/=ee,U/=ee;var Q=E*U-C*N,j=C*q-y*U,O=y*N-E*q,Z=d(Q,j,O);Q/=Z,j/=Z,O/=Z,this.center.jump(w,rt,ce,Ee),this.radius.idle(w),this.up.jump(w,y,E,C),this.right.jump(w,q,N,U);var K,$;if(A===2){var oe=k[1],te=k[5],V=k[9],ne=oe*q+te*N+V*U,W=oe*Q+te*j+V*O;Ne<0?K=-Math.PI/2:K=Math.PI/2,$=Math.atan2(W,ne)}else{var fe=k[2],ge=k[6],Ce=k[10],Ne=fe*y+ge*E+Ce*C,pe=fe*q+ge*N+Ce*U,me=fe*Q+ge*j+Ce*O;K=Math.asin(v(Ne)),$=Math.atan2(me,pe)}this.angle.jump(w,$,K),this.recalcMatrix(w);var Ie=k[2],Re=k[6],ze=k[10],Be=this.computedMatrix;l(Be,k);var tt=Be[15],rt=Be[12]/tt,ce=Be[13]/tt,Ee=Be[14]/tt,Ae=Math.exp(this.computedRadius[0]);this.center.jump(w,rt-Ie*Ae,ce-Re*Ae,Ee-ze*Ae)},g.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},g.idle=function(w){this.center.idle(w),this.up.idle(w),this.right.idle(w),this.radius.idle(w),this.angle.idle(w)},g.flush=function(w){this.center.flush(w),this.up.flush(w),this.right.flush(w),this.radius.flush(w),this.angle.flush(w)},g.setDistance=function(w,k){k>0&&this.radius.set(w,Math.log(k))},g.lookAt=function(w,k,x,M){this.recalcMatrix(w),k=k||this.computedEye,x=x||this.computedCenter,M=M||this.computedUp;var A=M[0],p=M[1],S=M[2],y=d(A,p,S);if(!(y<1e-6)){A/=y,p/=y,S/=y;var E=k[0]-x[0],C=k[1]-x[1],L=k[2]-x[2],R=d(E,C,L);if(!(R<1e-6)){E/=R,C/=R,L/=R;var I=this.computedRight,P=I[0],D=I[1],q=I[2],N=A*P+p*D+S*q;P-=N*A,D-=N*p,q-=N*S;var U=d(P,D,q);if(!(U<.01&&(P=p*L-S*C,D=S*E-A*L,q=A*C-p*E,U=d(P,D,q),U<1e-6))){P/=U,D/=U,q/=U,this.up.set(w,A,p,S),this.right.set(w,P,D,q),this.center.set(w,x[0],x[1],x[2]),this.radius.set(w,Math.log(R));var G=p*q-S*D,ee=S*P-A*q,Q=A*D-p*P,j=d(G,ee,Q);G/=j,ee/=j,Q/=j;var O=A*E+p*C+S*L,Z=P*E+D*C+q*L,K=G*E+ee*C+Q*L,$=Math.asin(v(O)),oe=Math.atan2(K,Z),te=this.angle._state,V=te[te.length-1],ne=te[te.length-2];V=V%(2*Math.PI);var W=Math.abs(V+2*Math.PI-oe),fe=Math.abs(V-oe),ge=Math.abs(V-2*Math.PI-oe);W0?q.pop():new ArrayBuffer(P)}a.mallocArrayBuffer=_;function T(I){return new Uint8Array(_(I),0,I)}a.mallocUint8=T;function w(I){return new Uint16Array(_(2*I),0,I)}a.mallocUint16=w;function k(I){return new Uint32Array(_(4*I),0,I)}a.mallocUint32=k;function x(I){return new Int8Array(_(I),0,I)}a.mallocInt8=x;function M(I){return new Int16Array(_(2*I),0,I)}a.mallocInt16=M;function A(I){return new Int32Array(_(4*I),0,I)}a.mallocInt32=A;function p(I){return new Float32Array(_(4*I),0,I)}a.mallocFloat32=a.mallocFloat=p;function S(I){return new Float64Array(_(8*I),0,I)}a.mallocFloat64=a.mallocDouble=S;function y(I){return f?new Uint8ClampedArray(_(I),0,I):T(I)}a.mallocUint8Clamped=y;function E(I){return c?new BigUint64Array(_(8*I),0,I):null}a.mallocBigUint64=E;function C(I){return h?new BigInt64Array(_(8*I),0,I):null}a.mallocBigInt64=C;function L(I){return new DataView(_(I),0,I)}a.mallocDataView=L;function R(I){I=s.nextPow2(I);var P=s.log2(I),D=m[P];return D.length>0?D.pop():new u(I)}a.mallocBuffer=R,a.clearCache=function(){for(var P=0;P<32;++P)d.UINT8[P].length=0,d.UINT16[P].length=0,d.UINT32[P].length=0,d.INT8[P].length=0,d.INT16[P].length=0,d.INT32[P].length=0,d.FLOAT[P].length=0,d.DOUBLE[P].length=0,d.BIGUINT64[P].length=0,d.BIGINT64[P].length=0,d.UINT8C[P].length=0,v[P].length=0,m[P].length=0}},1755:function(i){"use strict";i.exports=a;function a(s){this.roots=new Array(s),this.ranks=new Array(s);for(var l=0;l",q="",N=D.length,U=q.length,G=R[0]===_||R[0]===k,ee=0,Q=-U;ee>-1&&(ee=I.indexOf(D,ee),!(ee===-1||(Q=I.indexOf(q,ee+N),Q===-1)||Q<=ee));){for(var j=ee;j=Q)P[j]=null,I=I.substr(0,j)+" "+I.substr(j+1);else if(P[j]!==null){var O=P[j].indexOf(R[0]);O===-1?P[j]+=R:G&&(P[j]=P[j].substr(0,O+1)+(1+parseInt(P[j][O+1]))+P[j].substr(O+2))}var Z=ee+N,K=I.substr(Z,Q-Z),$=K.indexOf(D);$!==-1?ee=$:ee=Q+U}return P}function A(L,R,I){for(var P=R.textAlign||"start",D=R.textBaseline||"alphabetic",q=[1<<30,1<<30],N=[0,0],U=L.length,G=0;G/g,` +`):I=I.replace(/\/g," ");var N="",U=[];for(V=0;V-1?parseInt(ce[1+Pe]):0,ke=He>-1?parseInt(Ee[1+He]):0;Fe!==ke&&(Ae=Ae.replace(pe(),"?px "),fe*=Math.pow(.75,ke-Fe),Ae=Ae.replace("?px ",pe())),W+=.25*O*(ke-Fe)}if(q.superscripts===!0){var Ue=ce.indexOf(_),Ge=Ee.indexOf(_),lt=Ue>-1?parseInt(ce[1+Ue]):0,it=Ge>-1?parseInt(Ee[1+Ge]):0;lt!==it&&(Ae=Ae.replace(pe(),"?px "),fe*=Math.pow(.75,it-lt),Ae=Ae.replace("?px ",pe())),W-=.25*O*(it-lt)}if(q.bolds===!0){var wt=ce.indexOf(v)>-1,_t=Ee.indexOf(v)>-1;!wt&&_t&&(Tt?Ae=Ae.replace("italic ","italic bold "):Ae="bold "+Ae),wt&&!_t&&(Ae=Ae.replace("bold ",""))}if(q.italics===!0){var Tt=ce.indexOf(b)>-1,nt=Ee.indexOf(b)>-1;!Tt&&nt&&(Ae="italic "+Ae),Tt&&!nt&&(Ae=Ae.replace("italic ",""))}R.font=Ae}for(te=0;te0&&(D=P.size),P.lineSpacing&&P.lineSpacing>0&&(q=P.lineSpacing),P.styletags&&P.styletags.breaklines&&(N.breaklines=!!P.styletags.breaklines),P.styletags&&P.styletags.bolds&&(N.bolds=!!P.styletags.bolds),P.styletags&&P.styletags.italics&&(N.italics=!!P.styletags.italics),P.styletags&&P.styletags.subscripts&&(N.subscripts=!!P.styletags.subscripts),P.styletags&&P.styletags.superscripts&&(N.superscripts=!!P.styletags.superscripts)),I.font=[P.fontStyle,P.fontVariant,P.fontWeight,D+"px",P.font].filter(function(G){return G}).join(" "),I.textAlign="start",I.textBaseline="alphabetic",I.direction="ltr";var U=p(R,I,L,D,q,N);return E(U,P,D)}},1538:function(i){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function o(y){y.permitHostObjects___&&y.permitHostObjects___(o)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=o);var s=!1;if(typeof WeakMap=="function"){var l=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var u=new l,f=Object.freeze({});if(u.set(f,1),u.get(f)!==1)s=!0;else{i.exports=WeakMap;return}}}var c=Object.prototype.hasOwnProperty,h=Object.getOwnPropertyNames,d=Object.defineProperty,v=Object.isExtensible,m="weakmap:",b=m+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var g=new ArrayBuffer(25),_=new Uint8Array(g);crypto.getRandomValues(_),b=m+"rand:"+Array.prototype.map.call(_,function(y){return(y%36).toString(36)}).join("")+"___"}function T(y){return!(y.substr(0,m.length)==m&&y.substr(y.length-3)==="___")}if(d(Object,"getOwnPropertyNames",{value:function(E){return h(E).filter(T)}}),"getPropertyNames"in Object){var w=Object.getPropertyNames;d(Object,"getPropertyNames",{value:function(E){return w(E).filter(T)}})}function k(y){if(y!==Object(y))throw new TypeError("Not an object: "+y);var E=y[b];if(E&&E.key===y)return E;if(v(y)){E={key:y};try{return d(y,b,{value:E,writable:!1,enumerable:!1,configurable:!1}),E}catch{return}}}(function(){var y=Object.freeze;d(Object,"freeze",{value:function(R){return k(R),y(R)}});var E=Object.seal;d(Object,"seal",{value:function(R){return k(R),E(R)}});var C=Object.preventExtensions;d(Object,"preventExtensions",{value:function(R){return k(R),C(R)}})})();function x(y){return y.prototype=null,Object.freeze(y)}var M=!1;function A(){!M&&typeof console<"u"&&(M=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var p=0,S=function(){this instanceof S||A();var y=[],E=[],C=p++;function L(D,q){var N,U=k(D);return U?C in U?U[C]:q:(N=y.indexOf(D),N>=0?E[N]:q)}function R(D){var q=k(D);return q?C in q:y.indexOf(D)>=0}function I(D,q){var N,U=k(D);return U?U[C]=q:(N=y.indexOf(D),N>=0?E[N]=q:(N=y.length,E[N]=q,y[N]=D)),this}function P(D){var q=k(D),N,U;return q?C in q&&delete q[C]:(N=y.indexOf(D),N<0?!1:(U=y.length-1,y[N]=void 0,E[N]=E[U],y[N]=y[U],y.length=U,E.length=U,!0))}return Object.create(S.prototype,{get___:{value:x(L)},has___:{value:x(R)},set___:{value:x(I)},delete___:{value:x(P)}})};S.prototype=Object.create(Object.prototype,{get:{value:function(E,C){return this.get___(E,C)},writable:!0,configurable:!0},has:{value:function(E){return this.has___(E)},writable:!0,configurable:!0},set:{value:function(E,C){return this.set___(E,C)},writable:!0,configurable:!0},delete:{value:function(E){return this.delete___(E)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy<"u"&&(Proxy=void 0);function y(){this instanceof S||A();var E=new l,C=void 0,L=!1;function R(q,N){return C?E.has(q)?E.get(q):C.get___(q,N):E.get(q,N)}function I(q){return E.has(q)||(C?C.has___(q):!1)}var P;s?P=function(q,N){return E.set(q,N),E.has(q)||(C||(C=new S),C.set(q,N)),this}:P=function(q,N){if(L)try{E.set(q,N)}catch{C||(C=new S),C.set___(q,N)}else E.set(q,N);return this};function D(q){var N=!!E.delete(q);return C&&C.delete___(q)||N}return Object.create(S.prototype,{get___:{value:x(R)},has___:{value:x(I)},set___:{value:x(P)},delete___:{value:x(D)},permitHostObjects___:{value:x(function(q){if(q===o)L=!0;else throw new Error("bogus call to permitHostObjects___")})}})}y.prototype=S.prototype,i.exports=y,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),i.exports=S)})()},236:function(i,a,o){var s=o(8284);i.exports=l;function l(){var u={};return function(f){if((typeof f!="object"||f===null)&&typeof f!="function")throw new Error("Weakmap-shim: Key must be object");var c=f.valueOf(u);return c&&c.identity===u?c:s(f,u)}}},8284:function(i){i.exports=a;function a(o,s){var l={identity:s},u=o.valueOf;return Object.defineProperty(o,"valueOf",{value:function(f){return f!==s?u.apply(this,arguments):l},writable:!0}),l}},606:function(i,a,o){var s=o(236);i.exports=l;function l(){var u=s();return{get:function(f,c){var h=u(f);return h.hasOwnProperty("value")?h.value:c},set:function(f,c){return u(f).value=c,this},has:function(f){return"value"in u(f)},delete:function(f){return delete u(f).value}}}},3349:function(i){"use strict";function a(){return function(c,h,d,v,m,b){var g=c[0],_=d[0],T=[0],w=_;v|=0;var k=0,x=_;for(k=0;k=0!=A>=0&&m.push(T[0]+.5+.5*(M+A)/(M-A))}v+=x,++T[0]}}}function o(){return a()}var s=o;function l(c){var h={};return function(v,m,b){var g=v.dtype,_=v.order,T=[g,_.join()].join(),w=h[T];return w||(h[T]=w=c([g,_])),w(v.shape.slice(0),v.data,v.stride,v.offset|0,m,b)}}function u(c){return l(s.bind(void 0,c))}function f(c){return u({funcName:c.funcName})}i.exports=f({funcName:"zeroCrossings"})},781:function(i,a,o){"use strict";i.exports=l;var s=o(3349);function l(u,f){var c=[];return f=+f||0,s(u.hi(u.shape[0]-1),c,f),c}},7790:function(){}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);dxe.exports=n})()});var gxe=J((gOt,pxe)=>{"use strict";pxe.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var yxe=J((mOt,mxe)=>{"use strict";var Tgt=Object.prototype.toString;mxe.exports=function(e){var t;return Tgt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var bxe=J((yOt,xxe)=>{"use strict";xxe.exports=function(){for(var t=0;t{"use strict";var wxe=gxe(),Agt=yxe(),om=bxe();Txe.exports=Mgt;var _xe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function Mgt(e){var t,r=[],n=1,i;if(typeof e=="string")if(wxe[e])r=wxe[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var l=t[1],u=l==="rgb",a=l.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*,\s*/).map(function(d,v){if(/%$/.test(d))return v===o?parseFloat(d)/100:a==="rgb"?parseFloat(d)*255/100:parseFloat(d);if(a[v]==="h"){if(/deg$/.test(d))return parseFloat(d);if(_xe[d]!==void 0)return _xe[d]}return parseFloat(d)}),l===a&&r.push(1),n=u||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(c){return parseFloat(c)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else if(!isNaN(e))i="rgb",r=[e>>>16,(e&65280)>>>8,e&255];else if(Agt(e)){var f=om(e.r,e.red,e.R,null);f!==null?(i="rgb",r=[f,om(e.g,e.green,e.G),om(e.b,e.blue,e.B)]):(i="hsl",r=[om(e.h,e.hue,e.H),om(e.s,e.saturation,e.S),om(e.l,e.lightness,e.L,e.b,e.brightness)]),n=om(e.a,e.alpha,e.opacity,1),e.opacity!=null&&(n/=100)}else(Array.isArray(e)||global.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(e))&&(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1);return{space:i,values:r,alpha:n}}});var kxe=J((bOt,Mxe)=>{"use strict";Mxe.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var Cxe=J((wOt,Sxe)=>{"use strict";var kgt=kxe();Sxe.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l;if(r===0)return l=n*255,[l,l,l];n<.5?a=n*(1+r):a=n+r-n*r,i=2*n-a,s=[0,0,0];for(var u=0;u<3;u++)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,6*o<1?l=i+(a-i)*6*o:2*o<1?l=a:3*o<2?l=i+(a-i)*(2/3-o)*6:l=i,s[u]=l*255;return s}};kgt.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,l,u;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),u=(i+a)/2,a===i?l=0:u<=.5?l=o/(a+i):l=o/(2-a-i),[s,l*100,u*100]}});var i7=J((_Ot,Exe)=>{Exe.exports=Sgt;function Sgt(e,t,r){return tr?r:e:et?t:e}});var Dxe=J((TOt,Lxe)=>{"use strict";var Cgt=Axe(),Egt=Cxe(),g5=i7();Lxe.exports=function(t){var r,n,i,a=Cgt(t);return a.space?(r=Array(3),r[0]=g5(a.values[0],0,255),r[1]=g5(a.values[1],0,255),r[2]=g5(a.values[2],0,255),a.space[0]==="h"&&(r=Egt.rgb(r)),r.push(g5(a.alpha,0,1)),r):[]}});var Pxe=J((AOt,Rxe)=>{Rxe.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var a7=J((MOt,Ixe)=>{"use strict";var Lgt=Dxe(),m5=i7(),Dgt=Pxe();Ixe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=Dgt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=Lgt(t),t[0]/=255,t[1]/=255,t[2]/=255),Rgt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=m5(Math.floor(t[0]*255),0,255),i[1]=m5(Math.floor(t[1]*255),0,255),i[2]=m5(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:m5(Math.floor(t[3]*255),0,255)),i)};function Rgt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Ac=J((kOt,qxe)=>{"use strict";var Pgt=a7();function Igt(e){return e?Pgt(e):[0,0,0,1]}qxe.exports=Igt});var Z0=J((SOt,Hxe)=>{"use strict";var Bxe=dn(),qgt=ls(),y5=a7(),x5=Qa(),Fgt=Ho().defaultLine,Fxe=fl().isArrayOrTypedArray,o7=y5(Fgt),Uxe=1;function zxe(e,t){var r=e;return r[3]*=t,r}function Nxe(e){if(Bxe(e))return o7;var t=y5(e);return t.length?t:o7}function Oxe(e){return Bxe(e)?e:Uxe}function zgt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=Fxe(n),a=Fxe(t),o=x5.extractOpts(e),s=[],l,u,f,c,h;if(o.colorscale!==void 0?l=x5.makeColorScaleFuncFromTrace(e):l=Nxe,i?u=function(v,m){return v[m]===void 0?o7:y5(l(v[m]))}:u=Nxe,a?f=function(v,m){return v[m]===void 0?Uxe:Oxe(v[m])}:f=Oxe,i||a)for(var d=0;d{"use strict";jxe.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]}});var b5=J((EOt,Vxe)=>{"use strict";Vxe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var Gxe=J((LOt,Yxe)=>{"use strict";var Ogt=zr();function l7(e,t,r,n){if(!t||!t.visible)return null;for(var i=Ogt.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o0){var c=n.c2l(u);n._lowerLogErrorBound||(n._lowerLogErrorBound=c),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,c)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function Bgt(e){for(var t=0;t{"use strict";var Hgt=ao().gl_line3d,Wxe=ao().gl_scatter3d,jgt=ao().gl_error3d,Vgt=ao().gl_mesh3d,Ygt=ao().delaunay_triangulate,bd=gt(),Kxe=Ac(),w5=Z0().formatColor,Ggt=kL(),u7=s7(),Wgt=b5(),Xgt=nn(),Zgt=Qf().appendArrayPointValue,Jgt=Gxe();function Qxe(e,t){this.scene=e,this.uid=t,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}var c7=Qxe.prototype;c7.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(bd.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function $gt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s-1?-1:e.indexOf("right")>-1?1:0}function Zxe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function Qgt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i=0){var u=$gt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=Vgt(u),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};c7.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.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function nmt(e,t){var r=new Qxe(e,t.uid);return r.update(t),r}ebe.exports=nmt});var g7=J((ROt,ibe)=>{"use strict";var wd=ds(),imt=xa(),p7=Da(),h7=Ga().axisHoverFormat,amt=Jn().hovertemplateAttrs,omt=Jn().texttemplateAttrs,rbe=Qi(),smt=s7(),lmt=b5(),xh=cn().extendFlat,umt=La().overrideAll,nbe=Vb(),fmt=wd.line,sm=wd.marker,cmt=sm.line,hmt=xh({width:fmt.width,dash:{valType:"enumerated",values:nbe(smt),dflt:"solid",description:"Sets the dash style of the lines."}},p7("line"));function v7(e){return{show:{valType:"boolean",dflt:!1,description:["Sets whether or not projections are shown along the",e,"axis."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,description:"Sets the projection color."},scale:{valType:"number",min:0,max:10,dflt:2/3,description:["Sets the scale factor determining the size of the","projection marker points."].join(" ")}}}var d7=ibe.exports=umt({x:wd.x,y:wd.y,z:{valType:"data_array",description:"Sets the z coordinates."},text:xh({},wd.text,{description:["Sets text elements associated with each (x,y,z) triplet.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (x,y,z) coordinates.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")}),texttemplate:omt({},{}),hovertext:xh({},wd.hovertext,{description:["Sets text elements associated with each (x,y,z) triplet.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (x,y,z) coordinates.","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")}),hovertemplate:amt(),xhoverformat:h7("x"),yhoverformat:h7("y"),zhoverformat:h7("z"),mode:xh({},wd.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1,description:["If *-1*, the scatter points are not fill with a surface","If *0*, *1*, *2*, the scatter points are filled with","a Delaunay surface about the x, y, z respectively."].join(" ")},surfacecolor:{valType:"color",description:"Sets the surface fill color."},projection:{x:v7("x"),y:v7("y"),z:v7("z")},connectgaps:wd.connectgaps,line:hmt,marker:xh({symbol:{valType:"enumerated",values:nbe(lmt),dflt:"circle",arrayOk:!0,description:"Sets the marker symbol type."},size:xh({},sm.size,{dflt:8}),sizeref:sm.sizeref,sizemin:sm.sizemin,sizemode:sm.sizemode,opacity:xh({},sm.opacity,{arrayOk:!1,description:["Sets the marker opacity.","Note that the marker opacity for scatter3d traces","must be a scalar value for performance reasons.","To set a blending opacity value","(i.e. which is not transparent), set *marker.color*","to an rgba color and use its alpha channel."].join(" ")}),colorbar:sm.colorbar,line:xh({width:xh({},cmt.width,{arrayOk:!1})},p7("marker.line"))},p7("marker")),textposition:xh({},wd.textposition,{dflt:"top center"}),textfont:imt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"],description:"Sets the text font."}),opacity:rbe.opacity,hoverinfo:xh({},rbe.hoverinfo)},"calc","nested");d7.x.editType=d7.y.editType=d7.z.editType="calc+clearAxisTypes"});var sbe=J((POt,obe)=>{"use strict";var abe=zr(),vmt=gt(),m7=fs(),dmt=bg(),pmt=wg(),gmt=_g(),mmt=g7();obe.exports=function(t,r,n,i){function a(d,v){return vmt.coerce(t,r,mmt,d,v)}var o=ymt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),m7.hasMarkers(r)&&dmt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),m7.hasLines(r)&&(a("connectgaps"),pmt(t,r,n,i,a)),m7.hasText(r)&&(a("texttemplate"),gmt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,l=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||l);for(var u=["x","y","z"],f=0;f<3;++f){var c="projection."+u[f];a(c+".show")&&(a(c+".opacity"),a(c+".scale"))}var h=abe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||l||n,{axis:"z"}),h(t,r,s||l||n,{axis:"y",inherit:"z"}),h(t,r,s||l||n,{axis:"x",inherit:"z"})};function ymt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=abe.getComponentMethod("calendars","handleTraceDefaults");return l(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var y7=J((IOt,lbe)=>{"use strict";var xmt=nd(),bmt=Ag();lbe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return xmt(n,r),bmt(t,r),n}});var fbe=J((qOt,ube)=>{ube.exports=wmt;function wmt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document>"u"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o{var _mt=fbe();cbe.exports=function(t){return _mt("webgl",t)}});var b7=J((zOt,vbe)=>{"use strict";var hbe=qr(),Tmt=function(){};vbe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=Tmt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=hbe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=hbe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var gbe=J((NOt,pbe)=>{"use strict";var lm=Ac(),Amt=gt(),Mmt=["xaxis","yaxis","zaxis"];function dbe(){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.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],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.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],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=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var kmt=dbe.prototype;kmt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[Mmt[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?Amt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=lm(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=lm(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=lm(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=lm(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=lm(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=lm(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=lm(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function Smt(e,t){var r=new dbe;return r.merge(e,t),r}pbe.exports=Smt});var xbe=J((OOt,ybe)=>{"use strict";var Cmt=Ac(),Emt=["xaxis","yaxis","zaxis"];function mbe(){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]}var Lmt=mbe.prototype;Lmt.merge=function(e){for(var t=0;t<3;++t){var r=e[Emt[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=Cmt(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function Dmt(e){var t=new mbe;return t.merge(e),t}ybe.exports=Dmt});var _be=J((BOt,wbe)=>{"use strict";wbe.exports=Fmt;var bbe=nn(),Rmt=gt(),Pmt=["xaxis","yaxis","zaxis"],Imt=[0,0,0];function qmt(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a/g," "));i[a]=u,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){Imt[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var f=0;f<2;++f)t.bounds[f][a]=e.glplot.bounds[f][a]}e.contourLevels=qmt(i)}});var Ebe=J((UOt,Cbe)=>{"use strict";var Mbe=ao().gl_plot3d,zmt=Mbe.createCamera,Tbe=Mbe.createScene,Nmt=x7(),Omt=d2(),A5=zr(),cu=gt(),T5=cu.preserveDrawingBuffer(),M5=nn(),bh=go(),Bmt=Ac(),Umt=b7(),Hmt=IR(),jmt=gbe(),Vmt=xbe(),Ymt=_be(),Gmt=ec().applyAutorangeOptions,__,_5,kbe=!1;function Sbe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=jmt(t,t[this.id]),this.spikeOptions=Vmt(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=A5.getComponentMethod("annotations3d","convert"),this.drawAnnotations=A5.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var wl=Sbe.prototype;wl.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:T5,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!_5&&(__=document.createElement("canvas"),_5=Nmt({canvas:__,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_5))throw new Error("error creating static canvas/context for image server");t.gl=_5,t.canvas=__}return t};var Abe=!0;wl.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=Tbe(t)}catch{if(e.staticMode||!Abe||T5)r=!1;else{cu.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{T5=t.glOptions.preserveDrawingBuffer=!0,e.glplot=Tbe(t)}catch{T5=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return Abe=!1,r};wl.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=zmt(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};wl.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return Umt(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){kbe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,l=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*l.x,y:s*l.y,z:s*l.z})}a(e)}},Omt?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};wl.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),Ymt(e),e.glplot.axes.update(e.axesOptions);for(var u=Object.keys(e.traces),f=null,c=e.glplot.selection,h=0;h")):r.type==="isosurface"||r.type==="volume"?(g.valueLabel=M5.hoverLabelText(e._mockAxis,e._mockAxis.d2l(c.traceCoordinate[3]),r.valuehoverformat),x.push("value: "+g.valueLabel),c.textLabel&&x.push(c.textLabel),k=x.join("
")):k=c.textLabel;var M={x:c.traceCoordinate[0],y:c.traceCoordinate[1],z:c.traceCoordinate[2],data:m._input,fullData:m,curveNumber:m.index,pointNumber:b};bh.appendArrayPointValue(M,m,b),r._module.eventData&&(M=m._module.eventData(M,c,m,{},b));var A={points:[M]};if(e.fullSceneLayout.hovermode){var p=[];bh.loneHover({trace:m,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:g.xLabel,yLabel:g.yLabel,zLabel:g.zLabel,text:k,name:f.name,color:bh.castHoverOption(m,b,"bgcolor")||f.color,borderColor:bh.castHoverOption(m,b,"bordercolor"),fontFamily:bh.castHoverOption(m,b,"font.family"),fontSize:bh.castHoverOption(m,b,"font.size"),fontColor:bh.castHoverOption(m,b,"font.color"),nameLength:bh.castHoverOption(m,b,"namelength"),textAlign:bh.castHoverOption(m,b,"align"),hovertemplate:cu.castOption(m,b,"hovertemplate"),hovertemplateLabels:cu.extendFlat({},M,g),eventData:[M]},{container:n,gd:t,inOut_bbox:p}),M.bbox=p[0]}c.distance<5&&(c.buttons||kbe)?t.emit("plotly_click",A):t.emit("plotly_hover",A),this.oldEventData=A}else bh.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};wl.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){cu.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var T_=["xaxis","yaxis","zaxis"];function Wmt(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=T_[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],f=t["_"+o+"length"];if(!cu.isArrayOrTypedArray(l))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],f-1);else for(var c,h=0;h<(f||l.length);h++)if(cu.isArrayOrTypedArray(l[h]))for(var d=0;dm[1][o])m[0][o]=-1,m[1][o]=1;else{var y=m[1][o]-m[0][o];m[0][o]-=y/32,m[1][o]+=y/32}if(_=[m[0][o],m[1][o]],_=Gmt(_,l),m[0][o]=_[0],m[1][o]=_[1],l.isReversed()){var E=m[0][o];m[0][o]=m[1][o],m[1][o]=E}}else _=l.range,m[0][o]=l.r2l(_[0]),m[1][o]=l.r2l(_[1]);m[0][o]===m[1][o]&&(m[0][o]-=1,m[1][o]+=1),b[o]=m[1][o]-m[0][o],l.range=[m[0][o],m[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*d[o],max:l.range[1]*d[o]})}var C,L=f.aspectmode;if(L==="cube")C=[1,1,1];else if(L==="manual"){var R=f.aspectratio;C=[R.x,R.y,R.z]}else if(L==="auto"||L==="data"){var I=[1,1,1];for(o=0;o<3;++o){l=f[T_[o]],u=l.type;var P=g[u];I[o]=Math.pow(P.acc,1/P.count)/d[o]}L==="data"||Math.max.apply(null,I)/Math.min.apply(null,I)<=4?C=I:C=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");f.aspectratio.x=c.aspectratio.x=C[0],f.aspectratio.y=c.aspectratio.y=C[1],f.aspectratio.z=c.aspectratio.z=C[2],n.glplot.setAspectratio(f.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:f.aspectratio.x,y:f.aspectratio.y,z:f.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=f.aspectmode);var D=f.domain||null,q=t._size||null;if(D&&q){var N=n.container.style;N.position="absolute",N.left=q.l+D.x[0]*q.w+"px",N.top=q.t+(1-D.y[1])*q.h+"px",N.width=q.w*(D.x[1]-D.x[0])+"px",N.height=q.h*(D.y[1]-D.y[0])+"px"}n.glplot.redraw()};wl.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function Zmt(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function Jmt(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}wl.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),Jmt(e.camera)};wl.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,Zmt(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};wl.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=cu.nestedProperty(e,t.id+".camera"),i=n.get();function a(u,f,c,h){var d=["up","center","eye"],v=["x","y","z"];return f[d[c]]&&u[d[c]][v[h]]===f[d[c]][v[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var l=0;l<3;l++)if(!a(r,i,s,l)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};wl.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=cu.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};wl.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,l,u=t.isCameraChanged(e),f=t.isAspectChanged(e),c=u||f;if(c){var h={};if(u&&(n=t.getCamera(),i=cu.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),f&&(o=t.glplot.getAspectratio(),s=cu.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),A5.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=cu.nestedProperty(r,t.id+".camera");d.set(n)}if(f){s.set(o);var v=cu.nestedProperty(r,t.id+".aspectratio");v.set(o),t.glplot.redraw()}}return c};wl.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var f=r.id+".camera.up",c={x:0,y:0,z:1},h={};h[f]=c;var d=i.layout;A5.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=c,cu.nestedProperty(d,f).set(c)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function $mt(e,t,r){for(var n=0,i=r-1;n0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}wl.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(__),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),$mt(a,n,i),Kmt(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),l=s.createImageData(n,i);l.data.set(a),s.putImageData(l,0,0);var u;switch(e){case"jpeg":u=o.toDataURL("image/jpeg");break;case"webp":u=o.toDataURL("image/webp");break;default:u=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(__),u};wl.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[T_[t]];M5.setConvert(r,e.fullLayout),r.setScale=cu.noop}};wl.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},M5.setConvert(e._mockAxis,r)};Cbe.exports=Sbe});var Dbe=J((HOt,Lbe)=>{"use strict";Lbe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes",description:["Sets a reference between this trace's 3D coordinate system and","a 3D scene.","If *scene* (the default value), the (x,y,z) coordinates refer to","`layout.scene`.","If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`,","and so on."].join(" ")}}});var _7=J((jOt,Rbe)=>{"use strict";var Qmt=qr(),Dn=hl(),w7=cn().extendFlat,e1t=La().overrideAll;Rbe.exports=e1t({visible:Dn.visible,showspikes:{valType:"boolean",dflt:!0,description:["Sets whether or not spikes starting from","data points to this axis' wall are shown on hover."].join(" ")},spikesides:{valType:"boolean",dflt:!0,description:["Sets whether or not spikes extending from the","projection data points to this axis' wall boundaries","are shown on hover."].join(" ")},spikethickness:{valType:"number",min:0,dflt:2,description:"Sets the thickness (in px) of the spikes."},spikecolor:{valType:"color",dflt:Qmt.defaultLine,description:"Sets the color of the spikes."},showbackground:{valType:"boolean",dflt:!1,description:["Sets whether or not this axis' wall","has a background color."].join(" ")},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)",description:"Sets the background color of this axis' wall."},showaxeslabels:{valType:"boolean",dflt:!0,description:"Sets whether or not this axis is labeled"},color:Dn.color,categoryorder:Dn.categoryorder,categoryarray:Dn.categoryarray,title:{text:Dn.title.text,font:Dn.title.font},type:w7({},Dn.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Dn.autotypenumbers,autorange:Dn.autorange,autorangeoptions:{minallowed:Dn.autorangeoptions.minallowed,maxallowed:Dn.autorangeoptions.maxallowed,clipmin:Dn.autorangeoptions.clipmin,clipmax:Dn.autorangeoptions.clipmax,include:Dn.autorangeoptions.include,editType:"plot"},rangemode:Dn.rangemode,minallowed:Dn.minallowed,maxallowed:Dn.maxallowed,range:w7({},Dn.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:Dn.minor.tickmode,nticks:Dn.nticks,tick0:Dn.tick0,dtick:Dn.dtick,tickvals:Dn.tickvals,ticktext:Dn.ticktext,ticks:Dn.ticks,mirror:Dn.mirror,ticklen:Dn.ticklen,tickwidth:Dn.tickwidth,tickcolor:Dn.tickcolor,showticklabels:Dn.showticklabels,labelalias:Dn.labelalias,tickfont:Dn.tickfont,tickangle:Dn.tickangle,tickprefix:Dn.tickprefix,showtickprefix:Dn.showtickprefix,ticksuffix:Dn.ticksuffix,showticksuffix:Dn.showticksuffix,showexponent:Dn.showexponent,exponentformat:Dn.exponentformat,minexponent:Dn.minexponent,separatethousands:Dn.separatethousands,tickformat:Dn.tickformat,tickformatstops:Dn.tickformatstops,hoverformat:Dn.hoverformat,showline:Dn.showline,linecolor:Dn.linecolor,linewidth:Dn.linewidth,showgrid:Dn.showgrid,gridcolor:w7({},Dn.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:Dn.gridwidth,zeroline:Dn.zeroline,zerolinecolor:Dn.zerolinecolor,zerolinewidth:Dn.zerolinewidth,_deprecated:{title:Dn._deprecated.title,titlefont:Dn._deprecated.titlefont}},"plot","from-root")});var k7=J((VOt,Pbe)=>{"use strict";var T7=_7(),t1t=Wa().attributes,A7=cn().extendFlat,r1t=gt().counterRegex;function M7(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}Pbe.exports={_arrayAttrRegexps:[r1t("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A7(M7(0,0,1),{description:["Sets the (x,y,z) components of the 'up' camera vector.","This vector determines the up direction of this scene","with respect to the page.","The default is *{x: 0, y: 0, z: 1}* which means that","the z axis points up."].join(" ")}),center:A7(M7(0,0,0),{description:["Sets the (x,y,z) components of the 'center' camera vector","This vector determines the translation (x,y,z) space","about the center of this scene.","By default, there is no such translation."].join(" ")}),eye:A7(M7(1.25,1.25,1.25),{description:["Sets the (x,y,z) components of the 'eye' camera vector.","This vector determines the view point about the origin","of this scene."].join(" ")}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc",description:["Sets the projection type. The projection type could be","either *perspective* or *orthographic*. The default is","*perspective*."].join(" ")},editType:"calc"},editType:"camera"},domain:t1t({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0},description:["If *cube*, this scene's axes are drawn as a cube,","regardless of the axes' ranges.","If *data*, this scene's axes are drawn","in proportion with the axes' ranges.","If *manual*, this scene's axes are drawn","in proportion with the input of *aspectratio*","(the default behavior if *aspectratio* is provided).","If *auto*, this scene's axes are drawn","using the results of *data* except when one axis","is more than four times the size of the two others,","where in that case the results of *cube* are used."].join(" ")},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"},description:["Sets this scene's axis aspectratio."].join(" ")},xaxis:T7,yaxis:T7,zaxis:T7,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot",description:["Determines the mode of drag interactions for this scene."].join(" ")},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar",description:["Determines the mode of hover interactions for this scene."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in camera attributes.","Defaults to `layout.uirevision`."].join(" ")},editType:"plot",_deprecated:{cameraposition:{valType:"info_array",editType:"camera",description:"Obsolete. Use `camera` instead."}}}});var zbe=J((YOt,Fbe)=>{"use strict";var n1t=ls().mix,Ibe=gt(),i1t=ki(),a1t=_7(),o1t=yR(),s1t=vw(),qbe=["xaxis","yaxis","zaxis"],l1t=100*(204-68)/(255-68);Fbe.exports=function(t,r,n){var i,a;function o(u,f){return Ibe.coerce(i,a,a1t,u,f)}for(var s=0;s{"use strict";var u1t=gt(),f1t=qr(),c1t=zr(),h1t=Kw(),v1t=zbe(),Nbe=k7(),d1t=Nu().getSubplotData,Obe="gl3d";Bbe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=u1t.validate(t[o],Nbe[o]);if(s)return t[o]}}h1t(t,r,n,{type:Obe,attributes:Nbe,handleDefaults:p1t,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function p1t(e,t,r,n){for(var i=r("bgcolor"),a=f1t.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var J0=J(hu=>{"use strict";var g1t=La().overrideAll,m1t=Uv(),y1t=Ebe(),x1t=Nu().getSubplotData,b1t=gt(),w1t=Gh(),xx="gl3d",S7="scene";hu.name=xx;hu.attr=S7;hu.idRoot=S7;hu.idRegex=hu.attrRegex=b1t.counterRegex("scene");hu.attributes=Dbe();hu.layoutAttributes=k7();hu.baseLayoutAttrOverrides=g1t({hoverlabel:m1t.hoverlabel},"plot","nested");hu.supplyLayoutDefaults=Ube();hu.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[xx],a=0;a{"use strict";Hbe.exports={plot:tbe(),attributes:g7(),markerSymbols:b5(),supplyDefaults:sbe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:y7(),moduleType:"trace",name:"scatter3d",basePlotModule:J0(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{hrName:"scatter_3d",description:["The data visualized as scatter point or lines in 3D dimension","is set in `x`, `y`, `z`.","Text (appearing either on the chart or on hover only) is via `text`.","Bubble charts are achieved by setting `marker.size` and/or `marker.color`","Projections are achieved via `projection`.","Surface fills are achieved via `surfaceaxis`."].join(" ")}}});var Ybe=J((ZOt,Vbe)=>{"use strict";Vbe.exports=jbe()});var A_=J((JOt,Xbe)=>{"use strict";var Gbe=qr(),k5=Da(),C7=Ga().axisHoverFormat,_1t=Jn().hovertemplateAttrs,Wbe=Qi(),bx=cn().extendFlat,T1t=La().overrideAll;function E7(e){return{valType:"boolean",dflt:!1,description:["Determines whether or not these contour lines are projected","on the",e,"plane.","If `highlight` is set to *true* (the default), the projected","lines are shown on hover.","If `show` is set to *true*, the projected lines are shown","in permanence."].join(" ")}}function L7(e){return{show:{valType:"boolean",dflt:!1,description:["Determines whether or not contour lines about the",e,"dimension are drawn."].join(" ")},start:{valType:"number",dflt:null,editType:"plot",description:["Sets the starting contour level value.","Must be less than `contours.end`"].join(" ")},end:{valType:"number",dflt:null,editType:"plot",description:["Sets the end contour level value.","Must be more than `contours.start`"].join(" ")},size:{valType:"number",dflt:null,min:0,editType:"plot",description:["Sets the step between each contour level.","Must be positive."].join(" ")},project:{x:E7("x"),y:E7("y"),z:E7("z")},color:{valType:"color",dflt:Gbe.defaultLine,description:"Sets the color of the contour lines."},usecolormap:{valType:"boolean",dflt:!1,description:["An alternate to *color*.","Determines whether or not the contour lines are colored using","the trace *colorscale*."].join(" ")},width:{valType:"number",min:1,max:16,dflt:2,description:"Sets the width of the contour lines."},highlight:{valType:"boolean",dflt:!0,description:["Determines whether or not contour lines about the",e,"dimension are highlighted on hover."].join(" ")},highlightcolor:{valType:"color",dflt:Gbe.defaultLine,description:"Sets the color of the highlighted contour lines."},highlightwidth:{valType:"number",min:1,max:16,dflt:2,description:"Sets the width of the highlighted contour lines."}}}var S5=Xbe.exports=T1t(bx({z:{valType:"data_array",description:"Sets the z coordinates."},x:{valType:"data_array",description:"Sets the x coordinates."},y:{valType:"data_array",description:"Sets the y coordinates."},text:{valType:"string",dflt:"",arrayOk:!0,description:["Sets the text elements associated with each z value.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,description:"Same as `text`."},hovertemplate:_1t(),xhoverformat:C7("x"),yhoverformat:C7("y"),zhoverformat:C7("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not gaps","(i.e. {nan} or missing values)","in the `z` data are filled in."].join(" ")},surfacecolor:{valType:"data_array",description:["Sets the surface color values,","used for setting a color scale independent of `z`."].join(" ")}},k5("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:L7("x"),y:L7("y"),z:L7("z")},hidesurface:{valType:"boolean",dflt:!1,description:["Determines whether or not a surface is drawn.","For example, set `hidesurface` to *false*","`contours.x.show` to *true* and","`contours.y.show` to *true* to draw a wire frame plot."].join(" ")},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10,description:"Numeric vector, representing the X coordinate for each vertex."},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4,description:"Numeric vector, representing the Y coordinate for each vertex."},z:{valType:"number",min:-1e5,max:1e5,dflt:0,description:"Numeric vector, representing the Z coordinate for each vertex."}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8,description:"Ambient light increases overall color visibility but can wash out the image."},diffuse:{valType:"number",min:0,max:1,dflt:.8,description:"Represents the extent that incident rays are reflected in a range of angles."},specular:{valType:"number",min:0,max:2,dflt:.05,description:"Represents the level that incident rays are reflected in a single direction, causing shine."},roughness:{valType:"number",min:0,max:1,dflt:.5,description:"Alters specular reflection; the rougher the surface, the wider and less contrasty the shine."},fresnel:{valType:"number",min:0,max:5,dflt:.2,description:["Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective","when viewing it from the edge of the paper (almost 90 degrees), causing shine."].join(" ")}},opacity:{valType:"number",min:0,max:1,dflt:1,description:["Sets the opacity of the surface.","Please note that in the case of using high `opacity` values for example a value","greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an","overlay of multiple transparent surfaces may not perfectly be sorted in depth by the","webgl API. This behavior may be improved in the near future and is subject to change."].join(" ")},opacityscale:{valType:"any",editType:"calc",description:["Sets the opacityscale.","The opacityscale must be an array containing","arrays mapping a normalized value to an opacity value.","At minimum, a mapping for the lowest (0) and highest (1)","values are required. For example,","`[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have","higher opacity values and those in the middle would be more transparent","Alternatively, `opacityscale` may be a palette name string","of the following list: 'min', 'max', 'extremes' and 'uniform'.","The default is 'uniform'."].join(" ")},_deprecated:{zauto:bx({},k5.zauto,{description:"Obsolete. Use `cauto` instead."}),zmin:bx({},k5.zmin,{description:"Obsolete. Use `cmin` instead."}),zmax:bx({},k5.zmax,{description:"Obsolete. Use `cmax` instead."})},hoverinfo:bx({},Wbe.hoverinfo),showlegend:bx({},Wbe.showlegend,{dflt:!1})}),"calc","nested");S5.x.editType=S5.y.editType=S5.z.editType="calc+clearAxisTypes";S5.transforms=void 0});var P7=J(($Ot,$be)=>{"use strict";var A1t=zr(),Zbe=gt(),M1t=vl(),k1t=A_(),D7=.1;function S1t(e,t){for(var r=[],n=32,i=0;i{"use strict";var Kbe=Uu();Qbe.exports=function(t,r){r.surfacecolor?Kbe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):Kbe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var o2e=J((QOt,a2e)=>{"use strict";var L1t=ao().gl_surface3d,wx=ao().ndarray,D1t=ao().ndarray_linear_interpolate.d2,R1t=nS(),P1t=iS(),M_=gt().isArrayOrTypedArray,I1t=Z0().parseColorScale,t2e=Ac(),q1t=Qa().extractOpts;function n2e(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var wh=n2e.prototype;wh.getXat=function(e,t,r,n){var i=M_(this.data.x)?M_(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};wh.getYat=function(e,t,r,n){var i=M_(this.data.y)?M_(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};wh.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};wh.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return M_(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function F1t(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var _x=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function z1t(e,t){if(e0){r=_x[n];break}return r}function O1t(e,t){if(!(e<1||t<1)){for(var r=I7(e),n=I7(t),i=1,a=0;a<_x.length;a++)i*=Math.pow(_x[a],Math.max(r[a],n[a]));return i}}function B1t(e){if(e.length!==0){for(var t=1,r=0;rC5;)n--,n/=N1t(n),n++,n1?i:1};function U1t(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function H1t(e,t,r){return j1t(e,t,U1t,r),e}function j1t(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];ih&&(this.minValues[u]=h),this.maxValues[u]{"use strict";s2e.exports={attributes:A_(),supplyDefaults:P7().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:e2e(),plot:o2e(),moduleType:"trace",name:"surface",basePlotModule:J0(),categories:["gl3d","2dMap","showLegend"],meta:{description:["The data the describes the coordinates of the surface is set in `z`.","Data in `z` should be a {2D array}.","Coordinates in `x` and `y` can either be 1D {arrays}","or {2D arrays} (e.g. to graph parametric surfaces).","If not provided in `x` and `y`, the x and y coordinates are assumed","to be linear starting at 0 with a unit step.","The color scale corresponds to the `z` values by default.","For custom color scales, use `surfacecolor` which should be a {2D array},","where its bounds can be controlled using `cmin` and `cmax`."].join(" ")}}});var f2e=J((tBt,u2e)=>{"use strict";u2e.exports=l2e()});var Tx=J((rBt,h2e)=>{"use strict";var G1t=Da(),q7=Ga().axisHoverFormat,W1t=Jn().hovertemplateAttrs,$0=A_(),c2e=Qi(),K0=cn().extendFlat;h2e.exports=K0({x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the X coordinates of the vertices. The nth element of vectors `x`, `y` and `z`","jointly represent the X, Y and Z coordinates of the nth vertex."].join(" ")},y:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the Y coordinates of the vertices. The nth element of vectors `x`, `y` and `z`","jointly represent the X, Y and Z coordinates of the nth vertex."].join(" ")},z:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the Z coordinates of the vertices. The nth element of vectors `x`, `y` and `z`","jointly represent the X, Y and Z coordinates of the nth vertex."].join(" ")},i:{valType:"data_array",editType:"calc",description:["A vector of vertex indices, i.e. integer values between 0 and the length of the vertex","vectors, representing the *first* vertex of a triangle. For example, `{i[m], j[m], k[m]}`","together represent face m (triangle m) in the mesh, where `i[m] = n` points to the triplet","`{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `i` represents a","point in space, which is the first vertex of a triangle."].join(" ")},j:{valType:"data_array",editType:"calc",description:["A vector of vertex indices, i.e. integer values between 0 and the length of the vertex","vectors, representing the *second* vertex of a triangle. For example, `{i[m], j[m], k[m]}` ","together represent face m (triangle m) in the mesh, where `j[m] = n` points to the triplet","`{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `j` represents a","point in space, which is the second vertex of a triangle."].join(" ")},k:{valType:"data_array",editType:"calc",description:["A vector of vertex indices, i.e. integer values between 0 and the length of the vertex","vectors, representing the *third* vertex of a triangle. For example, `{i[m], j[m], k[m]}`","together represent face m (triangle m) in the mesh, where `k[m] = n` points to the triplet ","`{x[n], y[n], z[n]}` in the vertex arrays. Therefore, each element in `k` represents a","point in space, which is the third vertex of a triangle."].join(" ")},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:["Sets the text elements associated with the vertices.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:"Same as `text`."},hovertemplate:W1t({editType:"calc"}),xhoverformat:q7("x"),yhoverformat:q7("y"),zhoverformat:q7("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc",description:["Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the","Delaunay triangulation.","It has an effect if `i`, `j`, `k` are not provided and `alphahull` is set to indicate","Delaunay triangulation."].join(" ")},alphahull:{valType:"number",dflt:-1,editType:"calc",description:["Determines how the mesh surface triangles are derived from the set of","vertices (points) represented by the `x`, `y` and `z` arrays, if","the `i`, `j`, `k` arrays are not supplied.","For general use of `mesh3d` it is preferred that `i`, `j`, `k` are","supplied.","If *-1*, Delaunay triangulation is used, which is mainly suitable if the","mesh is a single, more or less layer surface that is perpendicular to `delaunayaxis`.","In case the `delaunayaxis` intersects the mesh surface at more than one point","it will result triangles that are very long in the dimension of `delaunayaxis`.","If *>0*, the alpha-shape algorithm is used. In this case, the positive `alphahull` value","signals the use of the alpha-shape algorithm, _and_ its value","acts as the parameter for the mesh fitting.","If *0*, the convex-hull algorithm is used. It is suitable for convex bodies","or if the intention is to enclose the `x`, `y` and `z` point set into a convex","hull."].join(" ")},intensity:{valType:"data_array",editType:"calc",description:["Sets the intensity values for vertices or cells","as defined by `intensitymode`.","It can be used for plotting fields on meshes."].join(" ")},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc",description:["Determines the source of `intensity` values."].join(" ")},color:{valType:"color",editType:"calc",description:"Sets the color of the whole mesh"},vertexcolor:{valType:"data_array",editType:"calc",description:["Sets the color of each vertex","Overrides *color*. While Red, green and blue colors","are in the range of 0 and 255; in the case of having","vertex color data in RGBA format, the alpha color","should be normalized to be between 0 and 1."].join(" ")},facecolor:{valType:"data_array",editType:"calc",description:["Sets the color of each face","Overrides *color* and *vertexcolor*."].join(" ")},transforms:void 0},G1t("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:$0.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not normal smoothing is applied to the meshes,","creating meshes with an angular, low-poly look via flat reflections."].join(" ")},contour:{show:K0({},$0.contours.x.show,{description:["Sets whether or not dynamic contours are shown on hover"].join(" ")}),color:$0.contours.x.color,width:$0.contours.x.width,editType:"calc"},lightposition:{x:K0({},$0.lightposition.x,{dflt:1e5}),y:K0({},$0.lightposition.y,{dflt:1e5}),z:K0({},$0.lightposition.z,{dflt:0}),editType:"calc"},lighting:K0({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc",description:"Epsilon for vertex normals calculation avoids math issues arising from degenerate geometry."},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc",description:"Epsilon for face normals calculation avoids math issues arising from degenerate geometry."},editType:"calc"},$0.lighting),hoverinfo:K0({},c2e.hoverinfo,{editType:"calc"}),showlegend:K0({},c2e.showlegend,{dflt:!1})})});var L5=J((nBt,d2e)=>{"use strict";var X1t=Da(),E5=Ga().axisHoverFormat,Z1t=Jn().hovertemplateAttrs,k_=Tx(),v2e=Qi(),F7=cn().extendFlat,J1t=La().overrideAll;function z7(e){return{show:{valType:"boolean",dflt:!1,description:["Determines whether or not slice planes about the",e,"dimension are drawn."].join(" ")},locations:{valType:"data_array",dflt:[],description:["Specifies the location(s) of slices on the axis.","When not specified slices would be created for","all points of the axis",e,"except start and end."].join(" ")},fill:{valType:"number",min:0,max:1,dflt:1,description:["Sets the fill ratio of the `slices`. The default fill value of the","`slices` is 1 meaning that they are entirely shaded. On the other hand","Applying a `fill` ratio less than one would allow the creation of","openings parallel to the edges."].join(" ")}}}function N7(e){return{show:{valType:"boolean",dflt:!0,description:["Sets the fill ratio of the `slices`. The default fill value of the",e,"`slices` is 1 meaning that they are entirely shaded. On the other hand","Applying a `fill` ratio less than one would allow the creation of","openings parallel to the edges."].join(" ")},fill:{valType:"number",min:0,max:1,dflt:1,description:["Sets the fill ratio of the `caps`. The default fill value of the","`caps` is 1 meaning that they are entirely shaded. On the other hand","Applying a `fill` ratio less than one would allow the creation of","openings parallel to the edges."].join(" ")}}}var um=d2e.exports=J1t(F7({x:{valType:"data_array",description:["Sets the X coordinates of the vertices on X axis."].join(" ")},y:{valType:"data_array",description:["Sets the Y coordinates of the vertices on Y axis."].join(" ")},z:{valType:"data_array",description:["Sets the Z coordinates of the vertices on Z axis."].join(" ")},value:{valType:"data_array",description:["Sets the 4th dimension (value) of the vertices."].join(" ")},isomin:{valType:"number",description:["Sets the minimum boundary for iso-surface plot."].join(" ")},isomax:{valType:"number",description:["Sets the maximum boundary for iso-surface plot."].join(" ")},surface:{show:{valType:"boolean",dflt:!0,description:["Hides/displays surfaces between minimum and maximum iso-values."].join(" ")},count:{valType:"integer",dflt:2,min:1,description:["Sets the number of iso-surfaces between minimum and maximum iso-values.","By default this value is 2 meaning that only minimum and maximum surfaces","would be drawn."].join(" ")},fill:{valType:"number",min:0,max:1,dflt:1,description:["Sets the fill ratio of the iso-surface. The default fill value of the","surface is 1 meaning that they are entirely shaded. On the other hand","Applying a `fill` ratio less than one would allow the creation of","openings parallel to the edges."].join(" ")},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all",description:["Sets the surface pattern of the iso-surface 3-D sections. The default pattern of","the surface is `all` meaning that the rest of surface elements would be shaded.","The check options (either 1 or 2) could be used to draw half of the squares","on the surface. Using various combinations of capital `A`, `B`, `C`, `D` and `E`","may also be used to reduce the number of triangles on the iso-surfaces and","creating other patterns of interest."].join(" ")}},spaceframe:{show:{valType:"boolean",dflt:!1,description:["Displays/hides tetrahedron shapes between minimum and","maximum iso-values. Often useful when either caps or","surfaces are disabled or filled with values less than 1."].join(" ")},fill:{valType:"number",min:0,max:1,dflt:.15,description:["Sets the fill ratio of the `spaceframe` elements. The default fill value","is 0.15 meaning that only 15% of the area of every faces of tetras would be","shaded. Applying a greater `fill` ratio would allow the creation of stronger","elements or could be sued to have entirely closed areas (in case of using 1)."].join(" ")}},slices:{x:z7("x"),y:z7("y"),z:z7("z")},caps:{x:N7("x"),y:N7("y"),z:N7("z")},text:{valType:"string",dflt:"",arrayOk:!0,description:["Sets the text elements associated with the vertices.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,description:"Same as `text`."},hovertemplate:Z1t(),xhoverformat:E5("x"),yhoverformat:E5("y"),zhoverformat:E5("z"),valuehoverformat:E5("value",1),showlegend:F7({},v2e.showlegend,{dflt:!1})},X1t("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:k_.opacity,lightposition:k_.lightposition,lighting:k_.lighting,flatshading:k_.flatshading,contour:k_.contour,hoverinfo:F7({},v2e.hoverinfo)}),"calc","nested");um.flatshading.dflt=!0;um.lighting.facenormalsepsilon.dflt=0;um.x.editType=um.y.editType=um.z.editType=um.value.editType="calc+clearAxisTypes";um.transforms=void 0});var O7=J((iBt,g2e)=>{"use strict";var $1t=gt(),K1t=zr(),Q1t=L5(),eyt=vl();function tyt(e,t,r,n){function i(a,o){return $1t.coerce(e,t,Q1t,a,o)}p2e(e,t,r,n,i)}function p2e(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),l=i("y"),u=i("z"),f=i("value");if(!s||!s.length||!l||!l.length||!u||!u.length||!f||!f.length){t.visible=!1;return}var c=K1t.getComponentMethod("calendars","handleTraceDefaults");c(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(m){i(m+"hoverformat");var b="caps."+m,g=i(b+".show");g&&i(b+".fill");var _="slices."+m,T=i(_+".show");T&&(i(_+".fill"),i(_+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var v=i("contour.show");v&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(m){i(m)}),eyt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}g2e.exports={supplyDefaults:tyt,supplyIsoDefaults:p2e}});var D5=J((aBt,y2e)=>{"use strict";var U7=gt(),ryt=Uu();function nyt(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=dv(t.u,t._len),t._v=dv(t.v,t._len),t._w=dv(t.w,t._len),t._x=dv(t.x,t._len),t._y=dv(t.y,t._len),t._z=dv(t.z,t._len);var r=m2e(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=dv(t.starts.x||[]),a=dv(t.starts.y||[]),o=dv(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,l=1/0,u;for(u=0;u1&&(T=t[i-1],k=r[i-1],M=n[i-1]),a=0;aT?"-":"+")+"x"),v=v.replace("y",(w>k?"-":"+")+"y"),v=v.replace("z",(x>M?"-":"+")+"z");var y=function(){i=0,A=[],p=[],S=[]};(!i||i{"use strict";var iyt=Uu(),ayt=D5().processGrid,R5=D5().filter;x2e.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=R5(r.x,r._len),r._y=R5(r.y,r._len),r._z=R5(r.z,r._len),r._value=R5(r.value,r._len);var n=ayt(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o{"use strict";b2e.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o{"use strict";var oyt=ao().gl_mesh3d,syt=Z0().parseColorScale,lyt=gt().isArrayOrTypedArray,uyt=Ac(),fyt=Qa().extractOpts,w2e=Ax(),S_=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n-1}function U(Ae,Pe){return Ae===null?Pe:Ae}function G(Ae,Pe,He){y();var Fe=[Pe],ke=[He];if(P>=1)Fe=[Pe],ke=[He];else if(P>0){var Ue=q(Pe,He);Fe=Ue.xyzv,ke=Ue.abc}for(var Ge=0;Ge-1?He[it]:S(wt,_t,Tt);bt>-1?lt[it]=bt:lt[it]=C(wt,_t,Tt,U(Ae,nt))}L(lt[0],lt[1],lt[2])}}function ee(Ae,Pe,He){var Fe=function(ke,Ue,Ge){G(Ae,[Pe[ke],Pe[Ue],Pe[Ge]],[He[ke],He[Ue],He[Ge]])};Fe(0,1,2),Fe(2,3,0)}function Q(Ae,Pe,He){var Fe=function(ke,Ue,Ge){G(Ae,[Pe[ke],Pe[Ue],Pe[Ge]],[He[ke],He[Ue],He[Ge]])};Fe(0,1,2),Fe(3,0,1),Fe(2,3,0),Fe(1,2,3)}function j(Ae,Pe,He,Fe){var ke=Ae[3];keFe&&(ke=Fe);for(var Ue=(Ae[3]-ke)/(Ae[3]-Pe[3]+1e-9),Ge=[],lt=0;lt<4;lt++)Ge[lt]=(1-Ue)*Ae[lt]+Ue*Pe[lt];return Ge}function O(Ae,Pe,He){return Ae>=Pe&&Ae<=He}function Z(Ae){var Pe=.001*(k-w);return Ae>=w-Pe&&Ae<=k+Pe}function K(Ae){for(var Pe=[],He=0;He<4;He++){var Fe=Ae[He];Pe.push([e._x[Fe],e._y[Fe],e._z[Fe],e._value[Fe]])}return Pe}var $=3;function oe(Ae,Pe,He,Fe,ke,Ue){Ue||(Ue=1),He=[-1,-1,-1];var Ge=!1,lt=[O(Pe[0][3],Fe,ke),O(Pe[1][3],Fe,ke),O(Pe[2][3],Fe,ke)];if(!lt[0]&&!lt[1]&&!lt[2])return!1;var it=function(_t,Tt,nt){return Z(Tt[0][3])&&Z(Tt[1][3])&&Z(Tt[2][3])?(G(_t,Tt,nt),!0):Ue<$?oe(_t,Tt,nt,w,k,++Ue):!1};if(lt[0]&<[1]&<[2])return it(Ae,Pe,He)||Ge;var wt=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(_t){if(lt[_t[0]]&<[_t[1]]&&!lt[_t[2]]){var Tt=Pe[_t[0]],nt=Pe[_t[1]],bt=Pe[_t[2]],At=j(bt,Tt,Fe,ke),Ye=j(bt,nt,Fe,ke);Ge=it(Ae,[Ye,At,Tt],[-1,-1,He[_t[0]]])||Ge,Ge=it(Ae,[Tt,nt,Ye],[He[_t[0]],He[_t[1]],-1])||Ge,wt=!0}}),wt||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(_t){if(lt[_t[0]]&&!lt[_t[1]]&&!lt[_t[2]]){var Tt=Pe[_t[0]],nt=Pe[_t[1]],bt=Pe[_t[2]],At=j(nt,Tt,Fe,ke),Ye=j(bt,Tt,Fe,ke);Ge=it(Ae,[Ye,At,Tt],[-1,-1,He[_t[0]]])||Ge,wt=!0}}),Ge}function te(Ae,Pe,He,Fe){var ke=!1,Ue=K(Pe),Ge=[O(Ue[0][3],He,Fe),O(Ue[1][3],He,Fe),O(Ue[2][3],He,Fe),O(Ue[3][3],He,Fe)];if(!Ge[0]&&!Ge[1]&&!Ge[2]&&!Ge[3])return ke;if(Ge[0]&&Ge[1]&&Ge[2]&&Ge[3])return o&&(ke=Q(Ae,Ue,Pe)||ke),ke;var lt=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(it){if(Ge[it[0]]&&Ge[it[1]]&&Ge[it[2]]&&!Ge[it[3]]){var wt=Ue[it[0]],_t=Ue[it[1]],Tt=Ue[it[2]],nt=Ue[it[3]];if(o)ke=G(Ae,[wt,_t,Tt],[Pe[it[0]],Pe[it[1]],Pe[it[2]]])||ke;else{var bt=j(nt,wt,He,Fe),At=j(nt,_t,He,Fe),Ye=j(nt,Tt,He,Fe);ke=G(null,[bt,At,Ye],[-1,-1,-1])||ke}lt=!0}}),lt||([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach(function(it){if(Ge[it[0]]&&Ge[it[1]]&&!Ge[it[2]]&&!Ge[it[3]]){var wt=Ue[it[0]],_t=Ue[it[1]],Tt=Ue[it[2]],nt=Ue[it[3]],bt=j(Tt,wt,He,Fe),At=j(Tt,_t,He,Fe),Ye=j(nt,_t,He,Fe),je=j(nt,wt,He,Fe);o?(ke=G(Ae,[wt,je,bt],[Pe[it[0]],-1,-1])||ke,ke=G(Ae,[_t,At,Ye],[Pe[it[1]],-1,-1])||ke):ke=ee(null,[bt,At,Ye,je],[-1,-1,-1,-1])||ke,lt=!0}}),lt)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(it){if(Ge[it[0]]&&!Ge[it[1]]&&!Ge[it[2]]&&!Ge[it[3]]){var wt=Ue[it[0]],_t=Ue[it[1]],Tt=Ue[it[2]],nt=Ue[it[3]],bt=j(_t,wt,He,Fe),At=j(Tt,wt,He,Fe),Ye=j(nt,wt,He,Fe);o?(ke=G(Ae,[wt,bt,At],[Pe[it[0]],-1,-1])||ke,ke=G(Ae,[wt,At,Ye],[Pe[it[0]],-1,-1])||ke,ke=G(Ae,[wt,Ye,bt],[Pe[it[0]],-1,-1])||ke):ke=G(null,[bt,At,Ye],[-1,-1,-1])||ke,lt=!0}}),ke}function V(Ae,Pe,He,Fe,ke,Ue,Ge,lt,it,wt,_t){var Tt=!1;return a&&(N(Ae,"A")&&(Tt=te(null,[Pe,He,Fe,Ue],wt,_t)||Tt),N(Ae,"B")&&(Tt=te(null,[He,Fe,ke,it],wt,_t)||Tt),N(Ae,"C")&&(Tt=te(null,[He,Ue,Ge,it],wt,_t)||Tt),N(Ae,"D")&&(Tt=te(null,[Fe,Ue,lt,it],wt,_t)||Tt),N(Ae,"E")&&(Tt=te(null,[He,Fe,Ue,it],wt,_t)||Tt)),o&&(Tt=te(Ae,[He,Fe,Ue,it],wt,_t)||Tt),Tt}function ne(Ae,Pe,He,Fe,ke,Ue,Ge,lt){return[lt[0]===!0?!0:oe(Ae,K([Pe,He,Fe]),[Pe,He,Fe],Ue,Ge),lt[1]===!0?!0:oe(Ae,K([Fe,ke,Pe]),[Fe,ke,Pe],Ue,Ge)]}function W(Ae,Pe,He,Fe,ke,Ue,Ge,lt,it){return lt?ne(Ae,Pe,He,ke,Fe,Ue,Ge,it):ne(Ae,He,ke,Fe,Pe,Ue,Ge,it)}function fe(Ae,Pe,He,Fe,ke,Ue,Ge){var lt=!1,it,wt,_t,Tt,nt=function(){lt=oe(Ae,[it,wt,_t],[-1,-1,-1],ke,Ue)||lt,lt=oe(Ae,[_t,Tt,it],[-1,-1,-1],ke,Ue)||lt},bt=Ge[0],At=Ge[1],Ye=Ge[2];return bt&&(it=I(K([g(Pe,He-0,Fe-0)])[0],K([g(Pe-1,He-0,Fe-0)])[0],bt),wt=I(K([g(Pe,He-0,Fe-1)])[0],K([g(Pe-1,He-0,Fe-1)])[0],bt),_t=I(K([g(Pe,He-1,Fe-1)])[0],K([g(Pe-1,He-1,Fe-1)])[0],bt),Tt=I(K([g(Pe,He-1,Fe-0)])[0],K([g(Pe-1,He-1,Fe-0)])[0],bt),nt()),At&&(it=I(K([g(Pe-0,He,Fe-0)])[0],K([g(Pe-0,He-1,Fe-0)])[0],At),wt=I(K([g(Pe-0,He,Fe-1)])[0],K([g(Pe-0,He-1,Fe-1)])[0],At),_t=I(K([g(Pe-1,He,Fe-1)])[0],K([g(Pe-1,He-1,Fe-1)])[0],At),Tt=I(K([g(Pe-1,He,Fe-0)])[0],K([g(Pe-1,He-1,Fe-0)])[0],At),nt()),Ye&&(it=I(K([g(Pe-0,He-0,Fe)])[0],K([g(Pe-0,He-0,Fe-1)])[0],Ye),wt=I(K([g(Pe-0,He-1,Fe)])[0],K([g(Pe-0,He-1,Fe-1)])[0],Ye),_t=I(K([g(Pe-1,He-1,Fe)])[0],K([g(Pe-1,He-1,Fe-1)])[0],Ye),Tt=I(K([g(Pe-1,He-0,Fe)])[0],K([g(Pe-1,He-0,Fe-1)])[0],Ye),nt()),lt}function ge(Ae,Pe,He,Fe,ke,Ue,Ge,lt,it,wt,_t,Tt){var nt=Ae;return Tt?(a&&Ae==="even"&&(nt=null),V(nt,Pe,He,Fe,ke,Ue,Ge,lt,it,wt,_t)):(a&&Ae==="odd"&&(nt=null),V(nt,it,lt,Ge,Ue,ke,Fe,He,Pe,wt,_t))}function Ce(Ae,Pe,He,Fe,ke){for(var Ue=[],Ge=0,lt=0;ltlt?[_,Ue]:[Ue,T];Re(Pe,it[0],it[1])}}var wt=[[Math.min(w,T),Math.max(w,T)],[Math.min(_,k),Math.max(_,k)]];["x","y","z"].forEach(function(_t){for(var Tt=[],nt=0;nt0&&(ve.push(Te.id),_t==="x"?Y.push([Te.distRatio,0,0]):_t==="y"?Y.push([0,Te.distRatio,0]):Y.push([0,0,Te.distRatio]))}else _t==="x"?$e=rt(1,d-1):_t==="y"?$e=rt(1,v-1):$e=rt(1,m-1);ve.length>0&&(_t==="x"?Tt[bt]=ze(Ae,ve,At,Ye,Y,Tt[bt]):_t==="y"?Tt[bt]=Be(Ae,ve,At,Ye,Y,Tt[bt]):Tt[bt]=tt(Ae,ve,At,Ye,Y,Tt[bt]),bt++),$e.length>0&&(_t==="x"?Tt[bt]=Ce(Ae,$e,At,Ye,Tt[bt]):_t==="y"?Tt[bt]=Ne(Ae,$e,At,Ye,Tt[bt]):Tt[bt]=pe(Ae,$e,At,Ye,Tt[bt]),bt++)}var Ve=e.caps[_t];Ve.show&&Ve.fill&&(D(Ve.fill),_t==="x"?Tt[bt]=Ce(Ae,[0,d-1],At,Ye,Tt[bt]):_t==="y"?Tt[bt]=Ne(Ae,[0,v-1],At,Ye,Tt[bt]):Tt[bt]=pe(Ae,[0,m-1],At,Ye,Tt[bt]),bt++)}}),s===0&&E(),e._meshX=x,e._meshY=M,e._meshZ=A,e._meshIntensity=p,e._Xs=f,e._Ys=c,e._Zs=h}return Ee(),e}function hyt(e,t){var r=e.glplot.gl,n=oyt({gl:r}),i=new _2e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}A2e.exports={findNearestOnAxis:S_,generateIsoMeshes:T2e,createIsosurfaceTrace:hyt}});var k2e=J((uBt,M2e)=>{"use strict";M2e.exports={attributes:L5(),supplyDefaults:O7().supplyDefaults,calc:H7(),colorbar:{min:"cmin",max:"cmax"},plot:P5().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:J0(),categories:["gl3d","showLegend"],meta:{description:["Draws isosurfaces between iso-min and iso-max values with coordinates given by","four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex","of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as","spaceframe between iso-min and iso-max values could also be drawn using this trace."].join(" ")}}});var C2e=J((fBt,S2e)=>{"use strict";S2e.exports=k2e()});var Y7=J((cBt,L2e)=>{"use strict";var vyt=Da(),qo=L5(),dyt=A_(),E2e=Qi(),V7=cn().extendFlat,pyt=La().overrideAll,C_=L2e.exports=pyt(V7({x:qo.x,y:qo.y,z:qo.z,value:qo.value,isomin:qo.isomin,isomax:qo.isomax,surface:qo.surface,spaceframe:{show:{valType:"boolean",dflt:!1,description:["Displays/hides tetrahedron shapes between minimum and","maximum iso-values. Often useful when either caps or","surfaces are disabled or filled with values less than 1."].join(" ")},fill:{valType:"number",min:0,max:1,dflt:1,description:["Sets the fill ratio of the `spaceframe` elements. The default fill value","is 1 meaning that they are entirely shaded. Applying a `fill` ratio less","than one would allow the creation of openings parallel to the edges."].join(" ")}},slices:qo.slices,caps:qo.caps,text:qo.text,hovertext:qo.hovertext,xhoverformat:qo.xhoverformat,yhoverformat:qo.yhoverformat,zhoverformat:qo.zhoverformat,valuehoverformat:qo.valuehoverformat,hovertemplate:qo.hovertemplate},vyt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:qo.colorbar,opacity:qo.opacity,opacityscale:dyt.opacityscale,lightposition:qo.lightposition,lighting:qo.lighting,flatshading:qo.flatshading,contour:qo.contour,hoverinfo:V7({},E2e.hoverinfo),showlegend:V7({},E2e.showlegend,{dflt:!1})}),"calc","nested");C_.x.editType=C_.y.editType=C_.z.editType=C_.value.editType="calc+clearAxisTypes";C_.transforms=void 0});var R2e=J((hBt,D2e)=>{"use strict";var gyt=gt(),myt=Y7(),yyt=O7().supplyIsoDefaults,xyt=P7().opacityscaleDefaults;D2e.exports=function(t,r,n,i){function a(o,s){return gyt.coerce(t,r,myt,o,s)}yyt(t,r,n,i,a),xyt(t,r,i,a)}});var F2e=J((vBt,q2e)=>{"use strict";var byt=ao().gl_mesh3d,wyt=Z0().parseColorScale,_yt=gt().isArrayOrTypedArray,Tyt=Ac(),Ayt=Qa().extractOpts,P2e=Ax(),G7=P5().findNearestOnAxis,Myt=P5().generateIsoMeshes;function I2e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var W7=I2e.prototype;W7.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=G7(r,this.data._Xs).id,l=G7(n,this.data._Ys).id,u=G7(i,this.data._Zs).id,f=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var c=this.data.hovertext||this.data.text;return _yt(c)&&c[f]!==void 0?e.textLabel=c[f]:c&&(e.textLabel=c),!0}};W7.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=Myt(e);function n(l,u,f,c){return u.map(function(h){return l.d2l(h,0,c)*f})}var i=P2e(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=P2e(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:Tyt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=Ayt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=wyt(e),this.mesh.update(o)};W7.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function kyt(e,t){var r=e.glplot.gl,n=byt({gl:r}),i=new I2e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}q2e.exports=kyt});var N2e=J((dBt,z2e)=>{"use strict";z2e.exports={attributes:Y7(),supplyDefaults:R2e(),calc:H7(),colorbar:{min:"cmin",max:"cmax"},plot:F2e(),moduleType:"trace",name:"volume",basePlotModule:J0(),categories:["gl3d","showLegend"],meta:{description:["Draws volume trace between iso-min and iso-max values with coordinates given by","four 1-dimensional arrays containing the `value`, `x`, `y` and `z` of every vertex","of a uniform or non-uniform 3-D grid. Horizontal or vertical slices, caps as well as","spaceframe between iso-min and iso-max values could also be drawn using this trace."].join(" ")}}});var B2e=J((pBt,O2e)=>{"use strict";O2e.exports=N2e()});var j2e=J((gBt,H2e)=>{"use strict";var Syt=zr(),U2e=gt(),Cyt=vl(),Eyt=Tx();H2e.exports=function(t,r,n,i){function a(f,c){return U2e.coerce(t,r,Eyt,f,c)}function o(f){var c=f.map(function(h){var d=a(h);return d&&U2e.isArrayOrTypedArray(d)?d:null});return c.every(function(h){return h&&h.length===c[0].length})&&c}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var l=Syt.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(f){a(f)});var u=a("contour.show");u&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),Cyt(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var Y2e=J((mBt,V2e)=>{"use strict";var Lyt=Uu();V2e.exports=function(t,r){r.intensity&&Lyt(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var J2e=J((yBt,Z2e)=>{"use strict";var Dyt=ao().gl_mesh3d,Ryt=ao().delaunay_triangulate,Pyt=ao().alpha_shape,Iyt=ao().convex_hull,qyt=Z0().parseColorScale,Fyt=gt().isArrayOrTypedArray,$7=Ac(),zyt=Qa().extractOpts,G2e=Ax();function X2e(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var K7=X2e.prototype;K7.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return Fyt(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function W2e(e){for(var t=[],r=e.length,n=0;n=t-.5)return!1;return!0}K7.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=G2e(X7(r.xaxis,e.x,t.dataScale[0],e.xcalendar),X7(r.yaxis,e.y,t.dataScale[1],e.ycalendar),X7(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!J7(e.i,n)||!J7(e.j,n)||!J7(e.k,n))return;a=G2e(Z7(e.i),Z7(e.j),Z7(e.k))}else e.alphahull===0?a=Iyt(i):e.alphahull>0?a=Pyt(e.alphahull,i):a=Nyt(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:$7(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=zyt(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=qyt(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=W2e(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=W2e(e.facecolor)):(this.color=e.color,o.meshColor=$7(e.color));this.mesh.update(o)};K7.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function Oyt(e,t){var r=e.glplot.gl,n=Dyt({gl:r}),i=new X2e(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}Z2e.exports=Oyt});var K2e=J((xBt,$2e)=>{"use strict";$2e.exports={attributes:Tx(),supplyDefaults:j2e(),calc:Y2e(),colorbar:{min:"cmin",max:"cmax"},plot:J2e(),moduleType:"trace",name:"mesh3d",basePlotModule:J0(),categories:["gl3d","showLegend"],meta:{description:["Draws sets of triangles with coordinates given by","three 1-dimensional arrays in `x`, `y`, `z` and","(1) a sets of `i`, `j`, `k` indices","(2) Delaunay triangulation or","(3) the Alpha-shape algorithm or","(4) the Convex-hull algorithm"].join(" ")}}});var ewe=J((bBt,Q2e)=>{"use strict";Q2e.exports=K2e()});var e9=J((wBt,rwe)=>{"use strict";var Byt=Da(),Mx=Ga().axisHoverFormat,Uyt=Jn().hovertemplateAttrs,Hyt=Tx(),twe=Qi(),Q7=cn().extendFlat,E_={x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the x coordinates of the vector field","and of the displayed cones."].join(" ")},y:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the y coordinates of the vector field","and of the displayed cones."].join(" ")},z:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the z coordinates of the vector field","and of the displayed cones."].join(" ")},u:{valType:"data_array",editType:"calc",description:"Sets the x components of the vector field."},v:{valType:"data_array",editType:"calc",description:"Sets the y components of the vector field."},w:{valType:"data_array",editType:"calc",description:"Sets the z components of the vector field."},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled",description:["Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar","(normalized by the max u/v/w norm in the vector field) or as","*absolute* value (in the same units as the vector field).","To display sizes in actual vector length use *raw*."].join(" ")},sizeref:{valType:"number",editType:"calc",min:0,description:["Adjusts the cone size scaling.","The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`.",'This factor (computed internally) corresponds to the minimum "time" to travel across',"two successive x/y/z positions at the average velocity of those two successive positions.","All cones in a given trace use the same factor.","With `sizemode` set to *raw*, its default value is *1*.","With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5*.","With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field,","its the default value is half the sample's maximum vector norm."].join(" ")},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm",description:["Sets the cones' anchor with respect to their x/y/z positions.","Note that *cm* denote the cone's center of mass which corresponds to","1/4 from the tail to tip."].join(" ")},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:["Sets the text elements associated with the cones.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:"Same as `text`."},hovertemplate:Uyt({editType:"calc"},{keys:["norm"]}),uhoverformat:Mx("u",1),vhoverformat:Mx("v",1),whoverformat:Mx("w",1),xhoverformat:Mx("x"),yhoverformat:Mx("y"),zhoverformat:Mx("z"),showlegend:Q7({},twe.showlegend,{dflt:!1})};Q7(E_,Byt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var jyt=["opacity","lightposition","lighting"];jyt.forEach(function(e){E_[e]=Hyt[e]});E_.hoverinfo=Q7({},twe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});E_.transforms=void 0;rwe.exports=E_});var iwe=J((_Bt,nwe)=>{"use strict";var Vyt=gt(),Yyt=vl(),Gyt=e9();nwe.exports=function(t,r,n,i){function a(d,v){return Vyt.coerce(t,r,Gyt,d,v)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!f||!f.length||!c||!c.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),Yyt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var owe=J((TBt,awe)=>{"use strict";var Wyt=Uu();awe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,u=0;u{"use strict";var Xyt=ao().gl_cone3d,Zyt=ao().gl_cone3d.createConeMesh,Jyt=gt().simpleMap,$yt=Z0().parseColorScale,Kyt=Qa().extractOpts,Qyt=gt().isArrayOrTypedArray,swe=Ax();function lwe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var t9=lwe.prototype;t9.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var l=this.data.hovertext||this.data.text;return Qyt(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var ext={xaxis:0,yaxis:1,zaxis:2},txt={tip:1,tail:0,cm:.25,center:.5},rxt={tip:1,tail:1,cm:.75,center:.5};function uwe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(f,c){var h=r[c],d=n[ext[c]];return Jyt(f,function(v){return h.d2l(v)*d})}i.vectors=swe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=swe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=Kyt(t);i.colormap=$yt(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=txt[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var l=Xyt(i),u=t.lightposition;return l.lightPosition=[u.x,u.y,u.z],l.ambient=t.lighting.ambient,l.diffuse=t.lighting.diffuse,l.specular=t.lighting.specular,l.roughness=t.lighting.roughness,l.fresnel=t.lighting.fresnel,l.opacity=t.opacity,t._pad=rxt[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}t9.update=function(e){this.data=e;var t=uwe(this.scene,e);this.mesh.update(t)};t9.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function nxt(e,t){var r=e.glplot.gl,n=uwe(e,t),i=Zyt(r,n),a=new lwe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}fwe.exports=nxt});var vwe=J((MBt,hwe)=>{"use strict";hwe.exports={moduleType:"trace",name:"cone",basePlotModule:J0(),categories:["gl3d","showLegend"],attributes:e9(),supplyDefaults:iwe(),colorbar:{min:"cmin",max:"cmax"},calc:owe(),plot:cwe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{description:["Use cone traces to visualize vector fields.","","Specify a vector field using 6 1D arrays,","3 position arrays `x`, `y` and `z`","and 3 vector component arrays `u`, `v`, `w`.","The cones are drawn exactly at the positions given","by `x`, `y` and `z`."].join(" ")}}});var pwe=J((kBt,dwe)=>{"use strict";dwe.exports=vwe()});var n9=J((SBt,mwe)=>{"use strict";var ixt=Da(),kx=Ga().axisHoverFormat,axt=Jn().hovertemplateAttrs,oxt=Tx(),gwe=Qi(),r9=cn().extendFlat,L_={x:{valType:"data_array",editType:"calc+clearAxisTypes",description:"Sets the x coordinates of the vector field."},y:{valType:"data_array",editType:"calc+clearAxisTypes",description:"Sets the y coordinates of the vector field."},z:{valType:"data_array",editType:"calc+clearAxisTypes",description:"Sets the z coordinates of the vector field."},u:{valType:"data_array",editType:"calc",description:"Sets the x components of the vector field."},v:{valType:"data_array",editType:"calc",description:"Sets the y components of the vector field."},w:{valType:"data_array",editType:"calc",description:"Sets the z components of the vector field."},starts:{x:{valType:"data_array",editType:"calc",description:["Sets the x components of the starting position of the streamtubes"].join(" ")},y:{valType:"data_array",editType:"calc",description:["Sets the y components of the starting position of the streamtubes"].join(" ")},z:{valType:"data_array",editType:"calc",description:["Sets the z components of the starting position of the streamtubes"].join(" ")},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc",description:["The maximum number of displayed segments in a streamtube."].join(" ")},sizeref:{valType:"number",editType:"calc",min:0,dflt:1,description:["The scaling factor for the streamtubes.","The default is 1, which avoids two max divergence tubes from touching","at adjacent starting positions."].join(" ")},text:{valType:"string",dflt:"",editType:"calc",description:["Sets a text element associated with this trace.","If trace `hoverinfo` contains a *text* flag,","this text element will be seen in all hover labels.","Note that streamtube traces do not support array `text` values."].join(" ")},hovertext:{valType:"string",dflt:"",editType:"calc",description:"Same as `text`."},hovertemplate:axt({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:kx("u",1),vhoverformat:kx("v",1),whoverformat:kx("w",1),xhoverformat:kx("x"),yhoverformat:kx("y"),zhoverformat:kx("z"),showlegend:r9({},gwe.showlegend,{dflt:!1})};r9(L_,ixt("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var sxt=["opacity","lightposition","lighting"];sxt.forEach(function(e){L_[e]=oxt[e]});L_.hoverinfo=r9({},gwe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});L_.transforms=void 0;mwe.exports=L_});var xwe=J((CBt,ywe)=>{"use strict";var lxt=gt(),uxt=vl(),fxt=n9();ywe.exports=function(t,r,n,i){function a(h,d){return lxt.coerce(t,r,fxt,h,d)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),f=a("y"),c=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!f||!f.length||!c||!c.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),uxt(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var Swe=J((EBt,kwe)=>{"use strict";var _we=ao().gl_streamtube3d,cxt=_we.createTubeMesh,hxt=gt(),vxt=Z0().parseColorScale,dxt=Qa().extractOpts,bwe=Ax(),Twe={xaxis:0,yaxis:1,zaxis:2};function Awe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var a9=Awe.prototype;a9.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[Twe[s]];return l.l2c(o)/u}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function wwe(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function i9(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function Mwe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(E,C){var L=r[C],R=n[Twe[C]];return hxt.simpleMap(E,function(I){return L.d2l(I)*R})}if(a.vectors=bwe(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),l=o(t._Ys,"yaxis"),u=o(t._Zs,"zaxis");a.meshgrid=[s,l,u],a.gridFill=t._gridFill;var f=t._slen;if(f)a.startingPositions=bwe(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var c=l[0],h=wwe(s),d=wwe(u),v=new Array(h.length*d.length),m=0,b=0;b{"use strict";Cwe.exports={moduleType:"trace",name:"streamtube",basePlotModule:J0(),categories:["gl3d","showLegend"],attributes:n9(),supplyDefaults:xwe(),colorbar:{min:"cmin",max:"cmax"},calc:D5().calc,plot:Swe(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{description:["Use a streamtube trace to visualize flow in a vector field.","","Specify a vector field using 6 1D arrays of equal length,","3 position arrays `x`, `y` and `z`","and 3 vector component arrays `u`, `v`, and `w`.","","By default, the tubes' starting positions will be cut from the vector field's","x-z plane at its minimum y value.","To specify your own starting position, use attributes `starts.x`, `starts.y`","and `starts.z`.","The color is encoded by the norm of (u, v, w), and the local radius","by the divergence of (u, v, w)."].join(" ")}}});var Dwe=J((DBt,Lwe)=>{"use strict";Lwe.exports=Ewe()});var D_=J((RBt,Iwe)=>{"use strict";var gxt=Jn().hovertemplateAttrs,mxt=Jn().texttemplateAttrs,yxt=gg(),pv=ds(),xxt=Qi(),Rwe=Da(),bxt=Ss().dash,fm=cn().extendFlat,wxt=La().overrideAll,Mc=pv.marker,Pwe=pv.line,_xt=Mc.line;Iwe.exports=wxt({lon:{valType:"data_array",description:"Sets the longitude coordinates (in degrees East)."},lat:{valType:"data_array",description:"Sets the latitude coordinates (in degrees North)."},locations:{valType:"data_array",description:["Sets the coordinates via location IDs or names.","Coordinates correspond to the centroid of each location given.","See `locationmode` for more info."].join(" ")},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3",description:["Determines the set of locations used to match entries in `locations`","to regions on the map.","Values *ISO-3*, *USA-states*, *country names* correspond to features on","the base map and value *geojson-id* corresponds to features from a custom","GeoJSON linked to the `geojson` attribute."].join(" ")},geojson:{valType:"any",editType:"calc",description:["Sets optional GeoJSON data associated with this trace.","If not given, the features on the base map are used when `locations` is set.","It can be set as a valid GeoJSON object or as a URL string.","Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature*","with geometries of type *Polygon* or *MultiPolygon*."].join(" ")},featureidkey:{valType:"string",editType:"calc",dflt:"id",description:["Sets the key in GeoJSON features which is used as id to match the items","included in the `locations` array.","Only has an effect when `geojson` is set.","Support nested property, for example *properties.name*."].join(" ")},mode:fm({},pv.mode,{dflt:"markers"}),text:fm({},pv.text,{description:["Sets text elements associated with each (lon,lat) pair","or item in `locations`.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (lon,lat) or `locations` coordinates.","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")}),texttemplate:mxt({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:fm({},pv.hovertext,{description:["Sets hover text elements associated with each (lon,lat) pair","or item in `locations`.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to the","this trace's (lon,lat) or `locations` coordinates.","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")}),textfont:pv.textfont,textposition:pv.textposition,line:{color:Pwe.color,width:Pwe.width,dash:bxt},connectgaps:pv.connectgaps,marker:fm({symbol:Mc.symbol,opacity:Mc.opacity,angle:Mc.angle,angleref:fm({},Mc.angleref,{values:["previous","up","north"],description:["Sets the reference for marker angle.","With *previous*, angle 0 points along the line from the previous point to this one.","With *up*, angle 0 points toward the top of the screen.","With *north*, angle 0 points north based on the current map projection."].join(" ")}),standoff:Mc.standoff,size:Mc.size,sizeref:Mc.sizeref,sizemin:Mc.sizemin,sizemode:Mc.sizemode,colorbar:Mc.colorbar,line:fm({width:_xt.width},Rwe("marker.line")),gradient:Mc.gradient},Rwe("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none",description:["Sets the area to fill with a solid color.","Use with `fillcolor` if not *none*.","*toself* connects the endpoints of the trace (or each segment","of the trace if it has gaps) into a closed shape."].join(" ")},fillcolor:yxt(),selected:pv.selected,unselected:pv.unselected,hoverinfo:fm({},xxt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:gxt()},"calc","nested")});var Fwe=J((PBt,qwe)=>{"use strict";var o9=gt(),s9=fs(),Txt=bg(),Axt=wg(),Mxt=_g(),kxt=uy(),Sxt=D_();qwe.exports=function(t,r,n,i){function a(d,v){return o9.coerce(t,r,Sxt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||o9.isPlainObject(l))&&(u="geojson-id");var f=a("locationmode",u);f==="geojson-id"&&a("featureidkey"),s=o.length}else{var c=a("lon")||[],h=a("lat")||[];s=Math.min(c.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("mode"),s9.hasMarkers(r)&&Txt(t,r,n,i,a,{gradient:!0}),s9.hasLines(r)&&(Axt(t,r,n,i,a),a("connectgaps")),s9.hasText(r)&&(a("texttemplate"),Mxt(t,r,i,a)),a("fill"),r.fill!=="none"&&kxt(t,r,n,a),o9.coerceSelectionMarkerOpacity(r,a)}});var Owe=J((IBt,Nwe)=>{"use strict";var zwe=nn();Nwe.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=zwe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=zwe.tickText(o,o.c2l(s[1]),!0).text,i}});var Vwe=J((qBt,jwe)=>{"use strict";var l9=dn(),Bwe=oi().BADNUM,Cxt=Ag(),Ext=nd(),Lxt=oh(),Dxt=gt().isArrayOrTypedArray,Uwe=gt()._;function Hwe(e){return e&&typeof e=="string"}jwe.exports=function(t,r){var n=Dxt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return Hwe(h)||l9(h)}:o=Hwe;for(var s=0;s{"use strict";_l.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};_l.axesNames=["lonaxis","lataxis"];_l.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};_l.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};_l.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,85],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]}};_l.clipPad=.001;_l.precision=.1;_l.landColor="#F0DC82";_l.waterColor="#3399FF";_l.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};_l.sphereSVG={type:"Sphere"};_l.fillLayers={ocean:1,land:1,lakes:1};_l.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};_l.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];_l.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];_l.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var u9=J((I5,Ywe)=>{(function(e,t){typeof I5=="object"&&typeof Ywe<"u"?t(I5):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.topojson=e.topojson||{}))})(I5,function(e){"use strict";function t(T){return T}function r(T){if(T==null)return t;var w,k,x=T.scale[0],M=T.scale[1],A=T.translate[0],p=T.translate[1];return function(S,y){y||(w=k=0);var E=2,C=S.length,L=new Array(C);for(L[0]=(w+=S[0])*x+A,L[1]=(k+=S[1])*M+p;EA&&(A=E[0]),E[1]p&&(p=E[1])}function y(E){switch(E.type){case"GeometryCollection":E.geometries.forEach(y);break;case"Point":S(E.coordinates);break;case"MultiPoint":E.coordinates.forEach(S);break}}T.arcs.forEach(function(E){for(var C=-1,L=E.length,R;++CA&&(A=R[0]),R[1]p&&(p=R[1])});for(k in T.objects)y(T.objects[k]);return[x,M,A,p]}function i(T,w){for(var k,x=T.length,M=x-w;M<--x;)k=T[M],T[M++]=T[x],T[x]=k}function a(T,w){return typeof w=="string"&&(w=T.objects[w]),w.type==="GeometryCollection"?{type:"FeatureCollection",features:w.geometries.map(function(k){return o(T,k)})}:o(T,w)}function o(T,w){var k=w.id,x=w.bbox,M=w.properties==null?{}:w.properties,A=s(T,w);return k==null&&x==null?{type:"Feature",properties:M,geometry:A}:x==null?{type:"Feature",id:k,properties:M,geometry:A}:{type:"Feature",id:k,bbox:x,properties:M,geometry:A}}function s(T,w){var k=r(T.transform),x=T.arcs;function M(C,L){L.length&&L.pop();for(var R=x[C<0?~C:C],I=0,P=R.length;I1)x=c(T,w,k);else for(M=0,x=new Array(A=T.arcs.length);M1)for(var L=1,R=S(E[0]),I,P;LR&&(P=E[0],E[0]=E[L],E[L]=P,R=I);return E}).filter(function(y){return y.length>0})}}function m(T,w){for(var k=0,x=T.length;k>>1;T[M]=2))throw new Error("n must be \u22652");y=T.bbox||n(T);var k=y[0],x=y[1],M=y[2],A=y[3],p;w={scale:[M-k?(M-k)/(p-1):1,A-x?(A-x)/(p-1):1],translate:[k,x]}}else y=T.bbox;var S=g(w),y,E,C=T.objects,L={};function R(D){return S(D)}function I(D){var q;switch(D.type){case"GeometryCollection":q={type:"GeometryCollection",geometries:D.geometries.map(I)};break;case"Point":q={type:"Point",coordinates:R(D.coordinates)};break;case"MultiPoint":q={type:"MultiPoint",coordinates:D.coordinates.map(R)};break;default:return D}return D.id!=null&&(q.id=D.id),D.bbox!=null&&(q.bbox=D.bbox),D.properties!=null&&(q.properties=D.properties),q}function P(D){var q=0,N=1,U=D.length,G,ee=new Array(U);for(ee[0]=S(D[0],0);++q{"use strict";var f9=Gwe.exports={},Rxt=R_().locationmodeToLayer,Pxt=u9().feature;f9.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};f9.getTopojsonPath=function(e,t){return e+t+".json"};f9.getTopojsonFeatures=function(e,t){var r=Rxt[e.locationmode],n=t.objects[r];return Pxt(t,n).features}});var Wwe=J(P_=>{"use strict";var Ixt=oi().BADNUM;P_.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};P_.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};P_.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r{Xwe.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var p9=J(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.earthRadius=63710088e-1;Bn.factors={centimeters:Bn.earthRadius*100,centimetres:Bn.earthRadius*100,degrees:Bn.earthRadius/111325,feet:Bn.earthRadius*3.28084,inches:Bn.earthRadius*39.37,kilometers:Bn.earthRadius/1e3,kilometres:Bn.earthRadius/1e3,meters:Bn.earthRadius,metres:Bn.earthRadius,miles:Bn.earthRadius/1609.344,millimeters:Bn.earthRadius*1e3,millimetres:Bn.earthRadius*1e3,nauticalmiles:Bn.earthRadius/1852,radians:1,yards:Bn.earthRadius*1.0936};Bn.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/Bn.earthRadius,yards:1.0936133};Bn.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function Q0(e,t,r){r===void 0&&(r={});var n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}Bn.feature=Q0;function qxt(e,t,r){switch(r===void 0&&(r={}),e){case"Point":return c9(t).geometry;case"LineString":return v9(t).geometry;case"Polygon":return h9(t).geometry;case"MultiPoint":return $we(t).geometry;case"MultiLineString":return Jwe(t).geometry;case"MultiPolygon":return Kwe(t).geometry;default:throw new Error(e+" is invalid")}}Bn.geometry=qxt;function c9(e,t,r){if(r===void 0&&(r={}),!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!F5(e[0])||!F5(e[1]))throw new Error("coordinates must contain numbers");var n={type:"Point",coordinates:e};return Q0(n,t,r)}Bn.point=c9;function Fxt(e,t,r){return r===void 0&&(r={}),z5(e.map(function(n){return c9(n,t)}),r)}Bn.points=Fxt;function h9(e,t,r){r===void 0&&(r={});for(var n=0,i=e;n=0))throw new Error("precision must be a positive number");var r=Math.pow(10,t||0);return Math.round(e*r)/r}Bn.round=Bxt;function Qwe(e,t){t===void 0&&(t="kilometers");var r=Bn.factors[t];if(!r)throw new Error(t+" units is invalid");return e*r}Bn.radiansToLength=Qwe;function d9(e,t){t===void 0&&(t="kilometers");var r=Bn.factors[t];if(!r)throw new Error(t+" units is invalid");return e/r}Bn.lengthToRadians=d9;function Uxt(e,t){return e_e(d9(e,t))}Bn.lengthToDegrees=Uxt;function Hxt(e){var t=e%360;return t<0&&(t+=360),t}Bn.bearingToAzimuth=Hxt;function e_e(e){var t=e%(2*Math.PI);return t*180/Math.PI}Bn.radiansToDegrees=e_e;function jxt(e){var t=e%360;return t*Math.PI/180}Bn.degreesToRadians=jxt;function Vxt(e,t,r){if(t===void 0&&(t="kilometers"),r===void 0&&(r="kilometers"),!(e>=0))throw new Error("length must be a positive number");return Qwe(d9(e,t),r)}Bn.convertLength=Vxt;function Yxt(e,t,r){if(t===void 0&&(t="meters"),r===void 0&&(r="kilometers"),!(e>=0))throw new Error("area must be a positive number");var n=Bn.areaFactors[t];if(!n)throw new Error("invalid original units");var i=Bn.areaFactors[r];if(!i)throw new Error("invalid final units");return e/n*i}Bn.convertArea=Yxt;function F5(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}Bn.isNumber=F5;function Gxt(e){return!!e&&e.constructor===Object}Bn.isObject=Gxt;function Wxt(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(function(t){if(!F5(t))throw new Error("bbox must only contain numbers")})}Bn.validateBBox=Wxt;function Xxt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}Bn.validateId=Xxt});var O5=J(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});var Vl=p9();function I_(e,t,r){if(e!==null)for(var n,i,a,o,s,l,u,f=0,c=0,h,d=e.type,v=d==="FeatureCollection",m=d==="Feature",b=v?e.features.length:1,g=0;gl||v>u||m>f){s=c,l=n,u=v,f=m,a=0;return}var b=Vl.lineString([s,c],r.properties);if(t(b,n,i,m,a)===!1)return!1;a++,s=c})===!1)return!1}}})}function tbt(e,t,r){var n=r,i=!1;return n_e(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function i_e(e,t){if(!e)throw new Error("geojson is required");N5(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s{"use strict";Object.defineProperty(y9,"__esModule",{value:!0});var abt=O5(),a_e=6378137;function obt(e){return abt.geomReduce(e,function(t,r){return t+sbt(r)},0)}y9.default=obt;function sbt(e){var t=0,r;switch(e.type){case"Polygon":return o_e(e.coordinates);case"MultiPolygon":for(r=0;r0){t+=Math.abs(s_e(e[0]));for(var r=1;r2){for(s=0;s{"use strict";Object.defineProperty(x9,"__esModule",{value:!0});var lbt=O5(),ubt=p9();function fbt(e,t){t===void 0&&(t={});var r=0,n=0,i=0;return lbt.coordEach(e,function(a){r+=a[0],n+=a[1],i++},!0),ubt.point([r/i,n/i],t.properties)}x9.default=fbt});var f_e=J(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var cbt=O5();function b9(e){var t=[1/0,1/0,-1/0,-1/0];return cbt.coordEach(e,function(r){t[0]>r[0]&&(t[0]=r[0]),t[1]>r[1]&&(t[1]=r[1]),t[2]{"use strict";var hbt=Nr(),v_e=Zwe(),vbt=l_e(),dbt=u_e(),pbt=f_e(),c_e=jb(),Sx=Kd(),gbt=Bv(),mbt=Rb(),B5=R2(),h_e=Object.keys(v_e),ybt={"ISO-3":c_e,"USA-states":c_e,"country names":xbt};function xbt(e){for(var t=0;t0&&f[c+1][0]<0)return c;return null}switch(n==="RUS"||n==="FJI"?a=function(f){var c;if(u(f)===null)c=f;else for(c=new Array(f.length),l=0;lc?h[d++]=[f[l][0]+360,f[l][1]]:l===c?(h[d++]=f[l],h[d++]=[f[l][0],-90]):h[d++]=f[l];var v=B5.tester(h);v.pts.pop(),i.push(v)}:a=function(f){i.push(B5.tester(f))},t.type){case"MultiPolygon":for(o=0;oi&&(i=s,r=o)}else r=t;return dbt.default(r).geometry.coordinates}function Abt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,f){hbt.json(l,function(c,h){if(c){delete t[l];var d=c.status===404?'GeoJSON at URL "'+l+'" does not exist.':"Unexpected error while fetching from "+l;return f(new Error(d))}return t[l]=h,u(h)})})}function i(l){return new Promise(function(u,f){var c=0,h=setInterval(function(){if(t[l]&&t[l]!=="pending")return clearInterval(h),u(t[l]);if(c>100)return clearInterval(h),f("Unexpected error while fetching from "+l);c++},50)})}for(var a=0;a{"use strict";var kbt=Nr(),Sbt=ln(),g_e=qr(),m_e=Ef(),Cbt=m_e.stylePoints,Ebt=m_e.styleText;y_e.exports=function(t,r){r&&Lbt(t,r)};function Lbt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),Cbt(n,r,e),Ebt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=kbt.select(this),o=i.trace,s=o.line||{};a.call(g_e.stroke,s.color).call(Sbt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(g_e.fill,o.fillcolor)})}});var k9=J((WBt,w_e)=>{"use strict";var x_e=Nr(),j5=gt(),Dbt=q5().getTopojsonFeatures,T9=Wwe(),H5=U5(),b_e=ec().findExtremes,M9=oi().BADNUM,Rbt=Mg().calcMarkerSize,A9=fs(),Pbt=_9();function Ibt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=j5.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===M9&&x_e.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=x_e.select(this),l=o[0].trace;if(A9.hasLines(l)||l.fill!=="none"){var u=T9.calcTraceToLineCoords(o),f=l.fill!=="none"?T9.makePolygon(u):T9.makeLine(u);s.selectAll("path.js-line").data([{geojson:f,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}A9.hasMarkers(l)&&s.selectAll("path.point").data(j5.identity).enter().append("path").classed("point",!0).each(function(c){a(c,this)}),A9.hasText(l)&&s.selectAll("g").data(j5.identity).enter().append("g").append("text").each(function(c){a(c,this)}),Pbt(e,o)})}function qbt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(j5.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?H5.extractTraceFeature(e):Dbt(r,i.topojson);for(o=0;o{"use strict";var Fbt=go(),zbt=oi().BADNUM,Nbt=rk(),Obt=gt().fillText,Bbt=D_();__e.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,l=t.subplot,u=l.projection.isLonLatOverEdges,f=l.project;function c(_){var T=_.lonlat;if(T[0]===zbt||u(T))return 1/0;var w=f(T),k=f([r,n]),x=Math.abs(w[0]-k[0]),M=Math.abs(w[1]-k[1]),A=Math.max(3,_.mrc||0);return Math.max(Math.sqrt(x*x+M*M)-A,1-3/A)}if(Fbt.getClosest(i,c,t),t.index!==!1){var h=i[t.index],d=h.lonlat,v=[o.c2p(d),s.c2p(d)],m=h.mrc||1;t.x0=v[0]-m,t.x1=v[0]+m,t.y0=v[1]-m,t.y1=v[1]+m,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:l};var g=a._module.formatLabels(h,a,b);return t.lonLabel=g.lonLabel,t.latLabel=g.latLabel,t.color=Nbt(a,h),t.extraText=Ubt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function Ubt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?Bbt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,l=a.indexOf("lat")!==-1,u=a.indexOf("text")!==-1,f=[];function c(h){return h+"\xB0"}return o?f.push(t.loc):s&&l?f.push("("+c(r.latLabel)+", "+c(r.lonLabel)+")"):s?f.push(n.lon+c(r.lonLabel)):l&&f.push(n.lat+c(r.latLabel)),u&&Obt(t,e,f),f.join("
")}});var M_e=J((ZBt,A_e)=>{"use strict";A_e.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var C_e=J((JBt,S_e)=>{"use strict";var k_e=fs(),Hbt=oi().BADNUM;S_e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,f,c,h,d=!k_e.hasMarkers(s)&&!k_e.hasText(s);if(d)return[];if(r===!1)for(h=0;h{(function(e,t){typeof V5=="object"&&typeof E_e<"u"?t(V5):typeof define=="function"&&define.amd?define(["exports"],t):t(e.d3=e.d3||{})})(V5,function(e){"use strict";function t(K,$){return K<$?-1:K>$?1:K>=$?0:NaN}function r(K){return K.length===1&&(K=n(K)),{left:function($,oe,te,V){for(te==null&&(te=0),V==null&&(V=$.length);te>>1;K($[ne],oe)<0?te=ne+1:V=ne}return te},right:function($,oe,te,V){for(te==null&&(te=0),V==null&&(V=$.length);te>>1;K($[ne],oe)>0?V=ne:te=ne+1}return te}}}function n(K){return function($,oe){return t(K($),oe)}}var i=r(t),a=i.right,o=i.left;function s(K,$){$==null&&($=l);for(var oe=0,te=K.length-1,V=K[0],ne=new Array(te<0?0:te);oeK?1:$>=K?0:NaN}function c(K){return K===null?NaN:+K}function h(K,$){var oe=K.length,te=0,V=-1,ne=0,W,fe,ge=0;if($==null)for(;++V1)return ge/(te-1)}function d(K,$){var oe=h(K,$);return oe&&Math.sqrt(oe)}function v(K,$){var oe=K.length,te=-1,V,ne,W;if($==null){for(;++te=V)for(ne=W=V;++teV&&(ne=V),W=V)for(ne=W=V;++teV&&(ne=V),W0)return[K];if((te=$0)for(K=Math.ceil(K/fe),$=Math.floor($/fe),W=new Array(ne=Math.ceil($-K+1));++V=0?(ne>=k?10:ne>=x?5:ne>=M?2:1)*Math.pow(10,V):-Math.pow(10,-V)/(ne>=k?10:ne>=x?5:ne>=M?2:1)}function S(K,$,oe){var te=Math.abs($-K)/Math.max(0,oe),V=Math.pow(10,Math.floor(Math.log(te)/Math.LN10)),ne=te/V;return ne>=k?V*=10:ne>=x?V*=5:ne>=M&&(V*=2),$pe;)me.pop(),--Ie;var Re=new Array(Ie+1),ze;for(ne=0;ne<=Ie;++ne)ze=Re[ne]=[],ze.x0=ne>0?me[ne-1]:Ne,ze.x1=ne=1)return+oe(K[te-1],te-1,K);var te,V=(te-1)*$,ne=Math.floor(V),W=+oe(K[ne],ne,K),fe=+oe(K[ne+1],ne+1,K);return W+(fe-W)*(V-ne)}}function L(K,$,oe){return K=g.call(K,c).sort(t),Math.ceil((oe-$)/(2*(C(K,.75)-C(K,.25))*Math.pow(K.length,-1/3)))}function R(K,$,oe){return Math.ceil((oe-$)/(3.5*d(K)*Math.pow(K.length,-1/3)))}function I(K,$){var oe=K.length,te=-1,V,ne;if($==null){for(;++te=V)for(ne=V;++tene&&(ne=V)}else for(;++te=V)for(ne=V;++tene&&(ne=V);return ne}function P(K,$){var oe=K.length,te=oe,V=-1,ne,W=0;if($==null)for(;++V=0;)for(W=K[$],oe=W.length;--oe>=0;)ne[--V]=W[oe];return ne}function N(K,$){var oe=K.length,te=-1,V,ne;if($==null){for(;++te=V)for(ne=V;++teV&&(ne=V)}else for(;++te=V)for(ne=V;++teV&&(ne=V);return ne}function U(K,$){for(var oe=$.length,te=new Array(oe);oe--;)te[oe]=K[$[oe]];return te}function G(K,$){if(oe=K.length){var oe,te=0,V=0,ne,W=K[V];for($==null&&($=t);++te{(function(e,t){typeof Y5=="object"&&typeof L_e<"u"?t(Y5,q_()):typeof define=="function"&&define.amd?define(["exports","d3-array"],t):(e=e||self,t(e.d3=e.d3||{},e.d3))})(Y5,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(be){a(i,be,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(be,Oe,ot){var Ke=be.s=Oe+ot,xt=Ke-Oe,Ft=Ke-xt;be.t=Oe-Ft+(ot-xt)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,f=l/4,c=l*2,h=180/l,d=l/180,v=Math.abs,m=Math.atan,b=Math.atan2,g=Math.cos,_=Math.ceil,T=Math.exp,w=Math.log,k=Math.pow,x=Math.sin,M=Math.sign||function(be){return be>0?1:be<0?-1:0},A=Math.sqrt,p=Math.tan;function S(be){return be>1?0:be<-1?l:Math.acos(be)}function y(be){return be>1?u:be<-1?-u:Math.asin(be)}function E(be){return(be=x(be/2))*be}function C(){}function L(be,Oe){be&&I.hasOwnProperty(be.type)&&I[be.type](be,Oe)}var R={Feature:function(be,Oe){L(be.geometry,Oe)},FeatureCollection:function(be,Oe){for(var ot=be.features,Ke=-1,xt=ot.length;++Ke=0?1:-1,xt=Ke*ot,Ft=g(Oe),jt=x(Oe),$t=O*jt,Kt=j*Ft+$t*g(xt),sr=$t*Ke*x(xt);N.add(b(sr,Kt)),Q=be,j=Ft,O=jt}function V(be){return U.reset(),q(be,Z),U*2}function ne(be){return[b(be[1],be[0]),y(be[2])]}function W(be){var Oe=be[0],ot=be[1],Ke=g(ot);return[Ke*g(Oe),Ke*x(Oe),x(ot)]}function fe(be,Oe){return be[0]*Oe[0]+be[1]*Oe[1]+be[2]*Oe[2]}function ge(be,Oe){return[be[1]*Oe[2]-be[2]*Oe[1],be[2]*Oe[0]-be[0]*Oe[2],be[0]*Oe[1]-be[1]*Oe[0]]}function Ce(be,Oe){be[0]+=Oe[0],be[1]+=Oe[1],be[2]+=Oe[2]}function Ne(be,Oe){return[be[0]*Oe,be[1]*Oe,be[2]*Oe]}function pe(be){var Oe=A(be[0]*be[0]+be[1]*be[1]+be[2]*be[2]);be[0]/=Oe,be[1]/=Oe,be[2]/=Oe}var me,Ie,Re,ze,Be,tt,rt,ce,Ee=r(),Ae,Pe,He={point:Fe,lineStart:Ue,lineEnd:Ge,polygonStart:function(){He.point=lt,He.lineStart=it,He.lineEnd=wt,Ee.reset(),Z.polygonStart()},polygonEnd:function(){Z.polygonEnd(),He.point=Fe,He.lineStart=Ue,He.lineEnd=Ge,N<0?(me=-(Re=180),Ie=-(ze=90)):Ee>o?ze=90:Ee<-o&&(Ie=-90),Pe[0]=me,Pe[1]=Re},sphere:function(){me=-(Re=180),Ie=-(ze=90)}};function Fe(be,Oe){Ae.push(Pe=[me=be,Re=be]),Oeze&&(ze=Oe)}function ke(be,Oe){var ot=W([be*d,Oe*d]);if(ce){var Ke=ge(ce,ot),xt=[Ke[1],-Ke[0],0],Ft=ge(xt,Ke);pe(Ft),Ft=ne(Ft);var jt=be-Be,$t=jt>0?1:-1,Kt=Ft[0]*h*$t,sr,Yt=v(jt)>180;Yt^($t*Beze&&(ze=sr)):(Kt=(Kt+360)%360-180,Yt^($t*Beze&&(ze=Oe))),Yt?be_t(me,Re)&&(Re=be):_t(be,Re)>_t(me,Re)&&(me=be):Re>=me?(beRe&&(Re=be)):be>Be?_t(me,be)>_t(me,Re)&&(Re=be):_t(be,Re)>_t(me,Re)&&(me=be)}else Ae.push(Pe=[me=be,Re=be]);Oeze&&(ze=Oe),ce=ot,Be=be}function Ue(){He.point=ke}function Ge(){Pe[0]=me,Pe[1]=Re,He.point=Fe,ce=null}function lt(be,Oe){if(ce){var ot=be-Be;Ee.add(v(ot)>180?ot+(ot>0?360:-360):ot)}else tt=be,rt=Oe;Z.point(be,Oe),ke(be,Oe)}function it(){Z.lineStart()}function wt(){lt(tt,rt),Z.lineEnd(),v(Ee)>o&&(me=-(Re=180)),Pe[0]=me,Pe[1]=Re,ce=null}function _t(be,Oe){return(Oe-=be)<0?Oe+360:Oe}function Tt(be,Oe){return be[0]-Oe[0]}function nt(be,Oe){return be[0]<=be[1]?be[0]<=Oe&&Oe<=be[1]:Oe_t(Ke[0],Ke[1])&&(Ke[1]=xt[1]),_t(xt[0],Ke[1])>_t(Ke[0],Ke[1])&&(Ke[0]=xt[0])):Ft.push(Ke=xt);for(jt=-1/0,ot=Ft.length-1,Oe=0,Ke=Ft[ot];Oe<=ot;Ke=xt,++Oe)xt=Ft[Oe],($t=_t(Ke[1],xt[0]))>jt&&(jt=$t,me=xt[0],Re=Ke[1])}return Ae=Pe=null,me===1/0||Ie===1/0?[[NaN,NaN],[NaN,NaN]]:[[me,Ie],[Re,ze]]}var At,Ye,je,$e,ve,Y,ie,Te,Ve,at,ft,Ht,Xt,St,Vt,er,_r={sphere:C,point:br,lineStart:tn,lineEnd:sn,polygonStart:function(){_r.lineStart=Hr,_r.lineEnd=Br},polygonEnd:function(){_r.lineStart=tn,_r.lineEnd=sn}};function br(be,Oe){be*=d,Oe*=d;var ot=g(Oe);or(ot*g(be),ot*x(be),x(Oe))}function or(be,Oe,ot){++At,je+=(be-je)/At,$e+=(Oe-$e)/At,ve+=(ot-ve)/At}function tn(){_r.point=Lr}function Lr(be,Oe){be*=d,Oe*=d;var ot=g(Oe);St=ot*g(be),Vt=ot*x(be),er=x(Oe),_r.point=Gr,or(St,Vt,er)}function Gr(be,Oe){be*=d,Oe*=d;var ot=g(Oe),Ke=ot*g(be),xt=ot*x(be),Ft=x(Oe),jt=b(A((jt=Vt*Ft-er*xt)*jt+(jt=er*Ke-St*Ft)*jt+(jt=St*xt-Vt*Ke)*jt),St*Ke+Vt*xt+er*Ft);Ye+=jt,Y+=jt*(St+(St=Ke)),ie+=jt*(Vt+(Vt=xt)),Te+=jt*(er+(er=Ft)),or(St,Vt,er)}function sn(){_r.point=br}function Hr(){_r.point=qn}function Br(){kn(Ht,Xt),_r.point=br}function qn(be,Oe){Ht=be,Xt=Oe,be*=d,Oe*=d,_r.point=kn;var ot=g(Oe);St=ot*g(be),Vt=ot*x(be),er=x(Oe),or(St,Vt,er)}function kn(be,Oe){be*=d,Oe*=d;var ot=g(Oe),Ke=ot*g(be),xt=ot*x(be),Ft=x(Oe),jt=Vt*Ft-er*xt,$t=er*Ke-St*Ft,Kt=St*xt-Vt*Ke,sr=A(jt*jt+$t*$t+Kt*Kt),Yt=y(sr),nr=sr&&-Yt/sr;Ve+=nr*jt,at+=nr*$t,ft+=nr*Kt,Ye+=Yt,Y+=Yt*(St+(St=Ke)),ie+=Yt*(Vt+(Vt=xt)),Te+=Yt*(er+(er=Ft)),or(St,Vt,er)}function Yn(be){At=Ye=je=$e=ve=Y=ie=Te=Ve=at=ft=0,q(be,_r);var Oe=Ve,ot=at,Ke=ft,xt=Oe*Oe+ot*ot+Ke*Ke;return xtl?be+Math.round(-be/c)*c:be,Oe]}wn.invert=wn;function Si(be,Oe,ot){return(be%=c)?Oe||ot?Fn(ia(be),An(Oe,ot)):ia(be):Oe||ot?An(Oe,ot):wn}function Aa(be){return function(Oe,ot){return Oe+=be,[Oe>l?Oe-c:Oe<-l?Oe+c:Oe,ot]}}function ia(be){var Oe=Aa(be);return Oe.invert=Aa(-be),Oe}function An(be,Oe){var ot=g(be),Ke=x(be),xt=g(Oe),Ft=x(Oe);function jt($t,Kt){var sr=g(Kt),Yt=g($t)*sr,nr=x($t)*sr,Qt=x(Kt),cr=Qt*ot+Yt*Ke;return[b(nr*xt-cr*Ft,Yt*ot-Qt*Ke),y(cr*xt+nr*Ft)]}return jt.invert=function($t,Kt){var sr=g(Kt),Yt=g($t)*sr,nr=x($t)*sr,Qt=x(Kt),cr=Qt*xt-nr*Ft;return[b(nr*xt+Qt*Ft,Yt*ot+cr*Ke),y(cr*ot-Yt*Ke)]},jt}function Ji(be){be=Si(be[0]*d,be[1]*d,be.length>2?be[2]*d:0);function Oe(ot){return ot=be(ot[0]*d,ot[1]*d),ot[0]*=h,ot[1]*=h,ot}return Oe.invert=function(ot){return ot=be.invert(ot[0]*d,ot[1]*d),ot[0]*=h,ot[1]*=h,ot},Oe}function ii(be,Oe,ot,Ke,xt,Ft){if(ot){var jt=g(Oe),$t=x(Oe),Kt=Ke*ot;xt==null?(xt=Oe+Ke*c,Ft=Oe-Kt/2):(xt=bo(jt,xt),Ft=bo(jt,Ft),(Ke>0?xtFt)&&(xt+=Ke*c));for(var sr,Yt=xt;Ke>0?Yt>Ft:Yt1&&be.push(be.pop().concat(be.shift()))},result:function(){var ot=be;return be=[],Oe=null,ot}}}function si(be,Oe){return v(be[0]-Oe[0])=0;--$t)xt.point((nr=Yt[$t])[0],nr[1]);else Ke(Qt.x,Qt.p.x,-1,xt);Qt=Qt.p}Qt=Qt.o,Yt=Qt.z,cr=!cr}while(!Qt.v);xt.lineEnd()}}}function ma(be){if(Oe=be.length){for(var Oe,ot=0,Ke=be[0],xt;++ot=0?1:-1,$r=Gn*Kn,Hi=$r>l,Zn=Jr*Ze;if(oa.add(b(Zn*Gn*x($r),jr*fn+Zn*g($r))),jt+=Hi?Kn+Gn*c:Kn,Hi^cr>=ot^yr>=ot){var uo=ge(W(Qt),W(Qr));pe(uo);var ji=ge(Ft,uo);pe(ji);var Vi=(Hi^Kn>=0?-1:1)*y(ji[2]);(Ke>Vi||Ke===Vi&&(uo[0]||uo[1]))&&($t+=Hi^Kn>=0?1:-1)}}return(jt<-o||jt0){for(Kt||(xt.polygonStart(),Kt=!0),xt.lineStart(),fn=0;fn1&&Cr&2&&Ze.push(Ze.pop().concat(Ze.shift())),Yt.push(Ze.filter(De))}}return Qt}}function De(be){return be.length>1}function ct(be,Oe){return((be=be.x)[0]<0?be[1]-u-o:u-be[1])-((Oe=Oe.x)[0]<0?Oe[1]-u-o:u-Oe[1])}var ht=xu(function(){return!0},Mt,Lt,[-l,-u]);function Mt(be){var Oe=NaN,ot=NaN,Ke=NaN,xt;return{lineStart:function(){be.lineStart(),xt=1},point:function(Ft,jt){var $t=Ft>0?l:-l,Kt=v(Ft-Oe);v(Kt-l)0?u:-u),be.point(Ke,ot),be.lineEnd(),be.lineStart(),be.point($t,ot),be.point(Ft,ot),xt=0):Ke!==$t&&Kt>=l&&(v(Oe-Ke)o?m((x(Oe)*(Ft=g(Ke))*x(ot)-x(Ke)*(xt=g(Oe))*x(be))/(xt*Ft*jt)):(Oe+Ke)/2}function Lt(be,Oe,ot,Ke){var xt;if(be==null)xt=ot*u,Ke.point(-l,xt),Ke.point(0,xt),Ke.point(l,xt),Ke.point(l,0),Ke.point(l,-xt),Ke.point(0,-xt),Ke.point(-l,-xt),Ke.point(-l,0),Ke.point(-l,xt);else if(v(be[0]-Oe[0])>o){var Ft=be[0]0,xt=v(Oe)>o;function Ft(Yt,nr,Qt,cr){ii(cr,be,ot,Qt,Yt,nr)}function jt(Yt,nr){return g(Yt)*g(nr)>Oe}function $t(Yt){var nr,Qt,cr,pr,Jr;return{lineStart:function(){pr=cr=!1,Jr=1},point:function(jr,rn){var Qr=[jr,rn],yr,Cr=jt(jr,rn),Ze=Ke?Cr?0:sr(jr,rn):Cr?sr(jr+(jr<0?l:-l),rn):0;if(!nr&&(pr=cr=Cr)&&Yt.lineStart(),Cr!==cr&&(yr=Kt(nr,Qr),(!yr||si(nr,yr)||si(Qr,yr))&&(Qr[2]=1)),Cr!==cr)Jr=0,Cr?(Yt.lineStart(),yr=Kt(Qr,nr),Yt.point(yr[0],yr[1])):(yr=Kt(nr,Qr),Yt.point(yr[0],yr[1],2),Yt.lineEnd()),nr=yr;else if(xt&&nr&&Ke^Cr){var fn;!(Ze&Qt)&&(fn=Kt(Qr,nr,!0))&&(Jr=0,Ke?(Yt.lineStart(),Yt.point(fn[0][0],fn[0][1]),Yt.point(fn[1][0],fn[1][1]),Yt.lineEnd()):(Yt.point(fn[1][0],fn[1][1]),Yt.lineEnd(),Yt.lineStart(),Yt.point(fn[0][0],fn[0][1],3)))}Cr&&(!nr||!si(nr,Qr))&&Yt.point(Qr[0],Qr[1]),nr=Qr,cr=Cr,Qt=Ze},lineEnd:function(){cr&&Yt.lineEnd(),nr=null},clean:function(){return Jr|(pr&&cr)<<1}}}function Kt(Yt,nr,Qt){var cr=W(Yt),pr=W(nr),Jr=[1,0,0],jr=ge(cr,pr),rn=fe(jr,jr),Qr=jr[0],yr=rn-Qr*Qr;if(!yr)return!Qt&&Yt;var Cr=Oe*rn/yr,Ze=-Oe*Qr/yr,fn=ge(Jr,jr),Kn=Ne(Jr,Cr),Gn=Ne(jr,Ze);Ce(Kn,Gn);var $r=fn,Hi=fe(Kn,$r),Zn=fe($r,$r),uo=Hi*Hi-Zn*(fe(Kn,Kn)-1);if(!(uo<0)){var ji=A(uo),Vi=Ne($r,(-Hi-ji)/Zn);if(Ce(Vi,Kn),Vi=ne(Vi),!Qt)return Vi;var Rr=Yt[0],li=nr[0],Ba=Yt[1],Ao=nr[1],Ua;li0^Vi[1]<(v(Vi[0]-Rr)l^(Rr<=Vi[0]&&Vi[0]<=li)){var ll=Ne($r,(-Hi+ji)/Zn);return Ce(ll,Kn),[Vi,ne(ll)]}}}function sr(Yt,nr){var Qt=Ke?be:l-be,cr=0;return Yt<-Qt?cr|=1:Yt>Qt&&(cr|=2),nr<-Qt?cr|=4:nr>Qt&&(cr|=8),cr}return xu(jt,$t,Ft,Ke?[0,-be]:[-l,be-l])}function zt(be,Oe,ot,Ke,xt,Ft){var jt=be[0],$t=be[1],Kt=Oe[0],sr=Oe[1],Yt=0,nr=1,Qt=Kt-jt,cr=sr-$t,pr;if(pr=ot-jt,!(!Qt&&pr>0)){if(pr/=Qt,Qt<0){if(pr0){if(pr>nr)return;pr>Yt&&(Yt=pr)}if(pr=xt-jt,!(!Qt&&pr<0)){if(pr/=Qt,Qt<0){if(pr>nr)return;pr>Yt&&(Yt=pr)}else if(Qt>0){if(pr0)){if(pr/=cr,cr<0){if(pr0){if(pr>nr)return;pr>Yt&&(Yt=pr)}if(pr=Ft-$t,!(!cr&&pr<0)){if(pr/=cr,cr<0){if(pr>nr)return;pr>Yt&&(Yt=pr)}else if(cr>0){if(pr0&&(be[0]=jt+Yt*Qt,be[1]=$t+Yt*cr),nr<1&&(Oe[0]=jt+nr*Qt,Oe[1]=$t+nr*cr),!0}}}}}var ar=1e9,kr=-ar;function Er(be,Oe,ot,Ke){function xt(sr,Yt){return be<=sr&&sr<=ot&&Oe<=Yt&&Yt<=Ke}function Ft(sr,Yt,nr,Qt){var cr=0,pr=0;if(sr==null||(cr=jt(sr,nr))!==(pr=jt(Yt,nr))||Kt(sr,Yt)<0^nr>0)do Qt.point(cr===0||cr===3?be:ot,cr>1?Ke:Oe);while((cr=(cr+nr+4)%4)!==pr);else Qt.point(Yt[0],Yt[1])}function jt(sr,Yt){return v(sr[0]-be)0?0:3:v(sr[0]-ot)0?2:1:v(sr[1]-Oe)0?1:0:Yt>0?3:2}function $t(sr,Yt){return Kt(sr.x,Yt.x)}function Kt(sr,Yt){var nr=jt(sr,1),Qt=jt(Yt,1);return nr!==Qt?nr-Qt:nr===0?Yt[1]-sr[1]:nr===1?sr[0]-Yt[0]:nr===2?sr[1]-Yt[1]:Yt[0]-sr[0]}return function(sr){var Yt=sr,nr=Ia(),Qt,cr,pr,Jr,jr,rn,Qr,yr,Cr,Ze,fn,Kn={point:Gn,lineStart:uo,lineEnd:ji,polygonStart:Hi,polygonEnd:Zn};function Gn(Rr,li){xt(Rr,li)&&Yt.point(Rr,li)}function $r(){for(var Rr=0,li=0,Ba=cr.length;liKe&&(gf-pf)*(Ke-ll)>(ns-ll)*(be-pf)&&++Rr:ns<=Ke&&(gf-pf)*(Ke-ll)<(ns-ll)*(be-pf)&&--Rr;return Rr}function Hi(){Yt=nr,Qt=[],cr=[],fn=!0}function Zn(){var Rr=$r(),li=fn&&Rr,Ba=(Qt=t.merge(Qt)).length;(li||Ba)&&(sr.polygonStart(),li&&(sr.lineStart(),Ft(null,null,1,sr),sr.lineEnd()),Ba&&wo(Qt,$t,Rr,Ft,sr),sr.polygonEnd()),Yt=sr,Qt=cr=pr=null}function uo(){Kn.point=Vi,cr&&cr.push(pr=[]),Ze=!0,Cr=!1,Qr=yr=NaN}function ji(){Qt&&(Vi(Jr,jr),rn&&Cr&&nr.rejoin(),Qt.push(nr.result())),Kn.point=Gn,Cr&&Yt.lineEnd()}function Vi(Rr,li){var Ba=xt(Rr,li);if(cr&&pr.push([Rr,li]),Ze)Jr=Rr,jr=li,rn=Ba,Ze=!1,Ba&&(Yt.lineStart(),Yt.point(Rr,li));else if(Ba&&Cr)Yt.point(Rr,li);else{var Ao=[Qr=Math.max(kr,Math.min(ar,Qr)),yr=Math.max(kr,Math.min(ar,yr))],Ua=[Rr=Math.max(kr,Math.min(ar,Rr)),li=Math.max(kr,Math.min(ar,li))];zt(Ao,Ua,be,Oe,ot,Ke)?(Cr||(Yt.lineStart(),Yt.point(Ao[0],Ao[1])),Yt.point(Ua[0],Ua[1]),Ba||Yt.lineEnd(),fn=!1):Ba&&(Yt.lineStart(),Yt.point(Rr,li),fn=!1)}Qr=Rr,yr=li,Cr=Ba}return Kn}}function Xr(){var be=0,Oe=0,ot=960,Ke=500,xt,Ft,jt;return jt={stream:function($t){return xt&&Ft===$t?xt:xt=Er(be,Oe,ot,Ke)(Ft=$t)},extent:function($t){return arguments.length?(be=+$t[0][0],Oe=+$t[0][1],ot=+$t[1][0],Ke=+$t[1][1],xt=Ft=null,jt):[[be,Oe],[ot,Ke]]}}}var vn=r(),ei,Rn,hi,Xn={sphere:C,point:C,lineStart:$i,lineEnd:C,polygonStart:C,polygonEnd:C};function $i(){Xn.point=sa,Xn.lineEnd=Ki}function Ki(){Xn.point=Xn.lineEnd=C}function sa(be,Oe){be*=d,Oe*=d,ei=be,Rn=x(Oe),hi=g(Oe),Xn.point=Ma}function Ma(be,Oe){be*=d,Oe*=d;var ot=x(Oe),Ke=g(Oe),xt=v(be-ei),Ft=g(xt),jt=x(xt),$t=Ke*jt,Kt=hi*ot-Rn*Ke*Ft,sr=Rn*ot+hi*Ke*Ft;vn.add(b(A($t*$t+Kt*Kt),sr)),ei=be,Rn=ot,hi=Ke}function qa(be){return vn.reset(),q(be,Xn),+vn}var Fa=[null,null],$o={type:"LineString",coordinates:Fa};function _o(be,Oe){return Fa[0]=be,Fa[1]=Oe,qa($o)}var ka={Feature:function(be,Oe){return zn(be.geometry,Oe)},FeatureCollection:function(be,Oe){for(var ot=be.features,Ke=-1,xt=ot.length;++Ke0&&(xt=_o(be[Ft],be[Ft-1]),xt>0&&ot<=xt&&Ke<=xt&&(ot+Ke-xt)*(1-Math.pow((ot-Ke)/xt,2))o}).map(Qt)).concat(t.range(_(Ft/sr)*sr,xt,sr).filter(function(yr){return v(yr%nr)>o}).map(cr))}return rn.lines=function(){return Qr().map(function(yr){return{type:"LineString",coordinates:yr}})},rn.outline=function(){return{type:"Polygon",coordinates:[pr(Ke).concat(Jr(jt).slice(1),pr(ot).reverse().slice(1),Jr($t).reverse().slice(1))]}},rn.extent=function(yr){return arguments.length?rn.extentMajor(yr).extentMinor(yr):rn.extentMinor()},rn.extentMajor=function(yr){return arguments.length?(Ke=+yr[0][0],ot=+yr[1][0],$t=+yr[0][1],jt=+yr[1][1],Ke>ot&&(yr=Ke,Ke=ot,ot=yr),$t>jt&&(yr=$t,$t=jt,jt=yr),rn.precision(jr)):[[Ke,$t],[ot,jt]]},rn.extentMinor=function(yr){return arguments.length?(Oe=+yr[0][0],be=+yr[1][0],Ft=+yr[0][1],xt=+yr[1][1],Oe>be&&(yr=Oe,Oe=be,be=yr),Ft>xt&&(yr=Ft,Ft=xt,xt=yr),rn.precision(jr)):[[Oe,Ft],[be,xt]]},rn.step=function(yr){return arguments.length?rn.stepMajor(yr).stepMinor(yr):rn.stepMinor()},rn.stepMajor=function(yr){return arguments.length?(Yt=+yr[0],nr=+yr[1],rn):[Yt,nr]},rn.stepMinor=function(yr){return arguments.length?(Kt=+yr[0],sr=+yr[1],rn):[Kt,sr]},rn.precision=function(yr){return arguments.length?(jr=+yr,Qt=Qo(Ft,xt,90),cr=rl(Oe,be,jr),pr=Qo($t,jt,90),Jr=rl(Ke,ot,jr),rn):jr},rn.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Bi(){return ef()()}function tf(be,Oe){var ot=be[0]*d,Ke=be[1]*d,xt=Oe[0]*d,Ft=Oe[1]*d,jt=g(Ke),$t=x(Ke),Kt=g(Ft),sr=x(Ft),Yt=jt*g(ot),nr=jt*x(ot),Qt=Kt*g(xt),cr=Kt*x(xt),pr=2*y(A(E(Ft-Ke)+jt*Kt*E(xt-ot))),Jr=x(pr),jr=pr?function(rn){var Qr=x(rn*=pr)/Jr,yr=x(pr-rn)/Jr,Cr=yr*Yt+Qr*Qt,Ze=yr*nr+Qr*cr,fn=yr*$t+Qr*sr;return[b(Ze,Cr)*h,b(fn,A(Cr*Cr+Ze*Ze))*h]}:function(){return[ot*h,Ke*h]};return jr.distance=pr,jr}function so(be){return be}var es=r(),Fs=r(),lo,bs,ws,rf,ts={point:C,lineStart:C,lineEnd:C,polygonStart:function(){ts.lineStart=Id,ts.lineEnd=wp},polygonEnd:function(){ts.lineStart=ts.lineEnd=ts.point=C,es.add(v(Fs)),Fs.reset()},result:function(){var be=es/2;return es.reset(),be}};function Id(){ts.point=kl}function kl(be,Oe){ts.point=Ja,lo=ws=be,bs=rf=Oe}function Ja(be,Oe){Fs.add(rf*be-ws*Oe),ws=be,rf=Oe}function wp(){Ja(lo,bs)}var Na=1/0,nf=Na,bu=-Na,rs=bu,nl={point:af,lineStart:C,lineEnd:C,polygonStart:C,polygonEnd:C,result:function(){var be=[[Na,nf],[bu,rs]];return bu=rs=-(nf=Na=1/0),be}};function af(be,Oe){bebu&&(bu=be),Oers&&(rs=Oe)}var Ui=0,zs=0,of=0,sf=0,wu=0,Hf=0,Ah=0,Mh=0,Ns=0,lf,Jl,_s,Va,To={point:il,lineStart:uf,lineEnd:qc,polygonStart:function(){To.lineStart=kh,To.lineEnd=_p},polygonEnd:function(){To.point=il,To.lineStart=uf,To.lineEnd=qc},result:function(){var be=Ns?[Ah/Ns,Mh/Ns]:Hf?[sf/Hf,wu/Hf]:of?[Ui/of,zs/of]:[NaN,NaN];return Ui=zs=of=sf=wu=Hf=Ah=Mh=Ns=0,be}};function il(be,Oe){Ui+=be,zs+=Oe,++of}function uf(){To.point=_u}function _u(be,Oe){To.point=jf,il(_s=be,Va=Oe)}function jf(be,Oe){var ot=be-_s,Ke=Oe-Va,xt=A(ot*ot+Ke*Ke);sf+=xt*(_s+be)/2,wu+=xt*(Va+Oe)/2,Hf+=xt,il(_s=be,Va=Oe)}function qc(){To.point=il}function kh(){To.point=qd}function _p(){zo(lf,Jl)}function qd(be,Oe){To.point=zo,il(lf=_s=be,Jl=Va=Oe)}function zo(be,Oe){var ot=be-_s,Ke=Oe-Va,xt=A(ot*ot+Ke*Ke);sf+=xt*(_s+be)/2,wu+=xt*(Va+Oe)/2,Hf+=xt,xt=Va*be-_s*Oe,Ah+=xt*(_s+be),Mh+=xt*(Va+Oe),Ns+=xt*3,il(_s=be,Va=Oe)}function Fc(be){this._context=be}Fc.prototype={_radius:4.5,pointRadius:function(be){return this._radius=be,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(be,Oe){switch(this._point){case 0:{this._context.moveTo(be,Oe),this._point=1;break}case 1:{this._context.lineTo(be,Oe);break}default:{this._context.moveTo(be+this._radius,Oe),this._context.arc(be,Oe,this._radius,0,c);break}}},result:C};var ff=r(),Sh,Tv,Fd,zc,Nc,Sl={point:C,lineStart:function(){Sl.point=Ch},lineEnd:function(){Sh&&Cl(Tv,Fd),Sl.point=C},polygonStart:function(){Sh=!0},polygonEnd:function(){Sh=null},result:function(){var be=+ff;return ff.reset(),be}};function Ch(be,Oe){Sl.point=Cl,Tv=zc=be,Fd=Nc=Oe}function Cl(be,Oe){zc-=be,Nc-=Oe,ff.add(A(zc*zc+Nc*Nc)),zc=be,Nc=Oe}function Eh(){this._string=[]}Eh.prototype={_radius:4.5,_circle:zd(4.5),pointRadius:function(be){return(be=+be)!==this._radius&&(this._radius=be,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(be,Oe){switch(this._point){case 0:{this._string.push("M",be,",",Oe),this._point=1;break}case 1:{this._string.push("L",be,",",Oe);break}default:{this._circle==null&&(this._circle=zd(this._radius)),this._string.push("M",be,",",Oe,this._circle);break}}},result:function(){if(this._string.length){var be=this._string.join("");return this._string=[],be}else return null}};function zd(be){return"m0,"+be+"a"+be+","+be+" 0 1,1 0,"+-2*be+"a"+be+","+be+" 0 1,1 0,"+2*be+"z"}function Oc(be,Oe){var ot=4.5,Ke,xt;function Ft(jt){return jt&&(typeof ot=="function"&&xt.pointRadius(+ot.apply(this,arguments)),q(jt,Ke(xt))),xt.result()}return Ft.area=function(jt){return q(jt,Ke(ts)),ts.result()},Ft.measure=function(jt){return q(jt,Ke(Sl)),Sl.result()},Ft.bounds=function(jt){return q(jt,Ke(nl)),nl.result()},Ft.centroid=function(jt){return q(jt,Ke(To)),To.result()},Ft.projection=function(jt){return arguments.length?(Ke=jt==null?(be=null,so):(be=jt).stream,Ft):be},Ft.context=function(jt){return arguments.length?(xt=jt==null?(Oe=null,new Eh):new Fc(Oe=jt),typeof ot!="function"&&xt.pointRadius(ot),Ft):Oe},Ft.pointRadius=function(jt){return arguments.length?(ot=typeof jt=="function"?jt:(xt.pointRadius(+jt),+jt),Ft):ot},Ft.projection(be).context(Oe)}function Nd(be){return{stream:No(be)}}function No(be){return function(Oe){var ot=new cf;for(var Ke in be)ot[Ke]=be[Ke];return ot.stream=Oe,ot}}function cf(){}cf.prototype={constructor:cf,point:function(be,Oe){this.stream.point(be,Oe)},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()}};function Vf(be,Oe,ot){var Ke=be.clipExtent&&be.clipExtent();return be.scale(150).translate([0,0]),Ke!=null&&be.clipExtent(null),q(ot,be.stream(nl)),Oe(nl.result()),Ke!=null&&be.clipExtent(Ke),be}function Bc(be,Oe,ot){return Vf(be,function(Ke){var xt=Oe[1][0]-Oe[0][0],Ft=Oe[1][1]-Oe[0][1],jt=Math.min(xt/(Ke[1][0]-Ke[0][0]),Ft/(Ke[1][1]-Ke[0][1])),$t=+Oe[0][0]+(xt-jt*(Ke[1][0]+Ke[0][0]))/2,Kt=+Oe[0][1]+(Ft-jt*(Ke[1][1]+Ke[0][1]))/2;be.scale(150*jt).translate([$t,Kt])},ot)}function Uc(be,Oe,ot){return Bc(be,[[0,0],Oe],ot)}function Tu(be,Oe,ot){return Vf(be,function(Ke){var xt=+Oe,Ft=xt/(Ke[1][0]-Ke[0][0]),jt=(xt-Ft*(Ke[1][0]+Ke[0][0]))/2,$t=-Ft*Ke[0][1];be.scale(150*Ft).translate([jt,$t])},ot)}function $a(be,Oe,ot){return Vf(be,function(Ke){var xt=+Oe,Ft=xt/(Ke[1][1]-Ke[0][1]),jt=-Ft*Ke[0][0],$t=(xt-Ft*(Ke[1][1]+Ke[0][1]))/2;be.scale(150*Ft).translate([jt,$t])},ot)}var Av=16,Mv=g(30*d);function Od(be,Oe){return+Oe?Lh(be,Oe):kv(be)}function kv(be){return No({point:function(Oe,ot){Oe=be(Oe,ot),this.stream.point(Oe[0],Oe[1])}})}function Lh(be,Oe){function ot(Ke,xt,Ft,jt,$t,Kt,sr,Yt,nr,Qt,cr,pr,Jr,jr){var rn=sr-Ke,Qr=Yt-xt,yr=rn*rn+Qr*Qr;if(yr>4*Oe&&Jr--){var Cr=jt+Qt,Ze=$t+cr,fn=Kt+pr,Kn=A(Cr*Cr+Ze*Ze+fn*fn),Gn=y(fn/=Kn),$r=v(v(fn)-1)Oe||v((rn*ji+Qr*Vi)/yr-.5)>.3||jt*Qt+$t*cr+Kt*pr2?Rr[2]%360*d:0,ji()):[$t*h,Kt*h,sr*h]},Zn.angle=function(Rr){return arguments.length?(nr=Rr%360*d,ji()):nr*h},Zn.reflectX=function(Rr){return arguments.length?(Qt=Rr?-1:1,ji()):Qt<0},Zn.reflectY=function(Rr){return arguments.length?(cr=Rr?-1:1,ji()):cr<0},Zn.precision=function(Rr){return arguments.length?(fn=Od(Kn,Ze=Rr*Rr),Vi()):A(Ze)},Zn.fitExtent=function(Rr,li){return Bc(Zn,Rr,li)},Zn.fitSize=function(Rr,li){return Uc(Zn,Rr,li)},Zn.fitWidth=function(Rr,li){return Tu(Zn,Rr,li)},Zn.fitHeight=function(Rr,li){return $a(Zn,Rr,li)};function ji(){var Rr=fr(ot,0,0,Qt,cr,nr).apply(null,Oe(Ft,jt)),li=(nr?fr:Wt)(ot,Ke-Rr[0],xt-Rr[1],Qt,cr,nr);return Yt=Si($t,Kt,sr),Kn=Fn(Oe,li),Gn=Fn(Yt,Kn),fn=Od(Kn,Ze),Vi()}function Vi(){return $r=Hi=null,Zn}return function(){return Oe=be.apply(this,arguments),Zn.invert=Oe.invert&&uo,ji()}}function Sn(be){var Oe=0,ot=l/3,Ke=Kr(be),xt=Ke(Oe,ot);return xt.parallels=function(Ft){return arguments.length?Ke(Oe=Ft[0]*d,ot=Ft[1]*d):[Oe*h,ot*h]},xt}function mi(be){var Oe=g(be);function ot(Ke,xt){return[Ke*Oe,x(xt)/Oe]}return ot.invert=function(Ke,xt){return[Ke/Oe,y(xt*Oe)]},ot}function Oa(be,Oe){var ot=x(be),Ke=(ot+x(Oe))/2;if(v(Ke)=.12&&jr<.234&&Jr>=-.425&&Jr<-.214?xt:jr>=.166&&jr<.234&&Jr>=-.214&&Jr<-.115?jt:ot).invert(Qt)},Yt.stream=function(Qt){return be&&Oe===Qt?be:be=Tp([ot.stream(Oe=Qt),xt.stream(Qt),jt.stream(Qt)])},Yt.precision=function(Qt){return arguments.length?(ot.precision(Qt),xt.precision(Qt),jt.precision(Qt),nr()):ot.precision()},Yt.scale=function(Qt){return arguments.length?(ot.scale(Qt),xt.scale(Qt*.35),jt.scale(Qt),Yt.translate(ot.translate())):ot.scale()},Yt.translate=function(Qt){if(!arguments.length)return ot.translate();var cr=ot.scale(),pr=+Qt[0],Jr=+Qt[1];return Ke=ot.translate(Qt).clipExtent([[pr-.455*cr,Jr-.238*cr],[pr+.455*cr,Jr+.238*cr]]).stream(sr),Ft=xt.translate([pr-.307*cr,Jr+.201*cr]).clipExtent([[pr-.425*cr+o,Jr+.12*cr+o],[pr-.214*cr-o,Jr+.234*cr-o]]).stream(sr),$t=jt.translate([pr-.205*cr,Jr+.212*cr]).clipExtent([[pr-.214*cr+o,Jr+.166*cr+o],[pr-.115*cr-o,Jr+.234*cr-o]]).stream(sr),nr()},Yt.fitExtent=function(Qt,cr){return Bc(Yt,Qt,cr)},Yt.fitSize=function(Qt,cr){return Uc(Yt,Qt,cr)},Yt.fitWidth=function(Qt,cr){return Tu(Yt,Qt,cr)},Yt.fitHeight=function(Qt,cr){return $a(Yt,Qt,cr)};function nr(){return be=Oe=null,Yt}return Yt.scale(1070)}function Bs(be){return function(Oe,ot){var Ke=g(Oe),xt=g(ot),Ft=be(Ke*xt);return[Ft*xt*x(Oe),Ft*x(ot)]}}function Ll(be){return function(Oe,ot){var Ke=A(Oe*Oe+ot*ot),xt=be(Ke),Ft=x(xt),jt=g(xt);return[b(Oe*Ft,Ke*jt),y(Ke&&ot*Ft/Ke)]}}var Ka=Bs(function(be){return A(2/(1+be))});Ka.invert=Ll(function(be){return 2*y(be/2)});function Rh(){return tr(Ka).scale(124.75).clipAngle(180-.001)}var $l=Bs(function(be){return(be=S(be))&&be/x(be)});$l.invert=Ll(function(be){return be});function Di(){return tr($l).scale(79.4188).clipAngle(180-.001)}function Us(be,Oe){return[be,w(p((u+Oe)/2))]}Us.invert=function(be,Oe){return[be,2*m(T(Oe))-u]};function Cv(){return Hc(Us).scale(961/c)}function Hc(be){var Oe=tr(be),ot=Oe.center,Ke=Oe.scale,xt=Oe.translate,Ft=Oe.clipExtent,jt=null,$t,Kt,sr;Oe.scale=function(nr){return arguments.length?(Ke(nr),Yt()):Ke()},Oe.translate=function(nr){return arguments.length?(xt(nr),Yt()):xt()},Oe.center=function(nr){return arguments.length?(ot(nr),Yt()):ot()},Oe.clipExtent=function(nr){return arguments.length?(nr==null?jt=$t=Kt=sr=null:(jt=+nr[0][0],$t=+nr[0][1],Kt=+nr[1][0],sr=+nr[1][1]),Yt()):jt==null?null:[[jt,$t],[Kt,sr]]};function Yt(){var nr=l*Ke(),Qt=Oe(Ji(Oe.rotate()).invert([0,0]));return Ft(jt==null?[[Qt[0]-nr,Qt[1]-nr],[Qt[0]+nr,Qt[1]+nr]]:be===Us?[[Math.max(Qt[0]-nr,jt),$t],[Math.min(Qt[0]+nr,Kt),sr]]:[[jt,Math.max(Qt[1]-nr,$t)],[Kt,Math.min(Qt[1]+nr,sr)]])}return Yt()}function jc(be){return p((u+be)/2)}function Bd(be,Oe){var ot=g(be),Ke=be===Oe?x(be):w(ot/g(Oe))/w(jc(Oe)/jc(be)),xt=ot*k(jc(be),Ke)/Ke;if(!Ke)return Us;function Ft(jt,$t){xt>0?$t<-u+o&&($t=-u+o):$t>u-o&&($t=u-o);var Kt=xt/k(jc($t),Ke);return[Kt*x(Ke*jt),xt-Kt*g(Ke*jt)]}return Ft.invert=function(jt,$t){var Kt=xt-$t,sr=M(Ke)*A(jt*jt+Kt*Kt),Yt=b(jt,v(Kt))*M(Kt);return Kt*Ke<0&&(Yt-=l*M(jt)*M(Kt)),[Yt/Ke,2*m(k(xt/sr,1/Ke))-u]},Ft}function Ph(){return Sn(Bd).scale(109.5).parallels([30,30])}function Au(be,Oe){return[be,Oe]}Au.invert=Au;function al(){return tr(Au).scale(152.63)}function Mu(be,Oe){var ot=g(be),Ke=be===Oe?x(be):(ot-g(Oe))/(Oe-be),xt=ot/Ke+be;if(v(Ke)o&&--Ke>0);return[be/(.8707+(Ft=ot*ot)*(-.131979+Ft*(-.013791+Ft*Ft*Ft*(.003971-.001529*Ft)))),ot]};function vf(){return tr(Gf).scale(175.295)}function Sa(be,Oe){return[g(Oe)*x(be),x(Oe)]}Sa.invert=Ll(y);function sl(){return tr(Sa).scale(249.5).clipAngle(90+o)}function df(be,Oe){var ot=g(Oe),Ke=1+g(be)*ot;return[ot*x(be)/Ke,x(Oe)/Ke]}df.invert=Ll(function(be){return 2*m(be)});function qh(){return tr(df).scale(250).clipAngle(142)}function Yc(be,Oe){return[w(p((u+Oe)/2)),-be]}Yc.invert=function(be,Oe){return[-Oe,2*m(T(be))-u]};function Ca(){var be=Hc(Yc),Oe=be.center,ot=be.rotate;return be.center=function(Ke){return arguments.length?Oe([-Ke[1],Ke[0]]):(Ke=Oe(),[Ke[1],-Ke[0]])},be.rotate=function(Ke){return arguments.length?ot([Ke[0],Ke[1],Ke.length>2?Ke[2]+90:90]):(Ke=ot(),[Ke[0],Ke[1],Ke[2]-90])},ot([0,0,90]).scale(159.155)}e.geoAlbers=Dh,e.geoAlbersUsa=Os,e.geoArea=V,e.geoAzimuthalEqualArea=Rh,e.geoAzimuthalEqualAreaRaw=Ka,e.geoAzimuthalEquidistant=Di,e.geoAzimuthalEquidistantRaw=$l,e.geoBounds=bt,e.geoCentroid=Yn,e.geoCircle=ga,e.geoClipAntimeridian=ht,e.geoClipCircle=ir,e.geoClipExtent=Xr,e.geoClipRectangle=Er,e.geoConicConformal=Ph,e.geoConicConformalRaw=Bd,e.geoConicEqualArea=yi,e.geoConicEqualAreaRaw=Oa,e.geoConicEquidistant=Ud,e.geoConicEquidistantRaw=Mu,e.geoContains=qs,e.geoDistance=_o,e.geoEqualEarth=Vc,e.geoEqualEarthRaw=ol,e.geoEquirectangular=al,e.geoEquirectangularRaw=Au,e.geoGnomonic=Hd,e.geoGnomonicRaw=Ih,e.geoGraticule=ef,e.geoGraticule10=Bi,e.geoIdentity=jd,e.geoInterpolate=tf,e.geoLength=qa,e.geoMercator=Cv,e.geoMercatorRaw=Us,e.geoNaturalEarth1=vf,e.geoNaturalEarth1Raw=Gf,e.geoOrthographic=sl,e.geoOrthographicRaw=Sa,e.geoPath=Oc,e.geoProjection=tr,e.geoProjectionMutator=Kr,e.geoRotation=Ji,e.geoStereographic=qh,e.geoStereographicRaw=df,e.geoStream=q,e.geoTransform=Nd,e.geoTransverseMercator=Ca,e.geoTransverseMercatorRaw=Yc,Object.defineProperty(e,"__esModule",{value:!0})})});var R_e=J((G5,D_e)=>{(function(e,t){typeof G5=="object"&&typeof D_e<"u"?t(G5,S9(),q_()):typeof define=="function"&&define.amd?define(["exports","d3-geo","d3-array"],t):t(e.d3=e.d3||{},e.d3,e.d3)})(G5,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,f=Math.max,c=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(re){return re>0?1:re<0?-1:0},m=Math.sin,b=Math.tan,g=1e-6,_=1e-12,T=Math.PI,w=T/2,k=T/4,x=Math.SQRT1_2,M=R(2),A=R(T),p=T*2,S=180/T,y=T/180;function E(re){return re?re/Math.sin(re):1}function C(re){return re>1?w:re<-1?-w:Math.asin(re)}function L(re){return re>1?0:re<-1?T:Math.acos(re)}function R(re){return re>0?Math.sqrt(re):0}function I(re){return re=s(2*re),(re-1)/(re+1)}function P(re){return(s(re)-s(-re))/2}function D(re){return(s(re)+s(-re))/2}function q(re){return u(re+R(re*re+1))}function N(re){return u(re+R(re*re-1))}function U(re){var le=b(re/2),de=2*u(o(re/2))/(le*le);function ye(Me,_e){var Le=o(Me),Qe=o(_e),st=m(_e),et=Qe*Le,ut=-((1-et?u((1+et)/2)/(1-et):-.5)+de/(1+et));return[ut*Qe*m(Me),ut*st]}return ye.invert=function(Me,_e){var Le=R(Me*Me+_e*_e),Qe=-re/2,st=50,et;if(!Le)return[0,0];do{var ut=Qe/2,yt=o(ut),Ct=m(ut),qt=Ct/yt,Zt=-u(n(yt));Qe-=et=(2/qt*Zt-de*qt-Le)/(-Zt/(Ct*Ct)+1-de/(2*yt*yt))*(yt<0?.7:1)}while(n(et)>g&&--st>0);var rr=m(Qe);return[a(Me*rr,Le*o(Qe)),C(_e*rr/Le)]},ye}function G(){var re=w,le=t.geoProjectionMutator(U),de=le(re);return de.radius=function(ye){return arguments.length?le(re=ye*y):re*S},de.scale(179.976).clipAngle(147)}function ee(re,le){var de=o(le),ye=E(L(de*o(re/=2)));return[2*de*m(re)*ye,m(le)*ye]}ee.invert=function(re,le){if(!(re*re+4*le*le>T*T+g)){var de=re,ye=le,Me=25;do{var _e=m(de),Le=m(de/2),Qe=o(de/2),st=m(ye),et=o(ye),ut=m(2*ye),yt=st*st,Ct=et*et,qt=Le*Le,Zt=1-Ct*Qe*Qe,rr=Zt?L(et*Qe)*R(dr=1/Zt):dr=0,dr,Ir=2*rr*et*Le-re,Ur=rr*st-le,an=dr*(Ct*qt+rr*et*Qe*yt),un=dr*(.5*_e*ut-rr*2*st*Le),on=dr*.25*(ut*Le-rr*st*Ct*_e),Mi=dr*(yt*Qe+rr*qt*et),Oi=un*on-Mi*an;if(!Oi)break;var Nn=(Ur*un-Ir*Mi)/Oi,ya=(Ir*on-Ur*an)/Oi;de-=Nn,ye-=ya}while((n(Nn)>g||n(ya)>g)&&--Me>0);return[de,ye]}};function Q(){return t.geoProjection(ee).scale(152.63)}function j(re){var le=m(re),de=o(re),ye=re>=0?1:-1,Me=b(ye*re),_e=(1+le-de)/2;function Le(Qe,st){var et=o(st),ut=o(Qe/=2);return[(1+et)*m(Qe),(ye*st>-a(ut,Me)-.001?0:-ye*10)+_e+m(st)*de-(1+et)*le*ut]}return Le.invert=function(Qe,st){var et=0,ut=0,yt=50;do{var Ct=o(et),qt=m(et),Zt=o(ut),rr=m(ut),dr=1+Zt,Ir=dr*qt-Qe,Ur=_e+rr*de-dr*le*Ct-st,an=dr*Ct/2,un=-qt*rr,on=le*dr*qt/2,Mi=de*Zt+le*Ct*rr,Oi=un*on-Mi*an,Nn=(Ur*un-Ir*Mi)/Oi/2,ya=(Ir*on-Ur*an)/Oi;n(ya)>2&&(ya/=2),et-=Nn,ut-=ya}while((n(Nn)>g||n(ya)>g)&&--yt>0);return ye*ut>-a(o(et),Me)-.001?[et*2,ut]:null},Le}function O(){var re=20*y,le=re>=0?1:-1,de=b(le*re),ye=t.geoProjectionMutator(j),Me=ye(re),_e=Me.stream;return Me.parallel=function(Le){return arguments.length?(de=b((le=(re=Le*y)>=0?1:-1)*re),ye(re)):re*S},Me.stream=function(Le){var Qe=Me.rotate(),st=_e(Le),et=(Me.rotate([0,0]),_e(Le)),ut=Me.precision();return Me.rotate(Qe),st.sphere=function(){et.polygonStart(),et.lineStart();for(var yt=le*-180;le*yt<180;yt+=le*90)et.point(yt,le*90);if(re)for(;le*(yt-=3*le*ut)>=-180;)et.point(yt,le*-a(o(yt*y/2),de)*S);et.lineEnd(),et.polygonEnd()},st},Me.scale(218.695).center([0,28.0974])}function Z(re,le){var de=b(le/2),ye=R(1-de*de),Me=1+ye*o(re/=2),_e=m(re)*ye/Me,Le=de/Me,Qe=_e*_e,st=Le*Le;return[4/3*_e*(3+Qe-3*st),4/3*Le*(3+3*Qe-st)]}Z.invert=function(re,le){if(re*=3/8,le*=3/8,!re&&n(le)>1)return null;var de=re*re,ye=le*le,Me=1+de+ye,_e=R((Me-R(Me*Me-4*le*le))/2),Le=C(_e)/3,Qe=_e?N(n(le/_e))/3:q(n(re))/3,st=o(Le),et=D(Qe),ut=et*et-st*st;return[v(re)*2*a(P(Qe)*st,.25-ut),v(le)*2*a(et*m(Le),.25+ut)]};function K(){return t.geoProjection(Z).scale(66.1603)}var $=R(8),oe=u(1+M);function te(re,le){var de=n(le);return de_&&--ye>0);return[re/(o(de)*($-1/m(de))),v(le)*de]};function V(){return t.geoProjection(te).scale(112.314)}function ne(re){var le=2*T/re;function de(ye,Me){var _e=t.geoAzimuthalEquidistantRaw(ye,Me);if(n(ye)>w){var Le=a(_e[1],_e[0]),Qe=R(_e[0]*_e[0]+_e[1]*_e[1]),st=le*d((Le-w)/le)+w,et=a(m(Le-=st),2-o(Le));Le=st+C(T/Qe*m(et))-et,_e[0]=Qe*o(Le),_e[1]=Qe*m(Le)}return _e}return de.invert=function(ye,Me){var _e=R(ye*ye+Me*Me);if(_e>w){var Le=a(Me,ye),Qe=le*d((Le-w)/le)+w,st=Le>Qe?-1:1,et=_e*o(Qe-Le),ut=1/b(st*L((et-T)/R(T*(T-2*et)+_e*_e)));Le=Qe+2*i((ut+st*R(ut*ut-3))/3),ye=_e*o(Le),Me=_e*m(Le)}return t.geoAzimuthalEquidistantRaw.invert(ye,Me)},de}function W(){var re=5,le=t.geoProjectionMutator(ne),de=le(re),ye=de.stream,Me=.01,_e=-o(Me*y),Le=m(Me*y);return de.lobes=function(Qe){return arguments.length?le(re=+Qe):re},de.stream=function(Qe){var st=de.rotate(),et=ye(Qe),ut=(de.rotate([0,0]),ye(Qe));return de.rotate(st),et.sphere=function(){ut.polygonStart(),ut.lineStart();for(var yt=0,Ct=360/re,qt=2*T/re,Zt=90-180/re,rr=w;yt0&&n(Me)>g);return ye<0?NaN:de}function pe(re,le,de){return le===void 0&&(le=40),de===void 0&&(de=_),function(ye,Me,_e,Le){var Qe,st,et;_e=_e===void 0?0:+_e,Le=Le===void 0?0:+Le;for(var ut=0;utQe){_e-=st/=2,Le-=et/=2;continue}Qe=Zt;var rr=(_e>0?-1:1)*de,dr=(Le>0?-1:1)*de,Ir=re(_e+rr,Le),Ur=re(_e,Le+dr),an=(Ir[0]-yt[0])/rr,un=(Ir[1]-yt[1])/rr,on=(Ur[0]-yt[0])/dr,Mi=(Ur[1]-yt[1])/dr,Oi=Mi*an-un*on,Nn=(n(Oi)<.5?.5:1)/Oi;if(st=(qt*on-Ct*Mi)*Nn,et=(Ct*un-qt*an)*Nn,_e+=st,Le+=et,n(st)0&&(Qe[1]*=1+st/1.5*Qe[0]*Qe[0]),Qe}return ye.invert=pe(ye),ye}function Ie(){return t.geoProjection(me()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Re(re,le){var de=re*m(le),ye=30,Me;do le-=Me=(le+m(le)-de)/(1+o(le));while(n(Me)>g&&--ye>0);return le/2}function ze(re,le,de){function ye(Me,_e){return[re*Me*o(_e=Re(de,_e)),le*m(_e)]}return ye.invert=function(Me,_e){return _e=C(_e/le),[Me/(re*o(_e)),C((2*_e+m(2*_e))/de)]},ye}var Be=ze(M/w,M,T);function tt(){return t.geoProjection(Be).scale(169.529)}var rt=2.00276,ce=1.11072;function Ee(re,le){var de=Re(T,le);return[rt*re/(1/o(le)+ce/o(de)),(le+M*m(de))/rt]}Ee.invert=function(re,le){var de=rt*le,ye=le<0?-k:k,Me=25,_e,Le;do Le=de-M*m(ye),ye-=_e=(m(2*ye)+2*ye-T*m(Le))/(2*o(2*ye)+2+T*o(Le)*M*o(ye));while(n(_e)>g&&--Me>0);return Le=de-M*m(ye),[re*(1/o(Le)+ce/o(ye))/rt,Le]};function Ae(){return t.geoProjection(Ee).scale(160.857)}function Pe(re){var le=0,de=t.geoProjectionMutator(re),ye=de(le);return ye.parallel=function(Me){return arguments.length?de(le=Me*y):le*S},ye}function He(re,le){return[re*o(le),le]}He.invert=function(re,le){return[re/o(le),le]};function Fe(){return t.geoProjection(He).scale(152.63)}function ke(re){if(!re)return He;var le=1/b(re);function de(ye,Me){var _e=le+re-Me,Le=_e&&ye*o(Me)/_e;return[_e*m(Le),le-_e*o(Le)]}return de.invert=function(ye,Me){var _e=R(ye*ye+(Me=le-Me)*Me),Le=le+re-_e;return[_e/o(Le)*a(ye,Me),Le]},de}function Ue(){return Pe(ke).scale(123.082).center([0,26.1441]).parallel(45)}function Ge(re){function le(de,ye){var Me=w-ye,_e=Me&&de*re*m(Me)/Me;return[Me*m(_e)/re,w-Me*o(_e)]}return le.invert=function(de,ye){var Me=de*re,_e=w-ye,Le=R(Me*Me+_e*_e),Qe=a(Me,_e);return[(Le?Le/m(Le):1)*Qe/re,w-Le]},le}function lt(){var re=.5,le=t.geoProjectionMutator(Ge),de=le(re);return de.fraction=function(ye){return arguments.length?le(re=+ye):re},de.scale(158.837)}var it=ze(1,4/T,T);function wt(){return t.geoProjection(it).scale(152.63)}function _t(re,le,de,ye,Me,_e){var Le=o(_e),Qe;if(n(re)>1||n(_e)>1)Qe=L(de*Me+le*ye*Le);else{var st=m(re/2),et=m(_e/2);Qe=2*C(R(st*st+le*ye*et*et))}return n(Qe)>g?[Qe,a(ye*m(_e),le*Me-de*ye*Le)]:[0,0]}function Tt(re,le,de){return L((re*re+le*le-de*de)/(2*re*le))}function nt(re){return re-2*T*l((re+T)/(2*T))}function bt(re,le,de){for(var ye=[[re[0],re[1],m(re[1]),o(re[1])],[le[0],le[1],m(le[1]),o(le[1])],[de[0],de[1],m(de[1]),o(de[1])]],Me=ye[2],_e,Le=0;Le<3;++Le,Me=_e)_e=ye[Le],Me.v=_t(_e[1]-Me[1],Me[3],Me[2],_e[3],_e[2],_e[0]-Me[0]),Me.point=[0,0];var Qe=Tt(ye[0].v[0],ye[2].v[0],ye[1].v[0]),st=Tt(ye[0].v[0],ye[1].v[0],ye[2].v[0]),et=T-Qe;ye[2].point[1]=0,ye[0].point[0]=-(ye[1].point[0]=ye[0].v[0]/2);var ut=[ye[2].point[0]=ye[0].point[0]+ye[2].v[0]*o(Qe),2*(ye[0].point[1]=ye[1].point[1]=ye[2].v[0]*m(Qe))];function yt(Ct,qt){var Zt=m(qt),rr=o(qt),dr=new Array(3),Ir;for(Ir=0;Ir<3;++Ir){var Ur=ye[Ir];if(dr[Ir]=_t(qt-Ur[1],Ur[3],Ur[2],rr,Zt,Ct-Ur[0]),!dr[Ir][0])return Ur.point;dr[Ir][1]=nt(dr[Ir][1]-Ur.v[1])}var an=ut.slice();for(Ir=0;Ir<3;++Ir){var un=Ir==2?0:Ir+1,on=Tt(ye[Ir].v[0],dr[Ir][0],dr[un][0]);dr[Ir][1]<0&&(on=-on),Ir?Ir==1?(on=st-on,an[0]-=dr[Ir][0]*o(on),an[1]-=dr[Ir][0]*m(on)):(on=et-on,an[0]+=dr[Ir][0]*o(on),an[1]+=dr[Ir][0]*m(on)):(an[0]+=dr[Ir][0]*o(on),an[1]-=dr[Ir][0]*m(on))}return an[0]/=3,an[1]/=3,an}return yt}function At(re){return re[0]*=y,re[1]*=y,re}function Ye(){return je([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function je(re,le,de){var ye=t.geoCentroid({type:"MultiPoint",coordinates:[re,le,de]}),Me=[-ye[0],-ye[1]],_e=t.geoRotation(Me),Le=bt(At(_e(re)),At(_e(le)),At(_e(de)));Le.invert=pe(Le);var Qe=t.geoProjection(Le).rotate(Me),st=Qe.center;return delete Qe.rotate,Qe.center=function(et){return arguments.length?st(_e(et)):_e.invert(st())},Qe.clipAngle(90)}function $e(re,le){var de=R(1-m(le));return[2/A*re*de,A*(1-de)]}$e.invert=function(re,le){var de=(de=le/A-1)*de;return[de>0?re*R(T/de)/2:0,C(1-de)]};function ve(){return t.geoProjection($e).scale(95.6464).center([0,30])}function Y(re){var le=b(re);function de(ye,Me){return[ye,(ye?ye/m(ye):1)*(m(Me)*o(ye)-le*o(Me))]}return de.invert=le?function(ye,Me){ye&&(Me*=m(ye)/ye);var _e=o(ye);return[ye,2*a(R(_e*_e+le*le-Me*Me)-_e,le-Me)]}:function(ye,Me){return[ye,C(ye?Me*b(ye)/ye:Me)]},de}function ie(){return Pe(Y).scale(249.828).clipAngle(90)}var Te=R(3);function Ve(re,le){return[Te*re*(2*o(2*le/3)-1)/A,Te*A*m(le/3)]}Ve.invert=function(re,le){var de=3*C(le/(Te*A));return[A*re/(Te*(2*o(2*de/3)-1)),de]};function at(){return t.geoProjection(Ve).scale(156.19)}function ft(re){var le=o(re);function de(ye,Me){return[ye*le,m(Me)/le]}return de.invert=function(ye,Me){return[ye/le,C(Me*le)]},de}function Ht(){return Pe(ft).parallel(38.58).scale(195.044)}function Xt(re){var le=o(re);function de(ye,Me){return[ye*le,(1+le)*b(Me/2)]}return de.invert=function(ye,Me){return[ye/le,i(Me/(1+le))*2]},de}function St(){return Pe(Xt).scale(124.75)}function Vt(re,le){var de=R(8/(3*T));return[de*re*(1-n(le)/T),de*le]}Vt.invert=function(re,le){var de=R(8/(3*T)),ye=le/de;return[re/(de*(1-n(ye)/T)),ye]};function er(){return t.geoProjection(Vt).scale(165.664)}function _r(re,le){var de=R(4-3*m(n(le)));return[2/R(6*T)*re*de,v(le)*R(2*T/3)*(2-de)]}_r.invert=function(re,le){var de=2-n(le)/R(2*T/3);return[re*R(6*T)/(2*de),v(le)*C((4-de*de)/3)]};function br(){return t.geoProjection(_r).scale(165.664)}function or(re,le){var de=R(T*(4+T));return[2/de*re*(1+R(1-4*le*le/(T*T))),4/de*le]}or.invert=function(re,le){var de=R(T*(4+T))/2;return[re*de/(1+R(1-le*le*(4+T)/(4*T))),le*de/2]};function tn(){return t.geoProjection(or).scale(180.739)}function Lr(re,le){var de=(2+w)*m(le);le/=2;for(var ye=0,Me=1/0;ye<10&&n(Me)>g;ye++){var _e=o(le);le-=Me=(le+m(le)*(_e+2)-de)/(2*_e*(1+_e))}return[2/R(T*(4+T))*re*(1+o(le)),2*R(T/(4+T))*m(le)]}Lr.invert=function(re,le){var de=le*R((4+T)/T)/2,ye=C(de),Me=o(ye);return[re/(2/R(T*(4+T))*(1+Me)),C((ye+de*(Me+2))/(2+w))]};function Gr(){return t.geoProjection(Lr).scale(180.739)}function sn(re,le){return[re*(1+o(le))/R(2+T),2*le/R(2+T)]}sn.invert=function(re,le){var de=R(2+T),ye=le*de/2;return[de*re/(1+o(ye)),ye]};function Hr(){return t.geoProjection(sn).scale(173.044)}function Br(re,le){for(var de=(1+w)*m(le),ye=0,Me=1/0;ye<10&&n(Me)>g;ye++)le-=Me=(le+m(le)-de)/(1+o(le));return de=R(2+T),[re*(1+o(le))/de,2*le/de]}Br.invert=function(re,le){var de=1+w,ye=R(de/2);return[re*2*ye/(1+o(le*=ye)),C((le+m(le))/de)]};function qn(){return t.geoProjection(Br).scale(173.044)}var kn=3+2*M;function Yn(re,le){var de=m(re/=2),ye=o(re),Me=R(o(le)),_e=o(le/=2),Le=m(le)/(_e+M*ye*Me),Qe=R(2/(1+Le*Le)),st=R((M*_e+(ye+de)*Me)/(M*_e+(ye-de)*Me));return[kn*(Qe*(st-1/st)-2*u(st)),kn*(Qe*Le*(st+1/st)-2*i(Le))]}Yn.invert=function(re,le){if(!(_e=Z.invert(re/1.2,le*1.065)))return null;var de=_e[0],ye=_e[1],Me=20,_e;re/=kn,le/=kn;do{var Le=de/2,Qe=ye/2,st=m(Le),et=o(Le),ut=m(Qe),yt=o(Qe),Ct=o(ye),qt=R(Ct),Zt=ut/(yt+M*et*qt),rr=Zt*Zt,dr=R(2/(1+rr)),Ir=M*yt+(et+st)*qt,Ur=M*yt+(et-st)*qt,an=Ir/Ur,un=R(an),on=un-1/un,Mi=un+1/un,Oi=dr*on-2*u(un)-re,Nn=dr*Zt*Mi-2*i(Zt)-le,ya=ut&&x*qt*st*rr/ut,Ri=(M*et*yt+qt)/(2*(yt+M*et*qt)*(yt+M*et*qt)*qt),Ts=-.5*Zt*dr*dr*dr,mf=Ts*ya,Gc=Ts*Ri,as=(as=2*yt+M*qt*(et-st))*as*un,Mo=(M*et*yt*qt+Ct)/as,Ql=-(M*st*ut)/(qt*as),ul=on*mf-2*Mo/un+dr*(Mo+Mo/an),Eu=on*Gc-2*Ql/un+dr*(Ql+Ql/an),yf=Zt*Mi*mf-2*ya/(1+rr)+dr*Mi*ya+dr*Zt*(Mo-Mo/an),Wf=Zt*Mi*Gc-2*Ri/(1+rr)+dr*Mi*Ri+dr*Zt*(Ql-Ql/an),js=Eu*yf-Wf*ul;if(!js)break;var Wc=(Nn*Eu-Oi*Wf)/js,Dv=(Oi*yf-Nn*ul)/js;de-=Wc,ye=f(-w,c(w,ye-Dv))}while((n(Wc)>g||n(Dv)>g)&&--Me>0);return n(n(ye)-w)ye){var yt=R(ut),Ct=a(et,st),qt=de*d(Ct/de),Zt=Ct-qt,rr=re*o(Zt),dr=(re*m(Zt)-Zt*m(rr))/(w-rr),Ir=si(Zt,dr),Ur=(T-re)/aa(Ir,rr,T);st=yt;var an=50,un;do st-=un=(re+aa(Ir,rr,st)*Ur-yt)/(Ir(st)*Ur);while(n(un)>g&&--an>0);et=Zt*m(st),stye){var st=R(Qe),et=a(Le,_e),ut=de*d(et/de),yt=et-ut;_e=st*o(yt),Le=st*m(yt);for(var Ct=_e-w,qt=m(_e),Zt=Le/qt,rr=_eg||n(Zt)>g)&&--rr>0);return[yt,Ct]},st}var oa=ma(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function yu(){return t.geoProjection(oa).scale(149.995)}var Xl=ma(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function xu(){return t.geoProjection(Xl).scale(153.93)}var De=ma(5/6*T,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ct(){return t.geoProjection(De).scale(130.945)}function ht(re,le){var de=re*re,ye=le*le;return[re*(1-.162388*ye)*(.87-952426e-9*de*de),le*(1+ye/12)]}ht.invert=function(re,le){var de=re,ye=le,Me=50,_e;do{var Le=ye*ye;ye-=_e=(ye*(1+Le/12)-le)/(1+Le/4)}while(n(_e)>g&&--Me>0);Me=50,re/=1-.162388*Le;do{var Qe=(Qe=de*de)*Qe;de-=_e=(de*(.87-952426e-9*Qe)-re)/(.87-.00476213*Qe)}while(n(_e)>g&&--Me>0);return[de,ye]};function Mt(){return t.geoProjection(ht).scale(131.747)}var Gt=ma(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Lt(){return t.geoProjection(Gt).scale(131.087)}function ir(re){var le=re(w,0)[0]-re(-w,0)[0];function de(ye,Me){var _e=ye>0?-.5:.5,Le=re(ye+_e*T,Me);return Le[0]-=_e*le,Le}return re.invert&&(de.invert=function(ye,Me){var _e=ye>0?-.5:.5,Le=re.invert(ye+_e*le,Me),Qe=Le[0]-_e*T;return Qe<-T?Qe+=2*T:Qe>T&&(Qe-=2*T),Le[0]=Qe,Le}),de}function zt(re,le){var de=v(re),ye=v(le),Me=o(le),_e=o(re)*Me,Le=m(re)*Me,Qe=m(ye*le);re=n(a(Le,Qe)),le=C(_e),n(re-w)>g&&(re%=w);var st=ar(re>T/4?w-re:re,le);return re>T/4&&(Qe=st[0],st[0]=-st[1],st[1]=-Qe),st[0]*=de,st[1]*=-ye,st}zt.invert=function(re,le){n(re)>1&&(re=v(re)*2-re),n(le)>1&&(le=v(le)*2-le);var de=v(re),ye=v(le),Me=-de*re,_e=-ye*le,Le=_e/Me<1,Qe=kr(Le?_e:Me,Le?Me:_e),st=Qe[0],et=Qe[1],ut=o(et);return Le&&(st=-w-st),[de*(a(m(st)*ut,-m(et))+T),ye*C(o(st)*ut)]};function ar(re,le){if(le===w)return[0,0];var de=m(le),ye=de*de,Me=ye*ye,_e=1+Me,Le=1+3*Me,Qe=1-Me,st=C(1/R(_e)),et=Qe+ye*_e*st,ut=(1-de)/et,yt=R(ut),Ct=ut*_e,qt=R(Ct),Zt=yt*Qe,rr,dr;if(re===0)return[0,-(Zt+ye*qt)];var Ir=o(le),Ur=1/Ir,an=2*de*Ir,un=(-3*ye+st*Le)*an,on=(-et*Ir-(1-de)*un)/(et*et),Mi=.5*on/yt,Oi=Qe*Mi-2*ye*yt*an,Nn=ye*_e*on+ut*Le*an,ya=-Ur*an,Ri=-Ur*Nn,Ts=-2*Ur*Oi,mf=4*re/T,Gc;if(re>.222*T||le.175*T){if(rr=(Zt+ye*R(Ct*(1+Me)-Zt*Zt))/(1+Me),re>T/4)return[rr,rr];var as=rr,Mo=.5*rr;rr=.5*(Mo+as),dr=50;do{var Ql=R(Ct-rr*rr),ul=rr*(Ts+ya*Ql)+Ri*C(rr/qt)-mf;if(!ul)break;ul<0?Mo=rr:as=rr,rr=.5*(Mo+as)}while(n(as-Mo)>g&&--dr>0)}else{rr=g,dr=25;do{var Eu=rr*rr,yf=R(Ct-Eu),Wf=Ts+ya*yf,js=rr*Wf+Ri*C(rr/qt)-mf,Wc=Wf+(Ri-ya*Eu)/yf;rr-=Gc=yf?js/Wc:0}while(n(Gc)>g&&--dr>0)}return[rr,-Zt-ye*R(Ct-rr*rr)]}function kr(re,le){for(var de=0,ye=1,Me=.5,_e=50;;){var Le=Me*Me,Qe=R(Me),st=C(1/R(1+Le)),et=1-Le+Me*(1+Le)*st,ut=(1-Qe)/et,yt=R(ut),Ct=ut*(1+Le),qt=yt*(1-Le),Zt=Ct-re*re,rr=R(Zt),dr=le+qt+Me*rr;if(n(ye-de)<_||--_e===0||dr===0)break;dr>0?de=Me:ye=Me,Me=.5*(de+ye)}if(!_e)return null;var Ir=C(Qe),Ur=o(Ir),an=1/Ur,un=2*Qe*Ur,on=(-3*Me+st*(1+3*Le))*un,Mi=(-et*Ur-(1-Qe)*on)/(et*et),Oi=.5*Mi/yt,Nn=(1-Le)*Oi-2*Me*yt*un,ya=-2*an*Nn,Ri=-an*un,Ts=-an*(Me*(1+Le)*Mi+ut*(1+3*Le)*un);return[T/4*(re*(ya+Ri*rr)+Ts*C(re/R(Ct))),Ir]}function Er(){return t.geoProjection(ir(zt)).scale(239.75)}function Xr(re,le,de){var ye,Me,_e;return re?(ye=vn(re,de),le?(Me=vn(le,1-de),_e=Me[1]*Me[1]+de*ye[0]*ye[0]*Me[0]*Me[0],[[ye[0]*Me[2]/_e,ye[1]*ye[2]*Me[0]*Me[1]/_e],[ye[1]*Me[1]/_e,-ye[0]*ye[2]*Me[0]*Me[2]/_e],[ye[2]*Me[1]*Me[2]/_e,-de*ye[0]*ye[1]*Me[0]/_e]]):[[ye[0],0],[ye[1],0],[ye[2],0]]):(Me=vn(le,1-de),[[0,Me[0]/Me[1]],[1/Me[1],0],[Me[2]/Me[1],0]])}function vn(re,le){var de,ye,Me,_e,Le;if(le=1-g)return de=(1-le)/4,ye=D(re),_e=I(re),Me=1/ye,Le=ye*P(re),[_e+de*(Le-re)/(ye*ye),Me-de*_e*Me*(Le-re),Me+de*_e*Me*(Le+re),2*i(s(re))-w+de*(Le-re)/ye];var Qe=[1,0,0,0,0,0,0,0,0],st=[R(le),0,0,0,0,0,0,0,0],et=0;for(ye=R(1-le),Le=1;n(st[et]/Qe[et])>g&&et<8;)de=Qe[et++],st[et]=(de-ye)/2,Qe[et]=(de+ye)/2,ye=R(de*ye),Le*=2;Me=Le*Qe[et]*re;do _e=st[et]*m(ye=Me)/Qe[et],Me=(C(_e)+Me)/2;while(--et);return[m(Me),_e=o(Me),_e/o(Me-ye),Me]}function ei(re,le,de){var ye=n(re),Me=n(le),_e=P(Me);if(ye){var Le=1/m(ye),Qe=1/(b(ye)*b(ye)),st=-(Qe+de*(_e*_e*Le*Le)-1+de),et=(de-1)*Qe,ut=(-st+R(st*st-4*et))/2;return[Rn(i(1/R(ut)),de)*v(re),Rn(i(R((ut/Qe-1)/de)),1-de)*v(le)]}return[0,Rn(i(_e),1-de)*v(le)]}function Rn(re,le){if(!le)return re;if(le===1)return u(b(re/2+k));for(var de=1,ye=R(1-le),Me=R(le),_e=0;n(Me)>g;_e++){if(re%T){var Le=i(ye*b(re)/de);Le<0&&(Le+=T),re+=Le+~~(re/T)*T}else re+=re;Me=(de+ye)/2,ye=R(de*ye),Me=((de=Me)-ye)/2}return re/(h(2,_e)*de)}function hi(re,le){var de=(M-1)/(M+1),ye=R(1-de*de),Me=Rn(w,ye*ye),_e=-1,Le=u(b(T/4+n(le)/2)),Qe=s(_e*Le)/R(de),st=Xn(Qe*o(_e*re),Qe*m(_e*re)),et=ei(st[0],st[1],ye*ye);return[-et[1],(le>=0?1:-1)*(.5*Me-et[0])]}function Xn(re,le){var de=re*re,ye=le+1,Me=1-de-le*le;return[.5*((re>=0?w:-w)-a(Me,2*re)),-.25*u(Me*Me+4*de)+.5*u(ye*ye+de)]}function $i(re,le){var de=le[0]*le[0]+le[1]*le[1];return[(re[0]*le[0]+re[1]*le[1])/de,(re[1]*le[0]-re[0]*le[1])/de]}hi.invert=function(re,le){var de=(M-1)/(M+1),ye=R(1-de*de),Me=Rn(w,ye*ye),_e=-1,Le=Xr(.5*Me-le,-re,ye*ye),Qe=$i(Le[0],Le[1]),st=a(Qe[1],Qe[0])/_e;return[st,2*i(s(.5/_e*u(de*Qe[0]*Qe[0]+de*Qe[1]*Qe[1])))-w]};function Ki(){return t.geoProjection(ir(hi)).scale(151.496)}function sa(re){var le=m(re),de=o(re),ye=Ma(re);ye.invert=Ma(-re);function Me(_e,Le){var Qe=ye(_e,Le);_e=Qe[0],Le=Qe[1];var st=m(Le),et=o(Le),ut=o(_e),yt=L(le*st+de*et*ut),Ct=m(yt),qt=n(Ct)>g?yt/Ct:1;return[qt*de*m(_e),(n(_e)>w?qt:-qt)*(le*et-de*st*ut)]}return Me.invert=function(_e,Le){var Qe=R(_e*_e+Le*Le),st=-m(Qe),et=o(Qe),ut=Qe*et,yt=-Le*st,Ct=Qe*le,qt=R(ut*ut+yt*yt-Ct*Ct),Zt=a(ut*Ct+yt*qt,yt*Ct-ut*qt),rr=(Qe>w?-1:1)*a(_e*st,Qe*o(Zt)*et+Le*m(Zt)*st);return ye.invert(rr,Zt)},Me}function Ma(re){var le=m(re),de=o(re);return function(ye,Me){var _e=o(Me),Le=o(ye)*_e,Qe=m(ye)*_e,st=m(Me);return[a(Qe,Le*de-st*le),C(st*de+Le*le)]}}function qa(){var re=0,le=t.geoProjectionMutator(sa),de=le(re),ye=de.rotate,Me=de.stream,_e=t.geoCircle();return de.parallel=function(Le){if(!arguments.length)return re*S;var Qe=de.rotate();return le(re=Le*y).rotate(Qe)},de.rotate=function(Le){return arguments.length?(ye.call(de,[Le[0],Le[1]-re*S]),_e.center([-Le[0],-Le[1]]),de):(Le=ye.call(de),Le[1]+=re*S,Le)},de.stream=function(Le){return Le=Me(Le),Le.sphere=function(){Le.polygonStart();var Qe=.01,st=_e.radius(90-Qe)().coordinates[0],et=st.length-1,ut=-1,yt;for(Le.lineStart();++ut=0;)Le.point((yt=st[ut])[0],yt[1]);Le.lineEnd(),Le.polygonEnd()},Le},de.scale(79.4187).parallel(45).clipAngle(180-.001)}var Fa=3,$o=C(1-1/Fa)*S,_o=ft(0);function ka(re){var le=$o*y,de=$e(T,le)[0]-$e(-T,le)[0],ye=_o(0,le)[1],Me=$e(0,le)[1],_e=A-Me,Le=p/re,Qe=4/p,st=ye+_e*_e*4/p;function et(ut,yt){var Ct,qt=n(yt);if(qt>le){var Zt=c(re-1,f(0,l((ut+T)/Le)));ut+=T*(re-1)/re-Zt*Le,Ct=$e(ut,qt),Ct[0]=Ct[0]*p/de-p*(re-1)/(2*re)+Zt*p/re,Ct[1]=ye+(Ct[1]-Me)*4*_e/p,yt<0&&(Ct[1]=-Ct[1])}else Ct=_o(ut,yt);return Ct[0]*=Qe,Ct[1]/=st,Ct}return et.invert=function(ut,yt){ut/=Qe,yt*=st;var Ct=n(yt);if(Ct>ye){var qt=c(re-1,f(0,l((ut+T)/Le)));ut=(ut+T*(re-1)/re-qt*Le)*de/p;var Zt=$e.invert(ut,.25*(Ct-ye)*p/_e+Me);return Zt[0]-=T*(re-1)/re-qt*Le,yt<0&&(Zt[1]=-Zt[1]),Zt}return _o.invert(ut,yt)},et}function za(re,le){return[re,le&1?90-g:$o]}function zn(re,le){return[re,le&1?-90+g:-$o]}function Zr(re){return[re[0]*(1-g),re[1]]}function vi(re){var le=[].concat(r.range(-180,180+re/2,re).map(za),r.range(180,-180-re/2,-re).map(zn));return{type:"Polygon",coordinates:[re===180?le.map(Zr):le]}}function Ko(){var re=4,le=t.geoProjectionMutator(ka),de=le(re),ye=de.stream;return de.lobes=function(Me){return arguments.length?le(re=+Me):re},de.stream=function(Me){var _e=de.rotate(),Le=ye(Me),Qe=(de.rotate([0,0]),ye(Me));return de.rotate(_e),Le.sphere=function(){t.geoStream(vi(180/re),Qe)},Le},de.scale(239.75)}function tl(re){var le=1+re,de=m(1/le),ye=C(de),Me=2*R(T/(_e=T+4*ye*le)),_e,Le=.5*Me*(le+R(re*(2+re))),Qe=re*re,st=le*le;function et(ut,yt){var Ct=1-m(yt),qt,Zt;if(Ct&&Ct<2){var rr=w-yt,dr=25,Ir;do{var Ur=m(rr),an=o(rr),un=ye+a(Ur,le-an),on=1+st-2*le*an;rr-=Ir=(rr-Qe*ye-le*Ur+on*un-.5*Ct*_e)/(2*le*Ur*un)}while(n(Ir)>_&&--dr>0);qt=Me*R(on),Zt=ut*un/T}else qt=Me*(re+Ct),Zt=ut*ye/T;return[qt*m(Zt),Le-qt*o(Zt)]}return et.invert=function(ut,yt){var Ct=ut*ut+(yt-=Le)*yt,qt=(1+st-Ct/(Me*Me))/(2*le),Zt=L(qt),rr=m(Zt),dr=ye+a(rr,le-qt);return[C(ut/R(Ct))*T/dr,C(1-2*(Zt-Qe*ye-le*rr+(1+st-2*le*qt)*dr)/_e)]},et}function Zl(){var re=1,le=t.geoProjectionMutator(tl),de=le(re);return de.ratio=function(ye){return arguments.length?le(re=+ye):re},de.scale(167.774).center([0,18.67])}var qs=.7109889596207567,Qo=.0528035274542;function rl(re,le){return le>-qs?(re=Be(re,le),re[1]+=Qo,re):He(re,le)}rl.invert=function(re,le){return le>-qs?Be.invert(re,le-Qo):He.invert(re,le)};function ef(){return t.geoProjection(rl).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Bi(re,le){return n(le)>qs?(re=Be(re,le),re[1]-=le>0?Qo:-Qo,re):He(re,le)}Bi.invert=function(re,le){return n(le)>qs?Be.invert(re,le+(le>0?Qo:-Qo)):He.invert(re,le)};function tf(){return t.geoProjection(Bi).scale(152.63)}function so(re,le,de,ye){var Me=R(4*T/(2*de+(1+re-le/2)*m(2*de)+(re+le)/2*m(4*de)+le/2*m(6*de))),_e=R(ye*m(de)*R((1+re*o(2*de)+le*o(4*de))/(1+re+le))),Le=de*st(1);function Qe(yt){return R(1+re*o(2*yt)+le*o(4*yt))}function st(yt){var Ct=yt*de;return(2*Ct+(1+re-le/2)*m(2*Ct)+(re+le)/2*m(4*Ct)+le/2*m(6*Ct))/de}function et(yt){return Qe(yt)*m(yt)}var ut=function(yt,Ct){var qt=de*Ne(st,Le*m(Ct)/de,Ct/T);isNaN(qt)&&(qt=de*v(Ct));var Zt=Me*Qe(qt);return[Zt*_e*yt/T*o(qt),Zt/_e*m(qt)]};return ut.invert=function(yt,Ct){var qt=Ne(et,Ct*_e/Me);return[yt*T/(o(qt)*Me*_e*Qe(qt)),C(de*st(qt/de)/Le)]},de===0&&(Me=R(ye/T),ut=function(yt,Ct){return[yt*Me,m(Ct)/Me]},ut.invert=function(yt,Ct){return[yt/Me,C(Ct*Me)]}),ut}function es(){var re=1,le=0,de=45*y,ye=2,Me=t.geoProjectionMutator(so),_e=Me(re,le,de,ye);return _e.a=function(Le){return arguments.length?Me(re=+Le,le,de,ye):re},_e.b=function(Le){return arguments.length?Me(re,le=+Le,de,ye):le},_e.psiMax=function(Le){return arguments.length?Me(re,le,de=+Le*y,ye):de*S},_e.ratio=function(Le){return arguments.length?Me(re,le,de,ye=+Le):ye},_e.scale(180.739)}function Fs(re,le,de,ye,Me,_e,Le,Qe,st,et,ut){if(ut.nanEncountered)return NaN;var yt,Ct,qt,Zt,rr,dr,Ir,Ur,an,un;if(yt=de-le,Ct=re(le+yt*.25),qt=re(de-yt*.25),isNaN(Ct)){ut.nanEncountered=!0;return}if(isNaN(qt)){ut.nanEncountered=!0;return}return Zt=yt*(ye+4*Ct+Me)/12,rr=yt*(Me+4*qt+_e)/12,dr=Zt+rr,un=(dr-Le)/15,et>st?(ut.maxDepthCount++,dr+un):Math.abs(un)>1;do st[dr]>qt?rr=dr:Zt=dr,dr=Zt+rr>>1;while(dr>Zt);var Ir=st[dr+1]-st[dr];return Ir&&(Ir=(qt-st[dr+1])/Ir),(dr+1+Ir)/Le}var yt=2*ut(1)/T*_e/de,Ct=function(qt,Zt){var rr=ut(n(m(Zt))),dr=ye(rr)*qt;return rr/=yt,[dr,Zt>=0?rr:-rr]};return Ct.invert=function(qt,Zt){var rr;return Zt*=yt,n(Zt)<1&&(rr=v(Zt)*C(Me(n(Zt))*_e)),[qt/ye(n(Zt)),rr]},Ct}function ws(){var re=0,le=2.5,de=1.183136,ye=t.geoProjectionMutator(bs),Me=ye(re,le,de);return Me.alpha=function(_e){return arguments.length?ye(re=+_e,le,de):re},Me.k=function(_e){return arguments.length?ye(re,le=+_e,de):le},Me.gamma=function(_e){return arguments.length?ye(re,le,de=+_e):de},Me.scale(152.63)}function rf(re,le){return n(re[0]-le[0])=0;--st)de=re[1][st],ye=de[0][0],Me=de[0][1],_e=de[1][1],Le=de[2][0],Qe=de[2][1],le.push(ts([[Le-g,Qe-g],[Le-g,_e+g],[ye+g,_e+g],[ye+g,Me-g]],30));return{type:"Polygon",coordinates:[r.merge(le)]}}function kl(re,le,de){var ye,Me;function _e(st,et){for(var ut=et<0?-1:1,yt=le[+(et<0)],Ct=0,qt=yt.length-1;Ctyt[Ct][2][0];++Ct);var Zt=re(st-yt[Ct][1][0],et);return Zt[0]+=re(yt[Ct][1][0],ut*et>ut*yt[Ct][0][1]?yt[Ct][0][1]:et)[0],Zt}de?_e.invert=de(_e):re.invert&&(_e.invert=function(st,et){for(var ut=Me[+(et<0)],yt=le[+(et<0)],Ct=0,qt=ut.length;CtZt&&(rr=qt,qt=Zt,Zt=rr),[[yt,qt],[Ct,Zt]]})}),Le):le.map(function(et){return et.map(function(ut){return[[ut[0][0]*S,ut[0][1]*S],[ut[1][0]*S,ut[1][1]*S],[ut[2][0]*S,ut[2][1]*S]]})})},le!=null&&Le.lobes(le),Le}var Ja=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function wp(){return kl(Ee,Ja).scale(160.857)}var Na=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function nf(){return kl(Bi,Na).scale(152.63)}var bu=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function rs(){return kl(Be,bu).scale(169.529)}var nl=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function af(){return kl(Be,nl).scale(169.529).rotate([20,0])}var Ui=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function zs(){return kl(rl,Ui,pe).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var of=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function sf(){return kl(He,of).scale(152.63).rotate([-20,0])}function wu(re,le){return[3/p*re*R(T*T/3-le*le),le]}wu.invert=function(re,le){return[p/3*re/R(T*T/3-le*le),le]};function Hf(){return t.geoProjection(wu).scale(158.837)}function Ah(re){function le(de,ye){if(n(n(ye)-w)2)return null;de/=2,ye/=2;var _e=de*de,Le=ye*ye,Qe=2*ye/(1+_e+Le);return Qe=h((1+Qe)/(1-Qe),1/re),[a(2*de,1-_e-Le)/re,C((Qe-1)/(Qe+1))]},le}function Mh(){var re=.5,le=t.geoProjectionMutator(Ah),de=le(re);return de.spacing=function(ye){return arguments.length?le(re=+ye):re},de.scale(124.75)}var Ns=T/M;function lf(re,le){return[re*(1+R(o(le)))/2,le/(o(le/2)*o(re/6))]}lf.invert=function(re,le){var de=n(re),ye=n(le),Me=g,_e=w;yeg||n(dr)>g)&&--Me>0);return Me&&[de,ye]};function Va(){return t.geoProjection(_s).scale(139.98)}function To(re,le){return[m(re)/o(le),b(le)*o(re)]}To.invert=function(re,le){var de=re*re,ye=le*le,Me=ye+1,_e=de+Me,Le=re?x*R((_e-R(_e*_e-4*de))/de):1/R(Me);return[C(re*Le),v(le)*L(Le)]};function il(){return t.geoProjection(To).scale(144.049).clipAngle(90-.001)}function uf(re){var le=o(re),de=b(k+re/2);function ye(Me,_e){var Le=_e-re,Qe=n(Le)=0;)ut=re[et],yt=ut[0]+Qe*(qt=yt)-st*Ct,Ct=ut[1]+Qe*Ct+st*qt;return yt=Qe*(qt=yt)-st*Ct,Ct=Qe*Ct+st*qt,[yt,Ct]}return de.invert=function(ye,Me){var _e=20,Le=ye,Qe=Me;do{for(var st=le,et=re[st],ut=et[0],yt=et[1],Ct=0,qt=0,Zt;--st>=0;)et=re[st],Ct=ut+Le*(Zt=Ct)-Qe*qt,qt=yt+Le*qt+Qe*Zt,ut=et[0]+Le*(Zt=ut)-Qe*yt,yt=et[1]+Le*yt+Qe*Zt;Ct=ut+Le*(Zt=Ct)-Qe*qt,qt=yt+Le*qt+Qe*Zt,ut=Le*(Zt=ut)-Qe*yt-ye,yt=Le*yt+Qe*Zt-Me;var rr=Ct*Ct+qt*qt,dr,Ir;Le-=dr=(ut*Ct+yt*qt)/rr,Qe-=Ir=(yt*Ct-ut*qt)/rr}while(n(dr)+n(Ir)>g*g&&--_e>0);if(_e){var Ur=R(Le*Le+Qe*Qe),an=2*i(Ur*.5),un=m(an);return[a(Le*un,Ur*o(an)),Ur?C(Qe*un/Ur):0]}},de}var _p=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],qd=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],zo=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Fc=[[.9245,0],[0,0],[.01943,0]],ff=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Sh(){return Sl(_p,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Tv(){return Sl(qd,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Fd(){return Sl(zo,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function zc(){return Sl(Fc,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Nc(){return Sl(ff,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Sl(re,le){var de=t.geoProjection(kh(re)).rotate(le).clipAngle(90),ye=t.geoRotation(le),Me=de.center;return delete de.rotate,de.center=function(_e){return arguments.length?Me(ye(_e)):ye.invert(Me())},de}var Ch=R(6),Cl=R(7);function Eh(re,le){var de=C(7*m(le)/(3*Ch));return[Ch*re*(2*o(2*de/3)-1)/Cl,9*m(de/3)/Cl]}Eh.invert=function(re,le){var de=3*C(le*Cl/9);return[re*Cl/(Ch*(2*o(2*de/3)-1)),C(m(de)*3*Ch/7)]};function zd(){return t.geoProjection(Eh).scale(164.859)}function Oc(re,le){for(var de=(1+x)*m(le),ye=le,Me=0,_e;Me<25&&(ye-=_e=(m(ye/2)+m(ye)-de)/(.5*o(ye/2)+o(ye)),!(n(_e)_&&--ye>0);return _e=de*de,Le=_e*_e,Qe=_e*Le,[re/(.84719-.13063*_e+Qe*Qe*(-.04515+.05494*_e-.02326*Le+.00331*Qe)),de]};function Bc(){return t.geoProjection(Vf).scale(175.295)}function Uc(re,le){return[re*(1+o(le))/2,2*(le-b(le/2))]}Uc.invert=function(re,le){for(var de=le/2,ye=0,Me=1/0;ye<10&&n(Me)>g;++ye){var _e=o(le/2);le-=Me=(le-b(le/2)-de)/(1-.5/(_e*_e))}return[2*re/(1+o(le)),le]};function Tu(){return t.geoProjection(Uc).scale(152.63)}var $a=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Av(){return kl(fe(1/0),$a).rotate([20,0]).scale(152.63)}function Mv(re,le){var de=m(le),ye=o(le),Me=v(re);if(re===0||n(le)===w)return[0,le];if(le===0)return[re,0];if(n(re)===w)return[re*ye,w*de];var _e=T/(2*re)-2*re/T,Le=2*le/T,Qe=(1-Le*Le)/(de-Le),st=_e*_e,et=Qe*Qe,ut=1+st/et,yt=1+et/st,Ct=(_e*de/Qe-_e/2)/ut,qt=(et*de/st+Qe/2)/yt,Zt=Ct*Ct+ye*ye/ut,rr=qt*qt-(et*de*de/st+Qe*de-1)/yt;return[w*(Ct+R(Zt)*Me),w*(qt+R(rr<0?0:rr)*v(-le*_e)*Me)]}Mv.invert=function(re,le){re/=w,le/=w;var de=re*re,ye=le*le,Me=de+ye,_e=T*T;return[re?(Me-1+R((1-Me)*(1-Me)+4*de))/(2*re)*w:0,Ne(function(Le){return Me*(T*m(Le)-2*Le)*T+4*Le*Le*(le-m(Le))+2*T*Le-_e*le},0)]};function Od(){return t.geoProjection(Mv).scale(127.267)}var kv=1.0148,Lh=.23185,Sv=-.14499,El=.02406,Wt=kv,fr=5*Lh,tr=7*Sv,Kr=9*El,Sn=1.790857183;function mi(re,le){var de=le*le;return[re,le*(kv+de*de*(Lh+de*(Sv+El*de)))]}mi.invert=function(re,le){le>Sn?le=Sn:le<-Sn&&(le=-Sn);var de=le,ye;do{var Me=de*de;de-=ye=(de*(kv+Me*Me*(Lh+Me*(Sv+El*Me)))-le)/(Wt+Me*Me*(fr+Me*(tr+Kr*Me)))}while(n(ye)>g);return[re,de]};function Oa(){return t.geoProjection(mi).scale(139.319)}function yi(re,le){if(n(le)g&&--Me>0);return Le=b(ye),[(n(le)=0;)if(ye=le[Qe],de[0]===ye[0]&&de[1]===ye[1]){if(_e)return[_e,de];_e=de}}}function Hc(re){for(var le=re.length,de=[],ye=re[le-1],Me=0;Me0?[-ye[0],0]:[180-ye[0],180])};var le=Ph.map(function(de){return{face:de,project:re(de)}});return[-1,0,0,1,0,1,4,5].forEach(function(de,ye){var Me=le[de];Me&&(Me.children||(Me.children=[])).push(le[ye])}),$l(le[0],function(de,ye){return le[de<-T/2?ye<0?6:4:de<0?ye<0?2:0:deye^qt>ye&&de<(Ct-et)*(ye-ut)/(qt-ut)+et&&(Me=!Me)}return Me}function Ih(re,le){var de=le.stream,ye;if(!de)throw new Error("invalid projection");switch(re&&re.type){case"Feature":ye=jd;break;case"FeatureCollection":ye=Hd;break;default:ye=vf;break}return ye(re,de)}function Hd(re,le){return{type:"FeatureCollection",features:re.features.map(function(de){return jd(de,le)})}}function jd(re,le){return{type:"Feature",id:re.id,properties:re.properties,geometry:vf(re.geometry,le)}}function Gf(re,le){return{type:"GeometryCollection",geometries:re.geometries.map(function(de){return vf(de,le)})}}function vf(re,le){if(!re)return null;if(re.type==="GeometryCollection")return Gf(re,le);var de;switch(re.type){case"Point":de=df;break;case"MultiPoint":de=df;break;case"LineString":de=qh;break;case"MultiLineString":de=qh;break;case"Polygon":de=Yc;break;case"MultiPolygon":de=Yc;break;case"Sphere":de=Yc;break;default:return null}return t.geoStream(re,le(de)),de.result()}var Sa=[],sl=[],df={point:function(re,le){Sa.push([re,le])},result:function(){var re=Sa.length?Sa.length<2?{type:"Point",coordinates:Sa[0]}:{type:"MultiPoint",coordinates:Sa}:null;return Sa=[],re}},qh={lineStart:Cu,point:function(re,le){Sa.push([re,le])},lineEnd:function(){Sa.length&&(sl.push(Sa),Sa=[])},result:function(){var re=sl.length?sl.length<2?{type:"LineString",coordinates:sl[0]}:{type:"MultiLineString",coordinates:sl}:null;return sl=[],re}},Yc={polygonStart:Cu,lineStart:Cu,point:function(re,le){Sa.push([re,le])},lineEnd:function(){var re=Sa.length;if(re){do Sa.push(Sa[0].slice());while(++re<4);sl.push(Sa),Sa=[]}},polygonEnd:Cu,result:function(){if(!sl.length)return null;var re=[],le=[];return sl.forEach(function(de){ol(de)?re.push([de]):le.push(de)}),le.forEach(function(de){var ye=de[0];re.some(function(Me){if(Vc(Me[0],ye))return Me.push(de),!0})||re.push([de])}),sl=[],re.length?re.length>1?{type:"MultiPolygon",coordinates:re}:{type:"Polygon",coordinates:re[0]}:null}};function Ca(re){var le=re(w,0)[0]-re(-w,0)[0];function de(ye,Me){var _e=n(ye)0?ye-T:ye+T,Me),Qe=(Le[0]-Le[1])*x,st=(Le[0]+Le[1])*x;if(_e)return[Qe,st];var et=le*x,ut=Qe>0^st>0?-1:1;return[ut*Qe-v(st)*et,ut*st-v(Qe)*et]}return re.invert&&(de.invert=function(ye,Me){var _e=(ye+Me)*x,Le=(Me-ye)*x,Qe=n(_e)<.5*le&&n(Le)<.5*le;if(!Qe){var st=le*x,et=_e>0^Le>0?-1:1,ut=-et*ye+(Le>0?1:-1)*st,yt=-et*Me+(_e>0?1:-1)*st;_e=(-ut-yt)*x,Le=(ut-yt)*x}var Ct=re.invert(_e,Le);return Qe||(Ct[0]+=_e>0?T:-T),Ct}),t.geoProjection(de).rotate([-90,-90,45]).clipAngle(180-.001)}function be(){return Ca(zt).scale(176.423)}function Oe(){return Ca(hi).scale(111.48)}function ot(re,le){if(!(0<=(le=+le)&&le<=20))throw new Error("invalid digits");function de(et){var ut=et.length,yt=2,Ct=new Array(ut);for(Ct[0]=+et[0].toFixed(le),Ct[1]=+et[1].toFixed(le);yt2||qt[0]!=ut[0]||qt[1]!=ut[1])&&(yt.push(qt),ut=qt)}return yt.length===1&&et.length>1&&yt.push(de(et[et.length-1])),yt}function _e(et){return et.map(Me)}function Le(et){if(et==null)return et;var ut;switch(et.type){case"GeometryCollection":ut={type:"GeometryCollection",geometries:et.geometries.map(Le)};break;case"Point":ut={type:"Point",coordinates:de(et.coordinates)};break;case"MultiPoint":ut={type:et.type,coordinates:ye(et.coordinates)};break;case"LineString":ut={type:et.type,coordinates:Me(et.coordinates)};break;case"MultiLineString":case"Polygon":ut={type:et.type,coordinates:_e(et.coordinates)};break;case"MultiPolygon":ut={type:"MultiPolygon",coordinates:et.coordinates.map(_e)};break;default:return et}return et.bbox!=null&&(ut.bbox=et.bbox),ut}function Qe(et){var ut={type:"Feature",properties:et.properties,geometry:Le(et.geometry)};return et.id!=null&&(ut.id=et.id),et.bbox!=null&&(ut.bbox=et.bbox),ut}if(re!=null)switch(re.type){case"Feature":return Qe(re);case"FeatureCollection":{var st={type:"FeatureCollection",features:re.features.map(Qe)};return re.bbox!=null&&(st.bbox=re.bbox),st}default:return Le(re)}return re}function Ke(re){var le=m(re);function de(ye,Me){var _e=le?b(ye*le/2)/le:ye/2;if(!Me)return[2*_e,-re];var Le=2*i(_e*m(Me)),Qe=1/b(Me);return[m(Le)*Qe,Me+(1-o(Le))*Qe-re]}return de.invert=function(ye,Me){if(n(Me+=re)g&&--Qe>0);var Ct=ye*(et=b(Le)),qt=b(n(Me)0?w:-w)*(st+Me*(ut-Le)/2+Me*Me*(ut-2*st+Le)/2)]}jt.invert=function(re,le){var de=le/w,ye=de*90,Me=c(18,n(ye/5)),_e=f(0,l(Me));do{var Le=Ft[_e][1],Qe=Ft[_e+1][1],st=Ft[c(19,_e+2)][1],et=st-Le,ut=st-2*Qe+Le,yt=2*(n(de)-Qe)/et,Ct=ut/et,qt=yt*(1-Ct*yt*(1-2*Ct*yt));if(qt>=0||_e===1){ye=(le>=0?5:-5)*(qt+Me);var Zt=50,rr;do Me=c(18,n(ye)/5),_e=l(Me),qt=Me-_e,Le=Ft[_e][1],Qe=Ft[_e+1][1],st=Ft[c(19,_e+2)][1],ye-=(rr=(le>=0?w:-w)*(Qe+qt*(st-Le)/2+qt*qt*(st-2*Qe+Le)/2)-le)*S;while(n(rr)>_&&--Zt>0);break}}while(--_e>=0);var dr=Ft[_e][0],Ir=Ft[_e+1][0],Ur=Ft[c(19,_e+2)][0];return[re/(Ir+qt*(Ur-dr)/2+qt*qt*(Ur-2*Ir+dr)/2),ye*y]};function $t(){return t.geoProjection(jt).scale(152.63)}function Kt(re){function le(de,ye){var Me=o(ye),_e=(re-1)/(re-Me*o(de));return[_e*Me*m(de),_e*m(ye)]}return le.invert=function(de,ye){var Me=de*de+ye*ye,_e=R(Me),Le=(re-R(1-Me*(re+1)/(re-1)))/((re-1)/_e+_e/(re-1));return[a(de*Le,_e*R(1-Le*Le)),_e?C(ye*Le/_e):0]},le}function sr(re,le){var de=Kt(re);if(!le)return de;var ye=o(le),Me=m(le);function _e(Le,Qe){var st=de(Le,Qe),et=st[1],ut=et*Me/(re-1)+ye;return[st[0]*ye/ut,et/ut]}return _e.invert=function(Le,Qe){var st=(re-1)/(re-1-Qe*Me);return de.invert(st*Le,st*Qe*ye)},_e}function Yt(){var re=2,le=0,de=t.geoProjectionMutator(sr),ye=de(re,le);return ye.distance=function(Me){return arguments.length?de(re=+Me,le):re},ye.tilt=function(Me){return arguments.length?de(re,le=Me*y):le*S},ye.scale(432.147).clipAngle(L(1/re)*S-1e-6)}var nr=1e-4,Qt=1e4,cr=-180,pr=cr+nr,Jr=180,jr=Jr-nr,rn=-90,Qr=rn+nr,yr=90,Cr=yr-nr;function Ze(re){return re.length>0}function fn(re){return Math.floor(re*Qt)/Qt}function Kn(re){return re===rn||re===yr?[0,re]:[cr,fn(re)]}function Gn(re){var le=re[0],de=re[1],ye=!1;return le<=pr?(le=cr,ye=!0):le>=jr&&(le=Jr,ye=!0),de<=Qr?(de=rn,ye=!0):de>=Cr&&(de=yr,ye=!0),ye?[le,de]:re}function $r(re){return re.map(Gn)}function Hi(re,le,de){for(var ye=0,Me=re.length;ye=jr||ut<=Qr||ut>=Cr){_e[Le]=Gn(st);for(var yt=Le+1;ytpr&&qtQr&&Zt=Qe)break;de.push({index:-1,polygon:le,ring:_e=_e.slice(yt-1)}),_e[0]=Kn(_e[0][1]),Le=-1,Qe=_e.length}}}}function Zn(re){var le,de=re.length,ye={},Me={},_e,Le,Qe,st,et;for(le=0;le0?T-Qe:Qe)*S],et=t.geoProjection(re(Le)).rotate(st),ut=t.geoRotation(st),yt=et.center;return delete et.rotate,et.center=function(Ct){return arguments.length?yt(ut(Ct)):ut.invert(yt())},et.clipAngle(90)}function Ao(re){var le=o(re);function de(ye,Me){var _e=t.geoGnomonicRaw(ye,Me);return _e[0]*=le,_e}return de.invert=function(ye,Me){return t.geoGnomonicRaw.invert(ye/le,Me)},de}function Ua(){return Kl([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Kl(re,le){return Ba(Ao,re,le)}function Rl(re){if(!(re*=2))return t.geoAzimuthalEquidistantRaw;var le=-re/2,de=-le,ye=re*re,Me=b(de),_e=.5/m(de);function Le(Qe,st){var et=L(o(st)*o(Qe-le)),ut=L(o(st)*o(Qe-de)),yt=st<0?-1:1;return et*=et,ut*=ut,[(et-ut)/(2*re),yt*R(4*ye*ut-(ye-et+ut)*(ye-et+ut))/(2*re)]}return Le.invert=function(Qe,st){var et=st*st,ut=o(R(et+(Ct=Qe+le)*Ct)),yt=o(R(et+(Ct=Qe+de)*Ct)),Ct,qt;return[a(qt=ut-yt,Ct=(ut+yt)*Me),(st<0?-1:1)*L(R(Ct*Ct+qt*qt)*_e)]},Le}function pf(){return ll([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function ll(re,le){return Ba(Rl,re,le)}function gf(re,le){if(n(le)g&&--Qe>0);return[v(re)*(R(Me*Me+4)+Me)*T/4,w*Le]};function Oo(){return t.geoProjection(Ev).scale(127.16)}function $m(re,le,de,ye,Me){function _e(Le,Qe){var st=de*m(ye*Qe),et=R(1-st*st),ut=R(2/(1+et*o(Le*=Me)));return[re*et*ut*m(Le),le*st*ut]}return _e.invert=function(Le,Qe){var st=Le/re,et=Qe/le,ut=R(st*st+et*et),yt=2*C(ut/2);return[a(Le*b(yt),re*ut)/Me,ut&&C(Qe*m(yt)/(le*de*ut))/ye]},_e}function Km(re,le,de,ye){var Me=T/3;re=f(re,g),le=f(le,g),re=c(re,w),le=c(le,T-g),de=f(de,0),de=c(de,100-g),ye=f(ye,g);var _e=de/100+1,Le=ye/100,Qe=L(_e*o(Me))/Me,st=m(re)/m(Qe*w),et=le/T,ut=R(Le*m(re/2)/m(le/2)),yt=ut/R(et*st*Qe),Ct=1/(ut*R(et*st*Qe));return $m(yt,Ct,st,Qe,et)}function Hs(){var re=65*y,le=60*y,de=20,ye=200,Me=t.geoProjectionMutator(Km),_e=Me(re,le,de,ye);return _e.poleline=function(Le){return arguments.length?Me(re=+Le*y,le,de,ye):re*S},_e.parallels=function(Le){return arguments.length?Me(re,le=+Le*y,de,ye):le*S},_e.inflation=function(Le){return arguments.length?Me(re,le,de=+Le,ye):de},_e.ratio=function(Le){return arguments.length?Me(re,le,de,ye=+Le):ye},_e.scale(163.775)}function Ap(){return Hs().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Qm=4*T+3*R(3),e1=2*R(2*T*R(3)/Qm),t1=ze(e1*R(3)/T,e1,Qm/6);function Gd(){return t.geoProjection(t1).scale(176.84)}function zh(re,le){return[re*R(1-3*le*le/(T*T)),le]}zh.invert=function(re,le){return[re/R(1-3*le*le/(T*T)),le]};function Mp(){return t.geoProjection(zh).scale(152.63)}function kp(re,le){var de=o(le),ye=o(re)*de,Me=1-ye,_e=o(re=a(m(re)*de,-m(le))),Le=m(re);return de=R(1-ye*ye),[Le*de-_e*Me,-_e*de-Le*Me]}kp.invert=function(re,le){var de=(re*re+le*le)/-2,ye=R(-de*(2+de)),Me=le*de+re*ye,_e=re*de-le*ye,Le=R(_e*_e+Me*Me);return[a(ye*Me,Le*(1+de)),Le?-C(ye*_e/Le):0]};function pb(){return t.geoProjection(kp).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function Lv(re,le){var de=ee(re,le);return[(de[0]+re/w)/2,(de[1]+le)/2]}Lv.invert=function(re,le){var de=re,ye=le,Me=25;do{var _e=o(ye),Le=m(ye),Qe=m(2*ye),st=Le*Le,et=_e*_e,ut=m(de),yt=o(de/2),Ct=m(de/2),qt=Ct*Ct,Zt=1-et*yt*yt,rr=Zt?L(_e*yt)*R(dr=1/Zt):dr=0,dr,Ir=.5*(2*rr*_e*Ct+de/w)-re,Ur=.5*(rr*Le+ye)-le,an=.5*dr*(et*qt+rr*_e*yt*st)+.5/w,un=dr*(ut*Qe/4-rr*Le*Ct),on=.125*dr*(Qe*Ct-rr*Le*et*ut),Mi=.5*dr*(st*yt+rr*qt*_e)+.5,Oi=un*on-Mi*an,Nn=(Ur*un-Ir*Mi)/Oi,ya=(Ir*on-Ur*an)/Oi;de-=Nn,ye-=ya}while((n(Nn)>g||n(ya)>g)&&--Me>0);return[de,ye]};function is(){return t.geoProjection(Lv).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=G,e.geoAiryRaw=U,e.geoAitoff=Q,e.geoAitoffRaw=ee,e.geoArmadillo=O,e.geoArmadilloRaw=j,e.geoAugust=K,e.geoAugustRaw=Z,e.geoBaker=V,e.geoBakerRaw=te,e.geoBerghaus=W,e.geoBerghausRaw=ne,e.geoBertin1953=Ie,e.geoBertin1953Raw=me,e.geoBoggs=Ae,e.geoBoggsRaw=Ee,e.geoBonne=Ue,e.geoBonneRaw=ke,e.geoBottomley=lt,e.geoBottomleyRaw=Ge,e.geoBromley=wt,e.geoBromleyRaw=it,e.geoChamberlin=je,e.geoChamberlinRaw=bt,e.geoChamberlinAfrica=Ye,e.geoCollignon=ve,e.geoCollignonRaw=$e,e.geoCraig=ie,e.geoCraigRaw=Y,e.geoCraster=at,e.geoCrasterRaw=Ve,e.geoCylindricalEqualArea=Ht,e.geoCylindricalEqualAreaRaw=ft,e.geoCylindricalStereographic=St,e.geoCylindricalStereographicRaw=Xt,e.geoEckert1=er,e.geoEckert1Raw=Vt,e.geoEckert2=br,e.geoEckert2Raw=_r,e.geoEckert3=tn,e.geoEckert3Raw=or,e.geoEckert4=Gr,e.geoEckert4Raw=Lr,e.geoEckert5=Hr,e.geoEckert5Raw=sn,e.geoEckert6=qn,e.geoEckert6Raw=Br,e.geoEisenlohr=Wn,e.geoEisenlohrRaw=Yn,e.geoFahey=Si,e.geoFaheyRaw=wn,e.geoFoucaut=ia,e.geoFoucautRaw=Aa,e.geoFoucautSinusoidal=Ji,e.geoFoucautSinusoidalRaw=An,e.geoGilbert=ga,e.geoGingery=wo,e.geoGingeryRaw=Ia,e.geoGinzburg4=yu,e.geoGinzburg4Raw=oa,e.geoGinzburg5=xu,e.geoGinzburg5Raw=Xl,e.geoGinzburg6=ct,e.geoGinzburg6Raw=De,e.geoGinzburg8=Mt,e.geoGinzburg8Raw=ht,e.geoGinzburg9=Lt,e.geoGinzburg9Raw=Gt,e.geoGringorten=Er,e.geoGringortenRaw=zt,e.geoGuyou=Ki,e.geoGuyouRaw=hi,e.geoHammer=Ce,e.geoHammerRaw=fe,e.geoHammerRetroazimuthal=qa,e.geoHammerRetroazimuthalRaw=sa,e.geoHealpix=Ko,e.geoHealpixRaw=ka,e.geoHill=Zl,e.geoHillRaw=tl,e.geoHomolosine=tf,e.geoHomolosineRaw=Bi,e.geoHufnagel=es,e.geoHufnagelRaw=so,e.geoHyperelliptical=ws,e.geoHyperellipticalRaw=bs,e.geoInterrupt=kl,e.geoInterruptedBoggs=wp,e.geoInterruptedHomolosine=nf,e.geoInterruptedMollweide=rs,e.geoInterruptedMollweideHemispheres=af,e.geoInterruptedSinuMollweide=zs,e.geoInterruptedSinusoidal=sf,e.geoKavrayskiy7=Hf,e.geoKavrayskiy7Raw=wu,e.geoLagrange=Mh,e.geoLagrangeRaw=Ah,e.geoLarrivee=Jl,e.geoLarriveeRaw=lf,e.geoLaskowski=Va,e.geoLaskowskiRaw=_s,e.geoLittrow=il,e.geoLittrowRaw=To,e.geoLoximuthal=_u,e.geoLoximuthalRaw=uf,e.geoMiller=qc,e.geoMillerRaw=jf,e.geoModifiedStereographic=Sl,e.geoModifiedStereographicRaw=kh,e.geoModifiedStereographicAlaska=Sh,e.geoModifiedStereographicGs48=Tv,e.geoModifiedStereographicGs50=Fd,e.geoModifiedStereographicMiller=zc,e.geoModifiedStereographicLee=Nc,e.geoMollweide=tt,e.geoMollweideRaw=Be,e.geoMtFlatPolarParabolic=zd,e.geoMtFlatPolarParabolicRaw=Eh,e.geoMtFlatPolarQuartic=Nd,e.geoMtFlatPolarQuarticRaw=Oc,e.geoMtFlatPolarSinusoidal=cf,e.geoMtFlatPolarSinusoidalRaw=No,e.geoNaturalEarth2=Bc,e.geoNaturalEarth2Raw=Vf,e.geoNellHammer=Tu,e.geoNellHammerRaw=Uc,e.geoInterruptedQuarticAuthalic=Av,e.geoNicolosi=Od,e.geoNicolosiRaw=Mv,e.geoPatterson=Oa,e.geoPattersonRaw=mi,e.geoPolyconic=Dh,e.geoPolyconicRaw=yi,e.geoPolyhedral=$l,e.geoPolyhedralButterfly=Au,e.geoPolyhedralCollignon=Ud,e.geoPolyhedralWaterman=ku,e.geoProject=Ih,e.geoGringortenQuincuncial=be,e.geoPeirceQuincuncial=Oe,e.geoPierceQuincuncial=Oe,e.geoQuantize=ot,e.geoQuincuncial=Ca,e.geoRectangularPolyconic=xt,e.geoRectangularPolyconicRaw=Ke,e.geoRobinson=$t,e.geoRobinsonRaw=jt,e.geoSatellite=Yt,e.geoSatelliteRaw=sr,e.geoSinuMollweide=ef,e.geoSinuMollweideRaw=rl,e.geoSinusoidal=Fe,e.geoSinusoidalRaw=He,e.geoStitch=Vi,e.geoTimes=li,e.geoTimesRaw=Rr,e.geoTwoPointAzimuthal=Kl,e.geoTwoPointAzimuthalRaw=Ao,e.geoTwoPointAzimuthalUsa=Ua,e.geoTwoPointEquidistant=ll,e.geoTwoPointEquidistantRaw=Rl,e.geoTwoPointEquidistantUsa=pf,e.geoVanDerGrinten=ns,e.geoVanDerGrintenRaw=gf,e.geoVanDerGrinten2=Vd,e.geoVanDerGrinten2Raw=Fh,e.geoVanDerGrinten3=Jm,e.geoVanDerGrinten3Raw=Yd,e.geoVanDerGrinten4=Oo,e.geoVanDerGrinten4Raw=Ev,e.geoWagner=Hs,e.geoWagner7=Ap,e.geoWagnerRaw=Km,e.geoWagner4=Gd,e.geoWagner4Raw=t1,e.geoWagner6=Mp,e.geoWagner6Raw=zh,e.geoWiechel=pb,e.geoWiechelRaw=kp,e.geoWinkel3=is,e.geoWinkel3Raw=Lv,Object.defineProperty(e,"__esModule",{value:!0})})});var z_e=J(($Bt,F_e)=>{"use strict";var Zo=Nr(),C9=gt(),jbt=zr(),Cx=Math.PI/180,cm=180/Math.PI,L9={cursor:"pointer"},D9={cursor:"auto"};function Vbt(e,t){var r=e.projection,n;return t._isScoped?n=Ybt:t._isClipped?n=Wbt:n=Gbt,n(e,r)}F_e.exports=Vbt;function R9(e,t){return Zo.behavior.zoom().translate(t.translate()).scale(t.scale())}function P9(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},f={};function c(h,d){u[n+"."+h]=C9.nestedProperty(o,h).get(),jbt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=C9.nestedProperty(l,h);v.get()!==d&&(v.set(d),C9.nestedProperty(o,h).set(d),f[n+"."+h]=d)}r(c),c("projection.scale",t.scale()/e.fitScale),c("fitbounds",!1),i.emit("plotly_relayout",f)}function Ybt(e,t){var r=R9(e,t);function n(){Zo.select(this).style(L9)}function i(){t.scale(Zo.event.scale).translate(Zo.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){Zo.select(this).style(D9),P9(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function Gbt(e,t){var r=R9(e,t),n=2,i,a,o,s,l,u,f,c,h;function d(T){return t.invert(T)}function v(T){var w=d(T);if(!w)return!0;var k=t(w);return Math.abs(k[0]-T[0])>n||Math.abs(k[1]-T[1])>n}function m(){Zo.select(this).style(L9),i=Zo.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=Zo.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(Zo.event.scale),t.translate([o[0],Zo.event.translate[1]]),l?d(u)&&(c=d(u),f=[s[0]+(c[0]-l[0]),a[1],a[2]],t.rotate(f),s=f):(i=u,l=d(i)),h=!0,e.render(!0);var T=t.rotate(),w=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":w[0],"geo.center.lat":w[1],"geo.projection.rotation.lon":-T[0]})}function g(){Zo.select(this).style(D9),h&&P9(e,t,_)}function _(T){var w=t.rotate(),k=t.invert(e.midPt);T("projection.rotation.lon",-w[0]),T("center.lon",k[0]),T("center.lat",k[1])}return r.on("zoomstart",m).on("zoom",b).on("zoomend",g),r}function Wbt(e,t){var r={r:t.rotate(),k:t.scale()},n=R9(e,t),i=t2t(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){Zo.select(this).style(L9);var h=Zo.mouse(this),d=t.rotate(),v=d,m=t.translate(),b=Xbt(d);s=W5(t,h),o.call(n,"zoom",function(){var g=Zo.mouse(this);if(t.scale(r.k=Zo.event.scale),!s)h=g,s=W5(t,h);else if(W5(t,g)){t.rotate(d).translate(m);var _=W5(t,g),T=Jbt(s,_),w=Kbt(Zbt(b,T)),k=r.r=$bt(w,s,v);(!isFinite(k[0])||!isFinite(k[1])||!isFinite(k[2]))&&(k=v),t.rotate(k),v=k}u(i.of(this,arguments))}),l(i.of(this,arguments))}).on("zoomend",function(){Zo.select(this).style(D9),o.call(n,"zoom",null),f(i.of(this,arguments)),P9(e,t,c)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function f(h){--a||h({type:"zoomend"})}function c(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return Zo.rebind(n,i,"on")}function W5(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&Qbt(r)}function Xbt(e){var t=.5*e[0]*Cx,r=.5*e[1]*Cx,n=.5*e[2]*Cx,i=Math.sin(t),a=Math.cos(t),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 Zbt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[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 Jbt(e,t){if(!(!e||!t)){var r=e2t(e,t),n=Math.sqrt(q_e(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,q_e(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function $bt(e,t,r){var n=E9(t,2,e[0]);n=E9(n,1,e[1]),n=E9(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],l=n[1],u=n[2],f=Math.atan2(a,i)*cm,c=Math.sqrt(i*i+a*a),h,d;Math.abs(l)>c?(d=(l>0?90:-90)-f,h=0):(d=Math.asin(l/c)*cm-f,h=Math.sqrt(c*c-l*l));var v=180-d-2*f,m=(Math.atan2(u,s)-Math.atan2(o,h))*cm,b=(Math.atan2(u,s)-Math.atan2(o,-h))*cm,g=P_e(r[0],r[1],d,m),_=P_e(r[0],r[1],v,b);return g<=_?[d,m,r[2]]:[v,b,r[2]]}function P_e(e,t,r,n){var i=I_e(r-e),a=I_e(n-t);return Math.sqrt(i*i+a*a)}function I_e(e){return(e%360+540)%360-180}function E9(e,t,r){var n=r*Cx,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=e[a]*s-e[o]*l,i[o]=e[o]*s+e[a]*l,i}function Kbt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*cm,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*cm,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*cm]}function Qbt(e){var t=e[0]*Cx,r=e[1]*Cx,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function q_e(e,t){for(var r=0,n=0,i=e.length;n{"use strict";var _d=Nr(),F9=S9(),r2t=F9.geoPath,n2t=F9.geoDistance,i2t=R_e(),a2t=zr(),z_=gt(),o2t=z_.strTranslate,X5=qr(),F_=ln(),N_e=go(),s2t=ea(),q9=nn(),O_e=ec().getAutoRange,I9=iu(),l2t=ml().prepSelect,u2t=ml().clearOutline,f2t=ml().selectOnClick,c2t=z_e(),vu=R_(),h2t=U5(),U_e=q5(),v2t=u9().feature;function H_e(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var _h=H_e.prototype;j_e.exports=function(t){return new H_e(t)};_h.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in vu.layerNameToAdjective)if(l!=="frame"&&a["show"+l]){s=!0;break}for(var u=!1,f=0;f0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),s2t.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var l=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=l.selectAll(".point"),this.dataPoints.text=l.selectAll("text"),this.dataPaths.line=l.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};_h.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,l=n.lataxis,u=s._ax,f=l._ax,c=this.projection=d2t(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},v=o.rotation||{},m=s.range||[],b=l.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],f._length=h[1][1]-h[0][1],u.range=O_e(r,u),f.range=O_e(r,f);var g=(u.range[0]+u.range[1])/2,_=(f.range[0]+f.range[1])/2;if(n._isScoped)d={lon:g,lat:_};else if(n._isClipped){d={lon:g,lat:_},v={lon:g,lat:_,roll:v.roll};var T=o.type,w=vu.lonaxisSpan[T]/2||180,k=vu.lataxisSpan[T]/2||90;m=[g-w,g+w],b=[_-k,_+k]}else d={lon:g,lat:_},v={lon:g,lat:v.lat,roll:v.roll}}c.center([d.lon-v.lon,d.lat-v.lat]).rotate([-v.lon,-v.lat,v.roll]).parallels(o.parallels);var x=B_e(m,b);c.fitExtent(h,x);var M=this.bounds=c.getBounds(x),A=this.fitScale=c.scale(),p=c.translate();if(n.fitbounds){var S=c.getBounds(B_e(u.range,f.range)),y=Math.min((M[1][0]-M[0][0])/(S[1][0]-S[0][0]),(M[1][1]-M[0][1])/(S[1][1]-S[0][1]));isFinite(y)?c.scale(y*A):z_.warn("Something went wrong during"+this.id+"fitbounds computations.")}else c.scale(o.scale*A);var E=this.midPt=[(M[0][0]+M[1][0])/2,(M[0][1]+M[1][1])/2];if(c.translate([p[0]+(E[0]-p[0]),p[1]+(E[1]-p[1])]).clipExtent(M),n._isAlbersUsa){var C=c([d.lon,d.lat]),L=c.translate();c.translate([L[0]-(C[0]-L[0]),L[1]-(C[1]-L[1])])}};_h.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return Boolean(vu.lineLayers[h])}function l(h){return Boolean(vu.fillLayers[h])}var u=this.hasChoropleth?vu.layersForChoropleth:vu.layers,f=u.filter(function(h){return s(h)||l(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),c=r.framework.selectAll(".layer").data(f,String);c.exit().each(function(h){delete i[h],delete a[h],_d.select(this).remove()}),c.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=_d.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):l(h)&&(a[h]=d.append("path").style("stroke","none"))}),c.order(),c.each(function(h){var d=a[h],v=vu.layerNameToAdjective[h];h==="frame"?d.datum(vu.sphereSVG):s(h)||l(h)?d.datum(v2t(n,n.objects[h])):o(h)&&d.datum(p2t(h,t,e)).call(X5.stroke,t[h].gridcolor).call(F_.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(X5.stroke,t[v+"color"]).call(F_.dashLine,"",t[v+"width"]):l(h)&&d.call(X5.fill,t[v+"color"])})};_h.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;F_.setRect(this.clipRect,i,a,o,s),this.bgRect.call(F_.setRect,i,a,o,s).call(X5.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};_h.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var c=r.viewInitial,h={};for(var d in c)h[r.id+"."+d]=c[d];a2t.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function l(c){return r.projection.invert([c[0]+r.xaxis._offset,c[1]+r.yaxis._offset])}var u=function(c,h){if(h.isRect){var d=c.range={};d[r.id]=[l([h.xmin,h.ymin]),l([h.xmax,h.ymax])]}else{var v=c.lassoPoints={};v[r.id]=h.map(l)}},f={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(c){c===2&&u2t(n)}};a==="pan"?(i.node().onmousedown=null,i.call(c2t(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),f.prepFn=function(c,h,d){l2t(c,h,d,f,a)},I9.init(f)),i.on("mousemove",function(){var c=r.projection.invert(z_.getPositionFromD3Event());if(!c)return I9.unhover(n,_d.event);r.xaxis.p2c=function(){return c[0]},r.yaxis.p2c=function(){return c[1]},N_e.hover(n,_d.event,r.id)}),i.on("mouseout",function(){n._dragging||I9.unhover(n,_d.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&f2t(_d.event,n,[r.xaxis],[r.yaxis],r.id,f),o.indexOf("event")>-1&&N_e.click(n,_d.event))})};_h.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=_d.select(e.container).append("g").attr("class","geo "+e.id).call(F_.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},q9.setConvert(e.mockAxis,r)};_h.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},z_.extendFlat(this.viewInitial,i)};_h.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};_h._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?o2t(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function d2t(e){var t=e.projection,r=t.type,n=vu.projNames[r];n="geo"+z_.titleCase(n);for(var i=F9[n]||i2t[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?vu.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],l=function(c){return c?a:[]},u=0;uv}else return!1},a.getPath=function(){return r2t().projection(a)},a.getBounds=function(c){return a.getPath().bounds(c)},a.precision(vu.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-vu.clipPad),a}function p2t(e,t,r){var n=1e-6,i=2.5,a=t[e],o=vu.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(_,T){return[_,T]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(_,T){return[T,_]});var f={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};q9.setConvert(f,r);var c=q9.calcTicks(f);!t.isScoped&&e==="lonaxis"&&c.pop();for(var h=c.length,d=new Array(h),v=0;v0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var z9=J((QBt,W_e)=>{"use strict";var Lx=Ho(),g2t=Wa().attributes,m2t=Ss().dash,Ex=R_(),y2t=La().overrideAll,Y_e=Vb(),G_e={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}],description:["Sets the range of this axis (in degrees),","sets the map's clipped coordinates."].join(" ")},showgrid:{valType:"boolean",dflt:!1,description:"Sets whether or not graticule are shown on the map."},tick0:{valType:"number",dflt:0,description:["Sets the graticule's starting tick longitude/latitude."].join(" ")},dtick:{valType:"number",description:["Sets the graticule's longitude/latitude tick step."].join(" ")},gridcolor:{valType:"color",dflt:Lx.lightLine,description:["Sets the graticule's stroke color."].join(" ")},gridwidth:{valType:"number",min:0,dflt:1,description:["Sets the graticule's stroke width (in px)."].join(" ")},griddash:m2t},x2t=W_e.exports=y2t({domain:g2t({name:"geo"},{description:["Note that geo subplots are constrained by domain.","In general, when `projection.scale` is set to 1.","a map will fit either its x or y domain, but not both."].join(" ")}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot",description:["Determines if this subplot's view settings are auto-computed to fit trace data.","On scoped maps, setting `fitbounds` leads to `center.lon` and `center.lat` getting auto-filled.","On maps with a non-clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`,","and `projection.rotation.lon` getting auto-filled.","On maps with a clipped projection, setting `fitbounds` leads to `center.lon`, `center.lat`,","`projection.rotation.lon`, `projection.rotation.lat`, `lonaxis.range` and `lonaxis.range`","getting auto-filled.","If *locations*, only the trace's visible locations are considered in the `fitbounds` computations.","If *geojson*, the entire trace input `geojson` (if provided) is considered in the `fitbounds` computations,","Defaults to *false*."].join(" ")},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0,description:["Sets the resolution of the base layers.","The values have units of km/mm","e.g. 110 corresponds to a scale ratio of 1:110,000,000."].join(" ")},scope:{valType:"enumerated",values:Y_e(Ex.scopeDefaults),dflt:"world",description:"Set the scope of the map."},projection:{type:{valType:"enumerated",values:Y_e(Ex.projNames),description:"Sets the projection type."},rotation:{lon:{valType:"number",description:["Rotates the map along parallels","(in degrees East).","Defaults to the center of the `lonaxis.range` values."].join(" ")},lat:{valType:"number",description:["Rotates the map along meridians","(in degrees North)."].join(" ")},roll:{valType:"number",description:["Roll the map (in degrees)","For example, a roll of *180* makes the map appear upside down."].join(" ")}},tilt:{valType:"number",dflt:0,description:["For satellite projection type only.","Sets the tilt angle of perspective projection."].join(" ")},distance:{valType:"number",min:1.001,dflt:2,description:["For satellite projection type only.","Sets the distance from the center of the sphere to the point of view","as a proportion of the sphere\u2019s radius."].join(" ")},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}],description:["For conic projection types only.","Sets the parallels (tangent, secant)","where the cone intersects the sphere."].join(" ")},scale:{valType:"number",min:0,dflt:1,description:["Zooms in or out on the map view.","A scale of *1* corresponds to the largest zoom level","that fits the map's lon and lat ranges. "].join(" ")}},center:{lon:{valType:"number",description:["Sets the longitude of the map's center.","By default, the map's longitude center lies at the middle of the longitude range","for scoped projection and above `projection.rotation.lon` otherwise."].join(" ")},lat:{valType:"number",description:["Sets the latitude of the map's center.","For all projection types, the map's latitude center lies","at the middle of the latitude range by default."].join(" ")}},visible:{valType:"boolean",dflt:!0,description:"Sets the default visibility of the base layers."},showcoastlines:{valType:"boolean",description:"Sets whether or not the coastlines are drawn."},coastlinecolor:{valType:"color",dflt:Lx.defaultLine,description:"Sets the coastline color."},coastlinewidth:{valType:"number",min:0,dflt:1,description:"Sets the coastline stroke width (in px)."},showland:{valType:"boolean",dflt:!1,description:"Sets whether or not land masses are filled in color."},landcolor:{valType:"color",dflt:Ex.landColor,description:"Sets the land mass color."},showocean:{valType:"boolean",dflt:!1,description:"Sets whether or not oceans are filled in color."},oceancolor:{valType:"color",dflt:Ex.waterColor,description:"Sets the ocean color"},showlakes:{valType:"boolean",dflt:!1,description:"Sets whether or not lakes are drawn."},lakecolor:{valType:"color",dflt:Ex.waterColor,description:"Sets the color of the lakes."},showrivers:{valType:"boolean",dflt:!1,description:"Sets whether or not rivers are drawn."},rivercolor:{valType:"color",dflt:Ex.waterColor,description:"Sets color of the rivers."},riverwidth:{valType:"number",min:0,dflt:1,description:"Sets the stroke width (in px) of the rivers."},showcountries:{valType:"boolean",description:"Sets whether or not country boundaries are drawn."},countrycolor:{valType:"color",dflt:Lx.defaultLine,description:"Sets line color of the country boundaries."},countrywidth:{valType:"number",min:0,dflt:1,description:"Sets line width (in px) of the country boundaries."},showsubunits:{valType:"boolean",description:["Sets whether or not boundaries of subunits within countries","(e.g. states, provinces) are drawn."].join(" ")},subunitcolor:{valType:"color",dflt:Lx.defaultLine,description:"Sets the color of the subunits boundaries."},subunitwidth:{valType:"number",min:0,dflt:1,description:"Sets the stroke width (in px) of the subunits boundaries."},showframe:{valType:"boolean",description:"Sets whether or not a frame is drawn around the map."},framecolor:{valType:"color",dflt:Lx.defaultLine,description:"Sets the color the frame."},framewidth:{valType:"number",min:0,dflt:1,description:"Sets the stroke width (in px) of the frame."},bgcolor:{valType:"color",dflt:Lx.background,description:"Set the background color of the map"},lonaxis:G_e,lataxis:G_e},"plot","from-root");x2t.uirevision={valType:"any",editType:"none",description:["Controls persistence of user-driven changes in the view","(projection and center). Defaults to `layout.uirevision`."].join(" ")}});var J_e=J((eUt,Z_e)=>{"use strict";var Z5=gt(),b2t=Kw(),w2t=Nu().getSubplotData,J5=R_(),_2t=z9(),X_e=J5.axesNames;Z_e.exports=function(t,r,n){b2t(t,r,n,{type:"geo",attributes:_2t,handleDefaults:T2t,fullData:n,partition:"y"})};function T2t(e,t,r,n){var i=w2t(n.fullData,"geo",n.id),a=i.map(function(U){return U._expandedIndex}),o=r("resolution"),s=r("scope"),l=J5.scopeDefaults[s],u=r("projection.type",l.projType),f=t._isAlbersUsa=u==="albers usa";f&&(s=t.scope="usa");var c=t._isScoped=s!=="world",h=t._isSatellite=u==="satellite",d=t._isConic=u.indexOf("conic")!==-1||u==="albers",v=t._isClipped=!!J5.lonaxisSpan[u];if(e.visible===!1){var m=Z5.extendDeep({},t._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),t._template=m}for(var b=r("visible"),g,_=0;_0&&C<0&&(C+=360);var L=(E+C)/2,R;if(!f){var I=c?l.projRotate:[L,0,0];R=r("projection.rotation.lon",I[0]),r("projection.rotation.lat",I[1]),r("projection.rotation.roll",I[2]),g=r("showcoastlines",!c&&b),g&&(r("coastlinecolor"),r("coastlinewidth")),g=r("showocean",b?void 0:!1),g&&r("oceancolor")}var P,D;if(f?(P=-96.6,D=38.7):(P=c?L:R,D=(y[0]+y[1])/2),r("center.lon",P),r("center.lat",D),h&&(r("projection.tilt"),r("projection.distance")),d){var q=l.projParallels||[0,60];r("projection.parallels",q)}r("projection.scale"),g=r("showland",b?void 0:!1),g&&r("landcolor"),g=r("showlakes",b?void 0:!1),g&&r("lakecolor"),g=r("showrivers",b?void 0:!1),g&&(r("rivercolor"),r("riverwidth")),g=r("showcountries",c&&s!=="usa"&&b),g&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),c||(g=r("showframe",b),g&&(r("framecolor"),r("framewidth"))),r("bgcolor");var N=r("fitbounds");N&&(delete t.projection.scale,c?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var N9=J((tUt,Q_e)=>{"use strict";var A2t=Nu().getSubplotCalcData,M2t=gt().counterRegex,k2t=V_e(),gv="geo",$_e=M2t(gv),K_e={};K_e[gv]={valType:"subplotid",dflt:gv,editType:"calc",description:["Sets a reference between this trace's geospatial coordinates and","a geographic map.","If *geo* (the default value), the geospatial coordinates refer to","`layout.geo`.","If *geo2*, the geospatial coordinates refer to `layout.geo2`,","and so on."].join(" ")};function S2t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[gv],i=0;i{"use strict";e3e.exports={attributes:D_(),supplyDefaults:Fwe(),colorbar:pc(),formatLabels:Owe(),calc:Vwe(),calcGeoJSON:k9().calcGeoJSON,plot:k9().plot,style:_9(),styleOnSelect:Ef().styleOnSelect,hoverPoints:T_e(),eventData:M_e(),selectPoints:C_e(),moduleType:"trace",name:"scattergeo",basePlotModule:N9(),categories:["geo","symbols","showLegend","scatter-like"],meta:{hrName:"scatter_geo",description:["The data visualized as scatter point or lines on a geographic map","is provided either by longitude/latitude pairs in `lon` and `lat`","respectively or by geographic location IDs or names in `locations`."].join(" ")}}});var n3e=J((nUt,r3e)=>{"use strict";r3e.exports=t3e()});var $5=J((iUt,o3e)=>{"use strict";var L2t=Jn().hovertemplateAttrs,tp=D_(),D2t=Da(),i3e=Qi(),R2t=Ho().defaultLine,ep=cn().extendFlat,a3e=tp.marker.line;o3e.exports=ep({locations:{valType:"data_array",editType:"calc",description:["Sets the coordinates via location IDs or names.","See `locationmode` for more info."].join(" ")},locationmode:tp.locationmode,z:{valType:"data_array",editType:"calc",description:"Sets the color values."},geojson:ep({},tp.geojson,{description:["Sets optional GeoJSON data associated with this trace.","If not given, the features on the base map are used.","It can be set as a valid GeoJSON object or as a URL string.","Note that we only accept GeoJSONs of type *FeatureCollection* or *Feature*","with geometries of type *Polygon* or *MultiPolygon*."].join(" ")}),featureidkey:tp.featureidkey,text:ep({},tp.text,{description:"Sets the text elements associated with each location."}),hovertext:ep({},tp.hovertext,{description:"Same as `text`."}),marker:{line:{color:ep({},a3e.color,{dflt:R2t}),width:ep({},a3e.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style",description:"Sets the opacity of the locations."},editType:"calc"},selected:{marker:{opacity:tp.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:tp.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:ep({},i3e.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:L2t(),showlegend:ep({},i3e.showlegend,{dflt:!1})},D2t("",{cLetter:"z",editTypeOverride:"calc"}))});var l3e=J((aUt,s3e)=>{"use strict";var K5=gt(),P2t=vl(),I2t=$5();s3e.exports=function(t,r,n,i){function a(h,d){return K5.coerce(t,r,I2t,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&K5.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var l=a("geojson"),u;(typeof l=="string"&&l!==""||K5.isPlainObject(l))&&(u="geojson-id");var f=a("locationmode",u);f==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),P2t(t,r,i,a,{prefix:"",cLetter:"z"}),K5.coerceSelectionMarkerOpacity(r,a)}});var h3e=J((oUt,c3e)=>{"use strict";var u3e=dn(),q2t=oi().BADNUM,F2t=Uu(),z2t=nd(),N2t=oh();function f3e(e){return e&&typeof e=="string"}c3e.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(f){return f3e(f)||u3e(f)}:a=f3e;for(var o=0;o{"use strict";var O2t=Nr(),B2t=qr(),O9=ln(),U2t=Qa();function H2t(e,t){t&&v3e(e,t)}function v3e(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=U2t.makeColorScaleFuncFromTrace(r);i.each(function(l){O2t.select(this).attr("fill",s(l.z)).call(B2t.stroke,l.mlc||o.color).call(O9.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),O9.selectedPointStyle(i,r)}function j2t(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?O9.selectedPointStyle(r.selectAll(".choroplethlocation"),n):v3e(e,t)}d3e.exports={style:H2t,styleOnSelect:j2t}});var B9=J((lUt,m3e)=>{"use strict";var V2t=Nr(),p3e=gt(),Dx=U5(),Y2t=q5().getTopojsonFeatures,g3e=ec().findExtremes,G2t=Q5().style;function W2t(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");p3e.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=V2t.select(this),o=a.selectAll("path.choroplethlocation").data(p3e.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),G2t(e,i)})}function X2t(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?Dx.extractTraceFeature(e):Y2t(r,i.topojson),l=[],u=[],f=0;f{"use strict";var Z2t=nn(),J2t=$5(),$2t=gt().fillText;y3e.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,l,u,f,c=[r,n],h=[r+360,n];for(l=0;l")}}});var w3e=J((fUt,b3e)=>{"use strict";b3e.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var T3e=J((cUt,_3e)=>{"use strict";_3e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l,u,f,c;if(r===!1)for(s=0;s{"use strict";A3e.exports={attributes:$5(),supplyDefaults:l3e(),colorbar:Nw(),calc:h3e(),calcGeoJSON:B9().calcGeoJSON,plot:B9().plot,style:Q5().style,styleOnSelect:Q5().styleOnSelect,hoverPoints:x3e(),eventData:w3e(),selectPoints:T3e(),moduleType:"trace",name:"choropleth",basePlotModule:N9(),categories:["geo","noOpacity","showLegend"],meta:{description:["The data that describes the choropleth value-to-color mapping","is set in `z`.","The geographic locations corresponding to each value in `z`","are set in `locations`."].join(" ")}}});var S3e=J((vUt,k3e)=>{"use strict";k3e.exports=M3e()});var H9=J((dUt,C3e)=>{"use strict";var U9=ds();C3e.exports={x:U9.x,y:U9.y,xy:{valType:"data_array",editType:"calc",description:["Faster alternative to specifying `x` and `y` separately.","If supplied, it must be a typed `Float32Array` array that","represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]`"].join(" ")},indices:{valType:"data_array",editType:"calc",description:["A sequential value, 0..n, supply it to avoid creating this array inside plotting.","If specified, it must be a typed `Int32Array` array.","Its length must be equal to or greater than the number of points.","For the best performance and memory use, create one large `indices` typed array","that is guaranteed to be at least as long as the largest number of points during","use, and reuse it on each `Plotly.restyle()` call."].join(" ")},xbounds:{valType:"data_array",editType:"calc",description:["Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through","the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits."].join(" ")},ybounds:{valType:"data_array",editType:"calc",description:["Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through","the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits."].join(" ")},text:U9.text,marker:{color:{valType:"color",arrayOk:!1,editType:"calc",description:["Sets the marker fill color. It accepts a specific color.","If the color is not fully opaque and there are hundreds of thousands","of points, it may cause slower zooming and panning."].join(" ")},opacity:{valType:"number",min:0,max:1,dflt:1,arrayOk:!1,editType:"calc",description:["Sets the marker opacity. The default value is `1` (fully opaque).","If the markers are not fully opaque and there are hundreds of thousands","of points, it may cause slower zooming and panning.","Opacity fades the color even if `blend` is left on `false` even if there","is no translucency effect in that case."].join(" ")},blend:{valType:"boolean",dflt:null,editType:"calc",description:["Determines if colors are blended together for a translucency effect","in case `opacity` is specified as a value less then `1`.","Setting `blend` to `true` reduces zoom/pan","speed if used with large numbers of points."].join(" ")},sizemin:{valType:"number",min:.1,max:2,dflt:.5,editType:"calc",description:["Sets the minimum size (in px) of the rendered marker points, effective when","the `pointcloud` shows a million or more points."].join(" ")},sizemax:{valType:"number",min:.1,dflt:20,editType:"calc",description:["Sets the maximum size (in px) of the rendered marker points.","Effective when the `pointcloud` shows only few points."].join(" ")},border:{color:{valType:"color",arrayOk:!1,editType:"calc",description:["Sets the stroke color. It accepts a specific color.","If the color is not fully opaque and there are hundreds of thousands","of points, it may cause slower zooming and panning."].join(" ")},arearatio:{valType:"number",min:0,max:1,dflt:0,editType:"calc",description:["Specifies what fraction of the marker area is covered with the","border."].join(" ")},editType:"calc"},editType:"calc"},transforms:void 0}});var L3e=J((pUt,E3e)=>{"use strict";var Q2t=gt(),ewt=H9();E3e.exports=function(t,r,n){function i(a,o){return Q2t.coerce(t,r,ewt,a,o)}i("x"),i("y"),i("xbounds"),i("ybounds"),t.xy&&t.xy instanceof Float32Array&&(r.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(r.indices=t.indices),i("text"),i("marker.color",n),i("marker.opacity"),i("marker.blend"),i("marker.sizemin"),i("marker.sizemax"),i("marker.border.color",n),i("marker.border.arearatio"),r._length=null}});var q3e=J((gUt,I3e)=>{"use strict";var twt=ao().gl_pointcloud2d,rwt=gt().isArrayOrTypedArray,D3e=Ac(),R3e=ec().findExtremes,nwt=rk();function P3e(e,t){this.scene=e,this.uid=t,this.type="pointcloud",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color="rgb(0, 0, 0)",this.name="",this.hoverinfo="all",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=twt(e.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var e4=P3e.prototype;e4.handlePick=function(e){var t=this.idToIndex[e.pointId];return{trace:this,dataCoord:e.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[t*2],this.pickXYData[t*2+1]]:[this.pickXData[t],this.pickYData[t]],textLabel:rwt(this.textLabels)?this.textLabels[t]:this.textLabels,color:this.color,name:this.name,pointIndex:t,hoverinfo:this.hoverinfo}};e4.update=function(e){this.index=e.index,this.textLabels=e.text,this.name=e.name,this.hoverinfo=e.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(e),this.color=nwt(e,{})};e4.updateFast=function(e){var t=this.xData=this.pickXData=e.x,r=this.yData=this.pickYData=e.y,n=this.pickXYData=e.xy,i=e.xbounds&&e.ybounds,a=e.indices,o,s,l,u=this.bounds,f,c,h;if(n){if(l=n,o=n.length>>>1,i)u[0]=e.xbounds[0],u[2]=e.xbounds[1],u[1]=e.ybounds[0],u[3]=e.ybounds[1];else for(h=0;hu[2]&&(u[2]=f),cu[3]&&(u[3]=c);if(a)s=a;else for(s=new Int32Array(o),h=0;hu[2]&&(u[2]=f),cu[3]&&(u[3]=c);this.idToIndex=s,this.pointcloudOptions.idToIndex=s,this.pointcloudOptions.positions=l;var d=D3e(e.marker.color),v=D3e(e.marker.border.color),m=e.opacity*e.marker.opacity;d[3]*=m,this.pointcloudOptions.color=d;var b=e.marker.blend;if(b===null){var g=100;b=t.length{"use strict";var awt=nn(),hm=Ac();function F3e(e){this.scene=e,this.gl=e.gl,this.pixelRatio=e.pixelRatio,this.screenBox=[0,0,1,1],this.viewBox=[0,0,1,1],this.dataBox=[-1,-1,1,1],this.borderLineEnable=[!1,!1,!1,!1],this.borderLineWidth=[1,1,1,1],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.ticks=[[],[]],this.tickEnable=[!0,!0,!1,!1],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labels=["x","y"],this.labelEnable=[!0,!0,!1,!1],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelPad=[15,15,15,15],this.labelSize=[12,12],this.labelFont=["sans-serif","sans-serif"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.title="",this.titleEnable=!0,this.titleCenter=[0,0,0,0],this.titleAngle=0,this.titleColor=[0,0,0,1],this.titleFont="sans-serif",this.titleSize=18,this.gridLineEnable=[!0,!0],this.gridLineColor=[[0,0,0,.5],[0,0,0,.5]],this.gridLineWidth=[1,1],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[1,1],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.static=this.scene.staticPlot}var vm=F3e.prototype,owt=["xaxis","yaxis"];vm.merge=function(e){this.titleEnable=!1,this.backgroundColor=hm(e.plot_bgcolor);var t,r,n,i,a,o,s,l,u,f,c;for(f=0;f<2;++f){t=owt[f];var h=t.charAt(0);for(r=e[this.scene[t]._name],n=r.title.text===this.scene.fullLayout._dfltTitle[h]?"":r.title.text,c=0;c<=2;c+=2)this.labelEnable[f+c]=!1,this.labels[f+c]=n,this.labelColor[f+c]=hm(r.title.font.color),this.labelFont[f+c]=r.title.font.family,this.labelSize[f+c]=r.title.font.size,this.labelPad[f+c]=this.getLabelPad(t,r),this.tickEnable[f+c]=!1,this.tickColor[f+c]=hm((r.tickfont||{}).color),this.tickAngle[f+c]=r.tickangle==="auto"?0:Math.PI*-r.tickangle/180,this.tickPad[f+c]=this.getTickPad(r),this.tickMarkLength[f+c]=0,this.tickMarkWidth[f+c]=r.tickwidth||0,this.tickMarkColor[f+c]=hm(r.tickcolor),this.borderLineEnable[f+c]=!1,this.borderLineColor[f+c]=hm(r.linecolor),this.borderLineWidth[f+c]=r.linewidth||0;s=this.hasSharedAxis(r),a=this.hasAxisInDfltPos(t,r)&&!s,o=this.hasAxisInAltrPos(t,r)&&!s,i=r.mirror||!1,l=s?String(i).indexOf("all")!==-1:!!i,u=s?i==="allticks":String(i).indexOf("ticks")!==-1,a?this.labelEnable[f]=!0:o&&(this.labelEnable[f+2]=!0),a?this.tickEnable[f]=r.showticklabels:o&&(this.tickEnable[f+2]=r.showticklabels),(a||l)&&(this.borderLineEnable[f]=r.showline),(o||l)&&(this.borderLineEnable[f+2]=r.showline),(a||u)&&(this.tickMarkLength[f]=this.getTickMarkLength(r)),(o||u)&&(this.tickMarkLength[f+2]=this.getTickMarkLength(r)),this.gridLineEnable[f]=r.showgrid,this.gridLineColor[f]=hm(r.gridcolor),this.gridLineWidth[f]=r.gridwidth,this.zeroLineEnable[f]=r.zeroline,this.zeroLineColor[f]=hm(r.zerolinecolor),this.zeroLineWidth[f]=r.zerolinewidth}};vm.hasSharedAxis=function(e){var t=this.scene,r=t.fullLayout._subplots.gl2d,n=awt.findSubplotsWithAxis(r,e);return n.indexOf(t.id)!==0};vm.hasAxisInDfltPos=function(e,t){var r=t.side;if(e==="xaxis")return r==="bottom";if(e==="yaxis")return r==="left"};vm.hasAxisInAltrPos=function(e,t){var r=t.side;if(e==="xaxis")return r==="top";if(e==="yaxis")return r==="right"};vm.getLabelPad=function(e,t){var r=1.5,n=t.title.font.size,i=t.showticklabels;if(e==="xaxis")return t.side==="top"?-10+n*(r+(i?1:0)):-10+n*(r+(i?.5:0));if(e==="yaxis")return t.side==="right"?10+n*(r+(i?1:.5)):10+n*(r+(i?.5:0))};vm.getTickPad=function(e){return e.ticks==="outside"?10+e.ticklen:15};vm.getTickMarkLength=function(e){if(!e.ticks)return 0;var t=e.ticklen;return e.ticks==="inside"?-t:t};function swt(e){return new F3e(e)}z3e.exports=swt});var O3e=J(N_=>{"use strict";function lwt(e){if(typeof e=="object"){if("buttons"in e)return e.buttons;if("which"in e){var t=e.which;if(t===2)return 4;if(t===3)return 2;if(t>0)return 1<=0)return 1<{"use strict";B3e.exports=cwt;var O_=O3e();function cwt(e,t){t||(t=e,e=window);var r=0,n=0,i=0,a={shift:!1,alt:!1,control:!1,meta:!1},o=!1;function s(_){var T=!1;return"altKey"in _&&(T=T||_.altKey!==a.alt,a.alt=!!_.altKey),"shiftKey"in _&&(T=T||_.shiftKey!==a.shift,a.shift=!!_.shiftKey),"ctrlKey"in _&&(T=T||_.ctrlKey!==a.control,a.control=!!_.ctrlKey),"metaKey"in _&&(T=T||_.metaKey!==a.meta,a.meta=!!_.metaKey),T}function l(_,T){var w=O_.x(T),k=O_.y(T);"buttons"in T&&(_=T.buttons|0),(_!==r||w!==n||k!==i||s(T))&&(r=_|0,n=w||0,i=k||0,t&&t(r,n,i,a))}function u(_){l(0,_)}function f(){(r||n||i||a.shift||a.alt||a.meta||a.control)&&(n=i=0,r=0,a.shift=a.alt=a.control=a.meta=!1,t&&t(0,0,0,a))}function c(_){s(_)&&t&&t(r,n,i,a)}function h(_){O_.buttons(_)===0?l(0,_):l(r,_)}function d(_){l(r|O_.buttons(_),_)}function v(_){l(r&~O_.buttons(_),_)}function m(){o||(o=!0,e.addEventListener("mousemove",h),e.addEventListener("mousedown",d),e.addEventListener("mouseup",v),e.addEventListener("mouseleave",u),e.addEventListener("mouseenter",u),e.addEventListener("mouseout",u),e.addEventListener("mouseover",u),e.addEventListener("blur",f),e.addEventListener("keyup",c),e.addEventListener("keydown",c),e.addEventListener("keypress",c),e!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",c),window.addEventListener("keydown",c),window.addEventListener("keypress",c)))}function b(){o&&(o=!1,e.removeEventListener("mousemove",h),e.removeEventListener("mousedown",d),e.removeEventListener("mouseup",v),e.removeEventListener("mouseleave",u),e.removeEventListener("mouseenter",u),e.removeEventListener("mouseout",u),e.removeEventListener("mouseover",u),e.removeEventListener("blur",f),e.removeEventListener("keyup",c),e.removeEventListener("keydown",c),e.removeEventListener("keypress",c),e!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",c),window.removeEventListener("keydown",c),window.removeEventListener("keypress",c)))}m();var g={element:e};return Object.defineProperties(g,{enabled:{get:function(){return o},set:function(_){_?m():b()},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return n},enumerable:!0},y:{get:function(){return i},enumerable:!0},mods:{get:function(){return a},enumerable:!0}}),g}});var j3e=J((bUt,H3e)=>{H3e.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var G3e=J((wUt,Y3e)=>{"use strict";var hwt=j3e();Y3e.exports=V3e;var B_=96;function V9(e,t){var r=hwt(getComputedStyle(e).getPropertyValue(t));return r[0]*V3e(r[1],e)}function vwt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=V9(r,"font-size")/128;return t.removeChild(r),n}function V3e(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return vwt(e,t);case"em":return V9(t,"font-size");case"rem":return V9(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 B_;case"cm":return B_/2.54;case"mm":return B_/25.4;case"pt":return B_/72;case"pc":return B_/6}return 1}});var X3e=J((_Ut,W3e)=>{"use strict";var dwt=G3e();W3e.exports=pwt;function pwt(e,t,r){typeof e=="function"&&(r=!!t,t=e,e=window);var n=dwt("ex",e),i=function(a){r&&a.preventDefault();var o=a.deltaX||0,s=a.deltaY||0,l=a.deltaZ||0,u=a.deltaMode,f=1;switch(u){case 1:f=n;break;case 2:f=window.innerHeight;break}if(o*=f,s*=f,l*=f,o||s||l)return t(o,s,l,a)};return e.addEventListener("wheel",i),i}});var K3e=J((TUt,$3e)=>{"use strict";var gwt=U3e(),mwt=X3e(),Z3e=vD(),J3e=Eo(),Y9=d2();$3e.exports=xwt;function ywt(e,t){this.element=e,this.plot=t,this.mouseListener=null,this.wheelListener=null,this.lastInputTime=Date.now(),this.lastPos=[0,0],this.boxEnabled=!1,this.boxInited=!1,this.boxStart=[0,0],this.boxEnd=[0,0],this.dragStart=[0,0]}function xwt(e){var t=e.mouseContainer,r=e.glplot,n=new ywt(t,r);function i(){e.xaxis.autorange=!1,e.yaxis.autorange=!1}function a(){for(var s=e.graphDiv._fullLayout._axisConstraintGroups,l=e.xaxis._id,u=e.yaxis._id,f=0;fMath.abs(g)?(n.boxEnd[1]=n.boxStart[1]+Math.abs(b)*M*(g>=0?1:-1),n.boxEnd[1]f[3]&&(n.boxEnd[1]=f[3],n.boxEnd[0]=n.boxStart[0]+(f[3]-n.boxStart[1])/Math.abs(M))):(n.boxEnd[0]=n.boxStart[0]+Math.abs(g)/M*(b>=0?1:-1),n.boxEnd[0]f[2]&&(n.boxEnd[0]=f[2],n.boxEnd[1]=n.boxStart[1]+(f[2]-n.boxStart[0])*Math.abs(M)))}else k&&(n.boxEnd[0]=n.boxStart[0]),x&&(n.boxEnd[1]=n.boxStart[1])}else n.boxEnabled?(b=n.boxStart[0]!==n.boxEnd[0],g=n.boxStart[1]!==n.boxEnd[1],b||g?(b&&(_(0,n.boxStart[0],n.boxEnd[0]),e.xaxis.autorange=!1),g&&(_(1,n.boxStart[1],n.boxEnd[1]),e.yaxis.autorange=!1),e.relayoutCallback()):e.glplot.setDirty(),n.boxEnabled=!1,n.boxInited=!1):n.boxInited&&(n.boxInited=!1);break;case"pan":n.boxEnabled=!1,n.boxInited=!1,s?(n.panning||(n.dragStart[0]=l,n.dragStart[1]=u),Math.abs(n.dragStart[0]-l){"use strict";var tTe=zr(),G9=nn(),Th=go(),bwt=ao().gl_plot2d,wwt=ao().gl_spikes2d,_wt=ao().gl_select_box,Q3e=x7(),Twt=N3e(),Awt=K3e(),Mwt=b7(),rTe=_0(),kwt=rTe.enforce,eTe=rTe.clean,Swt=ec().doAutoRange,nTe=y0(),Cwt=nTe.drawMode,Ewt=nTe.selectMode,Lwt=["xaxis","yaxis"],U_,t4,Dwt=Eo().SUBPLOT_PATTERN;function iTe(e,t){this.container=e.container,this.graphDiv=e.graphDiv,this.pixelRatio=e.plotGlPixelRatio||window.devicePixelRatio,this.id=e.id,this.staticPlot=!!e.staticPlot,this.scrollZoom=this.graphDiv._context._scrollZoom.cartesian,this.fullData=null,this.updateRefs(t),this.makeFramework(),!this.stopped&&(this.glplotOptions=Twt(this),this.glplotOptions.merge(t),this.glplot=bwt(this.glplotOptions),this.camera=Awt(this),this.traces={},this.spikes=wwt(this.glplot),this.selectBox=_wt(this.glplot,{innerFill:!1,outerFill:!0}),this.lastButtonState=0,this.pickResult=null,this.isMouseOver=!0,this.stopped=!1,this.redraw=this.draw.bind(this),this.redraw())}aTe.exports=iTe;var Ks=iTe.prototype;Ks.makeFramework=function(){if(this.staticPlot){if(!t4&&(U_=document.createElement("canvas"),t4=Q3e({canvas:U_,preserveDrawingBuffer:!1,premultipliedAlpha:!0,antialias:!0}),!t4))throw new Error("Error creating static canvas/context for image server");this.canvas=U_,this.gl=t4}else{var e=this.container.querySelector(".gl-canvas-focus"),t=Q3e({canvas:e,preserveDrawingBuffer:!0,premultipliedAlpha:!0});if(!t){Mwt(this),this.stopped=!0;return}this.canvas=e,this.gl=t}var r=this.canvas;r.style.width="100%",r.style.height="100%",r.style.position="absolute",r.style.top="0px",r.style.left="0px",r.style["pointer-events"]="none",this.updateSize(r);var n=this.svgContainer=document.createElementNS("http://www.w3.org/2000/svg","svg");n.style.position="absolute",n.style.top=n.style.left="0px",n.style.width=n.style.height="100%",n.style["z-index"]=20,n.style["pointer-events"]="none";var i=this.mouseContainer=document.createElement("div");i.style.position="absolute",i.style["pointer-events"]="auto",this.pickCanvas=this.container.querySelector(".gl-canvas-pick");var a=this.container;a.appendChild(n),a.appendChild(i);var o=this;i.addEventListener("mouseout",function(){o.isMouseOver=!1,o.unhover()}),i.addEventListener("mouseover",function(){o.isMouseOver=!0})};Ks.toImage=function(e){e||(e="png"),this.stopped=!0,this.staticPlot&&this.container.appendChild(U_),this.updateSize(this.canvas);var t=this.glplot.gl,r=t.drawingBufferWidth,n=t.drawingBufferHeight;t.clearColor(1,1,1,0),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT),this.glplot.setDirty(),this.glplot.draw(),t.bindFramebuffer(t.FRAMEBUFFER,null);var i=new Uint8Array(r*n*4);t.readPixels(0,0,r,n,t.RGBA,t.UNSIGNED_BYTE,i);for(var a=0,o=n-1;a{"use strict";var sTe=La().overrideAll,Pwt=oTe(),Iwt=zp(),qwt=Gh(),lTe=Eo(),r4=gs(),Fwt=Uv(),uTe=Nu().getSubplotData;du.name="gl2d";du.attr=["xaxis","yaxis"];du.idRoot=["x","y"];du.idRegex=lTe.idRegex;du.attrRegex=lTe.attrRegex;du.attributes=gR();du.supplyLayoutDefaults=function(e,t,r){t._has("cartesian")||r4.supplyLayoutDefaults(e,t,r)};du.layoutAttrOverrides=sTe(r4.layoutAttributes,"plot","from-root");du.baseLayoutAttrOverrides=sTe({plot_bgcolor:Iwt.plot_bgcolor,hoverlabel:Fwt.hoverlabel},"plot","nested");du.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots.gl2d,a=0;a{"use strict";var zwt=["*pointcloud* trace is deprecated!","Please consider switching to the *scattergl* trace type."].join(" ");fTe.exports={attributes:H9(),supplyDefaults:L3e(),calc:y7(),plot:q3e(),moduleType:"trace",name:"pointcloud",basePlotModule:W9(),categories:["gl","gl2d","showLegend"],meta:{description:[zwt,"The data visualized as a point cloud set in `x` and `y`","using the WebGl plotting engine."].join(" ")}}});var vTe=J((SUt,hTe)=>{"use strict";hTe.exports=cTe()});var Z9=J((CUt,pTe)=>{"use strict";var Nwt=Ug(),Owt=Da(),Bwt=cn().extendFlat,Uwt=La().overrideAll,dTe=["z","x","x0","dx","y","y0","dy","text","transpose","xtype","ytype"],i4={};for(n4=0;n4{"use strict";var Hwt=gt(),jwt=qw(),Vwt=vl(),Ywt=Z9();gTe.exports=function(t,r,n,i){function a(s,l){return Hwt.coerce(t,r,Ywt,s,l)}var o=jwt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("zsmooth"),Vwt(t,r,i,a,{prefix:"",cLetter:"z"})}});var wTe=J((LUt,bTe)=>{"use strict";var Gwt=ao().gl_heatmap2d,yTe=nn(),Wwt=Ac();function xTe(e,t){this.scene=e,this.uid=t,this.type="heatmapgl",this.name="",this.hoverinfo="all",this.xData=[],this.yData=[],this.zData=[],this.textLabels=[],this.idToIndex=[],this.bounds=[0,0,0,0],this.options={zsmooth:"fast",z:[],x:[],y:[],shape:[0,0],colorLevels:[0],colorValues:[0,0,0,1]},this.heatmap=Gwt(e.glplot,this.options),this.heatmap._trace=this}var J9=xTe.prototype;J9.handlePick=function(e){var t=this.options,r=t.shape,n=e.pointId,i=n%r[0],a=Math.floor(n/r[0]),o=n;return{trace:this,dataCoord:e.dataCoord,traceCoord:[t.x[i],t.y[a],t.z[o]],textLabel:this.textLabels[n],name:this.name,pointIndex:[a,i],hoverinfo:this.hoverinfo}};J9.update=function(e,t){var r=t[0];this.index=e.index,this.name=e.name,this.hoverinfo=e.hoverinfo;var n=r.z;this.options.z=[].concat.apply([],n);var i=n[0].length,a=n.length;this.options.shape=[i,a],this.options.x=r.x,this.options.y=r.y,this.options.zsmooth=e.zsmooth;var o=Xwt(e);this.options.colorLevels=o.colorLevels,this.options.colorValues=o.colorValues,this.textLabels=[].concat.apply([],e.text),this.heatmap.update(this.options);var s=this.scene.xaxis,l=this.scene.yaxis,u,f;e.zsmooth===!1&&(u={ppad:r.x[1]-r.x[0]},f={ppad:r.y[1]-r.y[0]}),e._extremes[s._id]=yTe.findExtremes(s,r.x,u),e._extremes[l._id]=yTe.findExtremes(l,r.y,f)};J9.dispose=function(){this.heatmap.dispose()};function Xwt(e){for(var t=e.colorscale,r=e.zmin,n=e.zmax,i=t.length,a=new Array(i),o=new Array(4*i),s=0;s{"use strict";var Jwt=["*heatmapgl* trace is deprecated!","Please consider switching to the *heatmap* or *image* trace types.","Alternatively you could contribute/sponsor rewriting this trace type","based on cartesian features and using regl framework."].join(" ");_Te.exports={attributes:Z9(),supplyDefaults:mTe(),colorbar:Nw(),calc:zw(),plot:wTe(),moduleType:"trace",name:"heatmapgl",basePlotModule:W9(),categories:["gl","gl2d","2dMap"],meta:{description:[Jwt,"WebGL version of the heatmap trace type."].join(" ")}}});var MTe=J((RUt,ATe)=>{"use strict";ATe.exports=TTe()});var $9=J((PUt,ETe)=>{"use strict";var STe=cn().extendFlat,$wt=Qi(),kTe=xa(),Kwt=Da(),CTe=Jn().hovertemplateAttrs,Qwt=Wa().attributes,e_t=STe({editType:"calc"},Kwt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot",description:["Sets the shape of the paths.","If `linear`, paths are composed of straight lines.","If `hspline`, paths are composed of horizontal curved splines"].join(" ")},hovertemplate:CTe({editType:"plot",arrayOk:!1},{keys:["count","probability"],description:["This value here applies when hovering over lines."].join(" ")})});ETe.exports={domain:Qwt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:STe({},$wt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot",description:["Sets the hover interaction mode for the parcats diagram.","If `category`, hover interaction take place per category.","If `color`, hover interactions take place per color per category.","If `dimension`, hover interactions take place across all categories per dimension."].join(" ")},hovertemplate:CTe({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"],description:["This value here applies when hovering over dimensions.","Note that `*categorycount`, *colorcount* and *bandcolorcount*","are only available when `hoveron` contains the *color* flag"].join(" ")}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot",description:["Sets the drag interaction mode for categories and dimensions.","If `perpendicular`, the categories can only move along a line perpendicular to the paths.","If `freeform`, the categories can freely move on the plane.","If `fixed`, the categories and dimensions are stationary."].join(" ")},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot",description:"Sort paths so that like colors are bundled together within each category."},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot",description:["Sets the path sorting algorithm.","If `forward`, sort paths based on dimension categories from left to right.","If `backward`, sort paths based on dimensions categories from right to left."].join(" ")},labelfont:kTe({editType:"calc",description:"Sets the font for the `dimension` labels."}),tickfont:kTe({autoShadowDflt:!0,editType:"calc",description:"Sets the font for the `category` labels."}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc",description:"The shown name of the dimension."},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc",description:["Specifies the ordering logic for the categories in the dimension.","By default, plotly uses *trace*, which specifies the order that is present in the data supplied.","Set `categoryorder` to *category ascending* or *category descending* if order should be determined by","the alphanumerical order of the category names.","Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category","is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to","the *trace* mode. The unspecified categories will follow the categories in `categoryarray`."].join(" ")},categoryarray:{valType:"data_array",editType:"calc",description:["Sets the order in which categories in this dimension appear.","Only has an effect if `categoryorder` is set to *array*.","Used with `categoryorder`."].join(" ")},ticktext:{valType:"data_array",editType:"calc",description:["Sets alternative tick labels for the categories in this dimension.","Only has an effect if `categoryorder` is set to *array*.","Should be an array the same length as `categoryarray`","Used with `categoryorder`."].join(" ")},values:{valType:"data_array",dflt:[],editType:"calc",description:["Dimension values. `values[n]` represents the category value of the `n`th point in the dataset,","therefore the `values` vector for all dimensions must be the same (longer vectors","will be truncated)."].join(" ")},displayindex:{valType:"integer",editType:"calc",description:["The display index of dimension, from left to right, zero indexed, defaults to dimension","index."].join(" ")},editType:"calc",description:"The dimensions (variables) of the parallel categories diagram.",visible:{valType:"boolean",dflt:!0,editType:"calc",description:"Shows the dimension when set to `true` (the default). Hides the dimension for `false`."}},line:e_t,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc",description:["The number of observations represented by each state. Defaults to 1 so that each state represents","one observation"].join(" ")},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var DTe=J((IUt,LTe)=>{"use strict";LTe.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i{"use strict";var Rx=gt(),t_t=nu().hasColorscale,r_t=vl(),n_t=Wa().defaults,i_t=Bu(),RTe=$9(),a_t=DTe(),o_t=fl().isTypedArraySpec;function s_t(e,t,r,n,i){i("line.shape"),i("line.hovertemplate");var a=i("line.color",n.colorway[0]);if(t_t(e,"line")&&Rx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),r_t(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function l_t(e,t){function r(u,f){return Rx.coerce(e,t,RTe.dimensions,u,f)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=Rx.isArrayOrTypedArray(a)&&a.length>0||o_t(a),s;o&&(s="array");var l=r("categoryorder",s);l==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&l==="array"&&(t.categoryorder="trace")}}PTe.exports=function(t,r,n,i){function a(u,f){return Rx.coerce(t,r,RTe,u,f)}var o=i_t(t,r,{name:"dimensions",handleItemDefaults:l_t}),s=s_t(t,r,n,i,a);n_t(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),a_t(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;Rx.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),Rx.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var Px=J((FUt,FTe)=>{"use strict";var u_t=jb();function qTe(e){return[e]}FTe.exports={keyFun:function(e){return e.key},repeat:qTe,descend:u_t,wrap:qTe,unwrap:function(e){return e[0]}}});var NTe=J((zUt,zTe)=>{"use strict";var f_t=Px().wrap,c_t=nu().hasColorscale,h_t=Uu(),v_t=zE(),d_t=ln(),H_=gt(),p_t=dn();zTe.exports=function(t,r){var n=H_.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(p){var S;if(p.categoryorder==="trace")S=null;else if(p.categoryorder==="array")S=p.categoryarray;else{S=v_t(p.values);for(var y=!0,E=0;E=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var WTe=J((NUt,GTe)=>{"use strict";var ci=Nr(),k_t=(Qg(),s1(Kg)).interpolateNumber,S_t=jM(),Y_=go(),rp=gt(),j_=rp.strTranslate,OTe=ln(),K9=ls(),C_t=ca();function E_t(e,t,r,n){var i=t._context.staticPlot,a=e.map(V_t.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,Td),l=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(_){return j_(_.x,_.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),f=u.selectAll("path.path").data(function(_){return _.paths},Td);f.attr("fill",function(_){return _.model.color});var c=f.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(_){return _.model.color}).attr("fill-opacity",0);tF(c),f.attr("d",function(_){return _.svgD}),c.empty()||f.sort(Q9),f.exit().remove(),f.on("mouseover",L_t).on("mouseout",D_t).on("click",R_t),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(_){return _.dimensions},Td);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(_){return j_(_.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(_){return _.categories},Td),m=v.enter().append("g").attr("class","category");v.attr("transform",function(_){return j_(0,_.y)}),m.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(_){return _.width}).attr("height",function(_){return _.height}),UTe(m);var b=v.selectAll("rect.bandrect").data(function(_){return _.bands},Td);b.each(function(){rp.raiseToTop(this)}),b.attr("fill",function(_){return _.color});var g=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(_){return _.color}).attr("fill-opacity",0);b.attr("fill",function(_){return _.color}).attr("width",function(_){return _.width}).attr("height",function(_){return _.height}).attr("y",function(_){return _.y}).attr("cursor",function(_){return _.parcatsViewModel.arrangement==="fixed"?"default":_.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),nF(g),b.exit().remove(),m.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(_){return V_(_)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(_){return V_(_)?_.width+5:-5}).attr("y",function(_){return _.height/2}).text(function(_){return _.model.categoryLabel}).each(function(_){OTe.font(ci.select(this),_.parcatsViewModel.categorylabelfont),C_t.convertToTspans(ci.select(this),t)}),m.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(_){return _.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(_){return _.width/2}).attr("y",-5).text(function(_,T){return T===0?_.parcatsViewModel.model.dimensions[_.model.dimensionInd].dimensionLabel:null}).each(function(_){OTe.font(ci.select(this),_.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",O_t).on("mouseout",B_t),v.exit().remove(),d.call(ci.behavior.drag().origin(function(_){return{x:_.x,y:0}}).on("dragstart",U_t).on("drag",H_t).on("dragend",j_t)),s.each(function(_){_.traceSelection=ci.select(this),_.pathSelection=ci.select(this).selectAll("g.paths").selectAll("path.path"),_.dimensionSelection=ci.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}GTe.exports=function(e,t,r,n){E_t(r,e,n,t)};function Td(e){return e.key}function V_(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function Q9(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor"),x=ci.mouse(i)[0];Y_.loneHover({trace:a,x:v-s.left+l.left,y:m-s.top+l.top,text:k,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:x1&&u.displayInd===l.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var v=s.model.count,m=s.model.categoryLabel,b=v/s.parcatsViewModel.model.count,g={countLabel:v,categoryLabel:m,probabilityLabel:b.toFixed(3)},_=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&_.push(["Count:",g.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&_.push(["P("+g.categoryLabel+"):",g.probabilityLabel].join(" "));var T=_.join("
");return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:T,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:g,eventData:[{data:f._input,fullData:f,count:v,category:m,probability:b}]}}function z_t(e,t,r){var n=[];return ci.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(HTe(e,t,i))}),n}function N_t(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=ci.select(r).datum(),s=o.categoryViewModel,l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],f=l.trace,c=a.y+a.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var v=s.model.categoryLabel,m=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(S){S.color===o.color&&(b+=S.count)});var g=s.model.count,_=0;l.pathSelection.each(function(S){S.model.color===o.color&&(_+=S.model.count)});var T=b/m,w=b/_,k=b/g,x={countLabel:b,categoryLabel:v,probabilityLabel:T.toFixed(3)},M=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&M.push(["Count:",x.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(M.push("P(color \u2229 "+v+"): "+x.probabilityLabel),M.push("P("+v+" | color): "+w.toFixed(3)),M.push("P(color | "+v+"): "+k.toFixed(3)));var A=M.join("
"),p=K9.mostReadable(o.color,["black","white"]);return{trace:f,x:n*(h-t.left),y:i*(c-t.top),text:A,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:p,fontSize:10,idealAlign:d,hovertemplate:f.hovertemplate,hovertemplateLabels:x,eventData:[{data:f._input,fullData:f,category:v,count:m,probability:T,categorycount:g,colorcount:_,bandcolorcount:b}]}}function O_t(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=ci.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(F_t(o),aF(o,"plotly_hover",ci.event)):(q_t(o),iF(o,"plotly_hover",ci.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=HTe(r,i,o):a==="color"?s=N_t(r,i,o):a==="dimension"&&(s=z_t(r,i,o)),s&&Y_.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function B_t(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(tF(t.pathSelection),UTe(t.dimensionSelection.selectAll("g.category")),nF(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),Y_.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(Q9),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?aF(n,"plotly_unhover",ci.event):iF(n,"plotly_unhover",ci.event)}}function U_t(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,ci.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=ci.mouse(this)[0],n=ci.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,rp.raiseToTop(this.parentNode),ci.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.yf.y+f.height/2&&(a.model.displayInd=f.model.displayInd,f.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=ci.event.x;var c=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];c!==void 0&&i.model.dragXh.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}sF(e.parcatsViewModel),oF(e.parcatsViewModel),YTe(e.parcatsViewModel),VTe(e.parcatsViewModel)}}function j_t(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){ci.select(this).selectAll("text").attr("font-weight","normal");var t={},r=jTe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var v=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+v+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),l=s.map(function(h){return h.categoryValue}),u=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[l],t["dimensions["+e.model.containerInd+"].ticktext"]=[u],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?aF(e.potentialClickBand,"plotly_click",ci.event.sourceEvent):iF(e.potentialClickBand,"plotly_click",ci.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var f=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];f.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,sF(e.parcatsViewModel),oF(e.parcatsViewModel);var c=ci.transition().duration(300).ease("cubic-in-out");c.each(function(){YTe(e.parcatsViewModel,!0),VTe(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&S_t.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function jTe(e){for(var t,r=e.graphDiv._fullData,n=0;n=0;l--)u+="C"+o[l]+","+(t[l+1]+n)+" "+a[l]+","+(t[l]+n)+" "+(e[l]+r[l])+","+(t[l]+n),u+="l-"+r[l]+",0 ";return u+="Z",u}function oF(e){var t=e.dimensions,r=e.model,n=t.map(function(C){return C.categories.map(function(L){return L.y})}),i=e.model.dimensions.map(function(C){return C.categories.map(function(L){return L.displayInd})}),a=e.model.dimensions.map(function(C){return C.displayInd}),o=e.dimensions.map(function(C){return C.model.dimensionInd}),s=t.map(function(C){return C.x}),l=t.map(function(C){return C.width}),u=[];for(var f in r.paths)r.paths.hasOwnProperty(f)&&u.push(r.paths[f]);function c(C){var L=C.categoryInds.map(function(I,P){return i[P][I]}),R=o.map(function(I){return L[I]});return R}u.sort(function(C,L){var R=c(C),I=c(L);return e.sortpaths==="backward"&&(R.reverse(),I.reverse()),R.push(C.valueInds[0]),I.push(L.valueInds[0]),e.bundlecolors&&(R.unshift(C.rawColor),I.unshift(L.rawColor)),RI?1:0});for(var h=new Array(u.length),d=t[0].model.count,v=t[0].categories.map(function(C){return C.height}).reduce(function(C,L){return C+L}),m=0;m0?g=v*(b.count/d):g=0;for(var _=new Array(n.length),T=0;T1?o=(e.width-2*r-n)/(i-1):o=0,s=r,l=s+o*a;var u=[],f=e.model.maxCats,c=t.categories.length,h=8,d=t.count,v=e.height-h*(f-1),m,b,g,_,T,w=(f-c)*h/2,k=t.categories.map(function(x){return{displayInd:x.displayInd,categoryInd:x.categoryInd}});for(k.sort(function(x,M){return x.displayInd-M.displayInd}),T=0;T0?m=b.count/d*v:m=0,g={key:b.valueInds[0],model:b,width:n,height:m,y:b.dragY!==null?b.dragY:w,bands:[],parcatsViewModel:e},w=w+m+h,u.push(g);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:l,y:0,width:n,model:t,categories:u,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var lF=J((OUt,XTe)=>{"use strict";var G_t=WTe();XTe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;G_t(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var JTe=J(o4=>{"use strict";var W_t=Nu().getModuleCalcData,X_t=lF(),ZTe="parcats";o4.name=ZTe;o4.plot=function(e,t,r,n){var i=W_t(e.calcdata,ZTe);if(i.length){var a=i[0];X_t(e,a,r,n)}};o4.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var KTe=J((UUt,$Te)=>{"use strict";$Te.exports={attributes:$9(),supplyDefaults:ITe(),calc:NTe(),plot:lF(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:JTe(),categories:["noOpacity"],meta:{description:["Parallel categories diagram for multidimensional categorical data."].join(" ")}}});var eAe=J((HUt,QTe)=>{"use strict";QTe.exports=KTe()});var fF=J((jUt,iAe)=>{"use strict";var Z_t=xa(),J_t=Qi(),tAe=Ho(),uF=b1(),$_t=Wa().attributes,rAe=Jn().hovertemplateAttrs,K_t=Da(),Q_t=ki().templatedArray,e3t=Ga().descriptionOnlyNumbers,nAe=cn().extendFlat,t3t=La().overrideAll,r3t=iAe.exports=t3t({hoverinfo:nAe({},J_t.hoverinfo,{flags:[],arrayOk:!1,description:["Determines which trace information appear on hover.","If `none` or `skip` are set, no information is displayed upon hovering.","But, if `none` is set, click and hover events are still fired.","Note that this attribute is superseded by `node.hoverinfo` and `node.hoverinfo`","for nodes and links respectively."].join(" ")}),hoverlabel:uF.hoverlabel,domain:$_t({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h",description:"Sets the orientation of the Sankey diagram."},valueformat:{valType:"string",dflt:".3s",description:e3t("value")},valuesuffix:{valType:"string",dflt:"",description:["Adds a unit to follow the value in the hover tooltip. Add a space if a separation","is necessary from the value."].join(" ")},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap",description:["If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to","preserve space between nodes specified via `nodepad`.","If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow.","If value is `freeform`, the nodes can freely move on the plane.","If value is `fixed`, the nodes are stationary."].join(" ")},textfont:Z_t({autoShadowDflt:!0,description:"Sets the font for node labels"}),customdata:void 0,node:{label:{valType:"data_array",dflt:[],description:"The shown name of the node."},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"},description:["Groups of nodes.","Each group is defined by an array with the indices of the nodes it contains.","Multiple groups can be specified."].join(" ")},x:{valType:"data_array",dflt:[],description:"The normalized horizontal position of the node."},y:{valType:"data_array",dflt:[],description:"The normalized vertical position of the node."},color:{valType:"color",arrayOk:!0,description:["Sets the `node` color. It can be a single value, or an array for specifying color for each `node`.","If `node.color` is omitted, then the default `Plotly` color palette will be cycled through","to have a variety of colors. These defaults are not fully opaque, to allow some visibility of","what is beneath the node."].join(" ")},customdata:{valType:"data_array",editType:"calc",description:["Assigns extra data to each node."].join(" ")},line:{color:{valType:"color",dflt:tAe.defaultLine,arrayOk:!0,description:["Sets the color of the `line` around each `node`."].join(" ")},width:{valType:"number",min:0,dflt:.5,arrayOk:!0,description:["Sets the width (in px) of the `line` around each `node`."].join(" ")}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20,description:"Sets the padding (in px) between the `nodes`."},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20,description:"Sets the thickness (in px) of the `nodes`."},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all",description:["Determines which trace information appear when hovering nodes.","If `none` or `skip` are set, no information is displayed upon hovering.","But, if `none` is set, click and hover events are still fired."].join(" ")},hoverlabel:uF.hoverlabel,hovertemplate:rAe({},{description:"Variables `sourceLinks` and `targetLinks` are arrays of link objects.",keys:["value","label"]}),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify",description:"Sets the alignment method used to position the nodes along the horizontal axis."},description:"The nodes of the Sankey plot."},link:{arrowlen:{valType:"number",min:0,dflt:0,description:["Sets the length (in px) of the links arrow, if 0 no arrow will be drawn."].join(" ")},label:{valType:"data_array",dflt:[],description:"The shown name of the link."},color:{valType:"color",arrayOk:!0,description:["Sets the `link` color. It can be a single value, or an array for specifying color for each `link`.","If `link.color` is omitted, then by default, a translucent grey link will be used."].join(" ")},hovercolor:{valType:"color",arrayOk:!0,description:["Sets the `link` hover color. It can be a single value, or an array for specifying hover colors for","each `link`. If `link.hovercolor` is omitted, then by default, links will become slightly more","opaque when hovered over."].join(" ")},customdata:{valType:"data_array",editType:"calc",description:["Assigns extra data to each link."].join(" ")},line:{color:{valType:"color",dflt:tAe.defaultLine,arrayOk:!0,description:["Sets the color of the `line` around each `link`."].join(" ")},width:{valType:"number",min:0,dflt:0,arrayOk:!0,description:["Sets the width (in px) of the `line` around each `link`."].join(" ")}},source:{valType:"data_array",dflt:[],description:"An integer number `[0..nodes.length - 1]` that represents the source node."},target:{valType:"data_array",dflt:[],description:"An integer number `[0..nodes.length - 1]` that represents the target node."},value:{valType:"data_array",dflt:[],description:"A numeric value representing the flow volume value."},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all",description:["Determines which trace information appear when hovering links.","If `none` or `skip` are set, no information is displayed upon hovering.","But, if `none` is set, click and hover events are still fired."].join(" ")},hoverlabel:uF.hoverlabel,hovertemplate:rAe({},{description:"Variables `source` and `target` are node objects.",keys:["value","label"]}),colorscales:Q_t("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",description:"The label of the links to color based on their concentration within a flow.",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1,description:"Sets the upper bound of the color domain."},cmin:{valType:"number",editType:"calc",dflt:0,description:"Sets the lower bound of the color domain."},colorscale:nAe(K_t().colorscale,{dflt:[[0,"white"],[1,"black"]]})}),description:"The links of the Sankey plot."}},"calc","nested");r3t.transforms=void 0});var uAe=J((VUt,lAe)=>{"use strict";var Ix=gt(),s4=fF(),n3t=qr(),aAe=ls(),i3t=Wa().defaults,oAe=g2(),sAe=ki(),a3t=Bu();lAe.exports=function(t,r,n,i){function a(w,k){return Ix.coerce(t,r,s4,w,k)}var o=Ix.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=sAe.newContainer(r,"node");function u(w,k){return Ix.coerce(s,l,s4.node,w,k)}u("label"),u("groups"),u("x"),u("y"),u("pad"),u("thickness"),u("line.color"),u("line.width"),u("hoverinfo",t.hoverinfo),oAe(s,l,u,o),u("hovertemplate"),u("align");var f=i.colorway,c=function(w){return f[w%f.length]};u("color",l.label.map(function(w,k){return n3t.addOpacity(c(k),.8)})),u("customdata");var h=t.link||{},d=sAe.newContainer(r,"link");function v(w,k){return Ix.coerce(h,d,s4.link,w,k)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),oAe(h,d,v,o),v("hovertemplate");var m=aAe(i.paper_bgcolor).getLuminance()<.333,b=m?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",g=v("color",b);function _(w){var k=aAe(w);if(!k.isValid())return w;var x=k.getAlpha();return x<=.8?k.setAlpha(x+.2):k=m?k.brighten():k.darken(),k.toRgbString()}v("hovercolor",Array.isArray(g)?g.map(_):_(g)),v("customdata"),a3t(h,d,{name:"colorscales",handleItemDefaults:o3t}),i3t(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var T;l.x.length&&l.y.length&&(T="freeform"),a("arrangement",T),Ix.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function o3t(e,t){function r(n,i){return Ix.coerce(e,t,s4.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var cF=J((YUt,fAe)=>{"use strict";fAe.exports=s3t;function s3t(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),l=0;l0;){b=_[_.length-1];var T=e[b];if(a[b]=0&&s[b].push(o[k])}a[b]=w}else{if(n[b]===r[b]){for(var x=[],M=[],A=0,w=g.length-1;w>=0;--w){var p=g[w];if(i[p]=!1,x.push(p),M.push(s[p]),A+=s[p].length,o[p]=f.length,p===b){g.length=w;break}}f.push(x);for(var S=new Array(A),w=0;w{"use strict";var l3t=cF(),qx=gt(),u3t=Px().wrap,W_=qx.isArrayOrTypedArray,cAe=qx.isIndex,hAe=Qa();function f3t(e){var t=e.node,r=e.link,n=[],i=W_(r.color),a=W_(r.hovercolor),o=W_(r.customdata),s={},l={},u=r.colorscales.length,f;for(f=0;fv&&(v=r.source[f]),r.target[f]>v&&(v=r.target[f]);var m=v+1;e.node._count=m;var b,g=e.node.groups,_={};for(f=0;f0&&cAe(A,m)&&cAe(p,m)&&!(_.hasOwnProperty(A)&&_.hasOwnProperty(p)&&_[A]===_[p])){_.hasOwnProperty(p)&&(p=_[p]),_.hasOwnProperty(A)&&(A=_[A]),A=+A,p=+p,s[A]=s[p]=!0;var S="";r.label&&r.label[f]&&(S=r.label[f]);var y=null;S&&l.hasOwnProperty(S)&&(y=l[S]),n.push({pointNumber:f,label:S,color:i?r.color[f]:r.color,hovercolor:a?r.hovercolor[f]:r.hovercolor,customdata:o?r.customdata[f]:r.customdata,concentrationscale:y,source:A,target:p,value:+M}),x.source.push(A),x.target.push(p)}}var E=m+g.length,C=W_(t.color),L=W_(t.customdata),R=[];for(f=0;fm-1,childrenNodes:[],pointNumber:f,label:I,color:C?t.color[f]:t.color,customdata:L?t.customdata[f]:t.customdata})}var P=!1;return c3t(E,x.source,x.target)&&(P=!0),{circular:P,links:n,nodes:R,groups:g,groupLookup:_}}function c3t(e,t,r){for(var n=qx.init2dArray(e,0),i=0;i1})}vAe.exports=function(t,r){var n=f3t(r);return u3t({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var gAe=J((l4,pAe)=>{(function(e,t){typeof l4=="object"&&typeof pAe<"u"?t(l4):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(l4,function(e){"use strict";function t(M){var A=+this._x.call(null,M),p=+this._y.call(null,M);return r(this.cover(A,p),A,p,M)}function r(M,A,p,S){if(isNaN(A)||isNaN(p))return M;var y,E=M._root,C={data:S},L=M._x0,R=M._y0,I=M._x1,P=M._y1,D,q,N,U,G,ee,Q,j;if(!E)return M._root=C,M;for(;E.length;)if((G=A>=(D=(L+I)/2))?L=D:I=D,(ee=p>=(q=(R+P)/2))?R=q:P=q,y=E,!(E=E[Q=ee<<1|G]))return y[Q]=C,M;if(N=+M._x.call(null,E.data),U=+M._y.call(null,E.data),A===N&&p===U)return C.next=E,y?y[Q]=C:M._root=C,M;do y=y?y[Q]=new Array(4):M._root=new Array(4),(G=A>=(D=(L+I)/2))?L=D:I=D,(ee=p>=(q=(R+P)/2))?R=q:P=q;while((Q=ee<<1|G)===(j=(U>=q)<<1|N>=D));return y[j]=E,y[Q]=C,M}function n(M){var A,p,S=M.length,y,E,C=new Array(S),L=new Array(S),R=1/0,I=1/0,P=-1/0,D=-1/0;for(p=0;pP&&(P=y),ED&&(D=E));if(R>P||I>D)return this;for(this.cover(R,I).cover(P,D),p=0;pM||M>=y||S>A||A>=E;)switch(I=(AP||(L=U.y0)>D||(R=U.x1)=Q)<<1|M>=ee)&&(U=q[q.length-1],q[q.length-1]=q[q.length-1-G],q[q.length-1-G]=U)}else{var j=M-+this._x.call(null,N.data),O=A-+this._y.call(null,N.data),Z=j*j+O*O;if(Z=(q=(C+R)/2))?C=q:R=q,(G=D>=(N=(L+I)/2))?L=N:I=N,A=p,!(p=p[ee=G<<1|U]))return this;if(!p.length)break;(A[ee+1&3]||A[ee+2&3]||A[ee+3&3])&&(S=A,Q=ee)}for(;p.data!==M;)if(y=p,!(p=p.next))return this;return(E=p.next)&&delete p.next,y?(E?y.next=E:delete y.next,this):A?(E?A[ee]=E:delete A[ee],(p=A[0]||A[1]||A[2]||A[3])&&p===(A[3]||A[2]||A[1]||A[0])&&!p.length&&(S?S[Q]=p:this._root=p),this):(this._root=E,this)}function f(M){for(var A=0,p=M.length;A{(function(e,t){typeof u4=="object"&&typeof mAe<"u"?t(u4):typeof define=="function"&&define.amd?define(["exports"],t):t(e.d3=e.d3||{})})(u4,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(m){return t+m in this},get:function(m){return this[t+m]},set:function(m,b){return this[t+m]=b,this},remove:function(m){var b=t+m;return b in this&&delete this[b]},clear:function(){for(var m in this)m[0]===t&&delete this[m]},keys:function(){var m=[];for(var b in this)b[0]===t&&m.push(b.slice(1));return m},values:function(){var m=[];for(var b in this)b[0]===t&&m.push(this[b]);return m},entries:function(){var m=[];for(var b in this)b[0]===t&&m.push({key:b.slice(1),value:this[b]});return m},size:function(){var m=0;for(var b in this)b[0]===t&&++m;return m},empty:function(){for(var m in this)if(m[0]===t)return!1;return!0},each:function(m){for(var b in this)b[0]===t&&m(this[b],b.slice(1),this)}};function n(m,b){var g=new r;if(m instanceof r)m.each(function(x,M){g.set(M,x)});else if(Array.isArray(m)){var _=-1,T=m.length,w;if(b==null)for(;++_=m.length)return g!=null&&x.sort(g),_!=null?_(x):x;for(var S=-1,y=x.length,E=m[M++],C,L,R=n(),I,P=A();++Sm.length)return x;var A,p=b[M-1];return _!=null&&M>=m.length?A=x.entries():(A=[],x.each(function(S,y){A.push({key:y,values:k(S,M)})})),p!=null?A.sort(function(S,y){return p(S.key,y.key)}):A}return T={object:function(x){return w(x,0,a,o)},map:function(x){return w(x,0,s,l)},entries:function(x){return k(w(x,0,s,l),0)},key:function(x){return m.push(x),T},sortKeys:function(x){return b[m.length-1]=x,T},sortValues:function(x){return g=x,T},rollup:function(x){return _=x,T}}}function a(){return{}}function o(m,b,g){m[b]=g}function s(){return n()}function l(m,b,g){m.set(b,g)}function u(){}var f=n.prototype;u.prototype=c.prototype={constructor:u,has:f.has,add:function(m){return m+="",this[t+m]=m,this},remove:f.remove,clear:f.clear,values:f.keys,size:f.size,empty:f.empty,each:f.each};function c(m,b){var g=new u;if(m instanceof u)m.each(function(w){g.add(w)});else if(m){var _=-1,T=m.length;if(b==null)for(;++_{(function(e,t){typeof c4=="object"&&typeof yAe<"u"?t(c4):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(c4,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,l=arguments.length,u={},f;s=0&&(f=u.slice(c+1),u=u.slice(0,c)),u&&!l.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:f}})}n.prototype=r.prototype={constructor:n,on:function(s,l){var u=this._,f=i(s+"",u),c,h=-1,d=f.length;if(arguments.length<2){for(;++h0)for(var u=new Array(c),f=0,c,h;f{(function(e,t){typeof h4=="object"&&typeof bAe<"u"?t(h4):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(h4,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,l=0,u=0,f=typeof performance=="object"&&performance.now?performance:Date,c=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(M){setTimeout(M,17)};function h(){return l||(c(d),l=f.now()+u)}function d(){l=0}function v(){this._call=this._time=this._next=null}v.prototype=m.prototype={constructor:v,restart:function(M,A,p){if(typeof M!="function")throw new TypeError("callback is not a function");p=(p==null?h():+p)+(A==null?0:+A),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=M,this._time=p,w()},stop:function(){this._call&&(this._call=null,this._time=1/0,w())}};function m(M,A,p){var S=new v;return S.restart(M,A,p),S}function b(){h(),++t;for(var M=a,A;M;)(A=l-M._time)>=0&&M._call.call(null,A),M=M._next;--t}function g(){l=(s=f.now())+u,t=r=0;try{b()}finally{t=0,T(),l=0}}function _(){var M=f.now(),A=M-s;A>i&&(u-=A,s=M)}function T(){for(var M,A=a,p,S=1/0;A;)A._call?(S>A._time&&(S=A._time),M=A,A=A._next):(p=A._next,A._next=null,A=M?M._next=p:a=p);o=M,w(S)}function w(M){if(!t){r&&(r=clearTimeout(r));var A=M-l;A>24?(M<1/0&&(r=setTimeout(g,M-f.now()-u)),n&&(n=clearInterval(n))):(n||(s=f.now(),n=setInterval(_,i)),t=1,c(g))}}function k(M,A,p){var S=new v;return A=A==null?0:+A,S.restart(function(y){S.stop(),M(y+A)},A,p),S}function x(M,A,p){var S=new v,y=A;return A==null?(S.restart(M,A,p),S):(A=+A,p=p==null?h():+p,S.restart(function E(C){C+=y,S.restart(E,y+=A,p),M(C)},A,p),S)}e.interval=x,e.now=h,e.timeout=k,e.timer=m,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var TAe=J((v4,_Ae)=>{(function(e,t){typeof v4=="object"&&typeof _Ae<"u"?t(v4,gAe(),f4(),xAe(),wAe()):typeof define=="function"&&define.amd?define(["exports","d3-quadtree","d3-collection","d3-dispatch","d3-timer"],t):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(v4,function(e,t,r,n,i){"use strict";function a(M,A){var p;M==null&&(M=0),A==null&&(A=0);function S(){var y,E=p.length,C,L=0,R=0;for(y=0;yD.index){var ne=q-oe.x-oe.vx,W=N-oe.y-oe.vy,fe=ne*ne+W*W;feq+V||KN+V||$R.r&&(R.r=R[I].r)}function L(){if(A){var R,I=A.length,P;for(p=new Array(I),R=0;R1?(G==null?L.remove(U):L.set(U,N(G)),A):L.get(U)},find:function(U,G,ee){var Q=0,j=M.length,O,Z,K,$,oe;for(ee==null?ee=1/0:ee*=ee,Q=0;Q1?(I.on(U,G),A):I.on(U)}}}function T(){var M,A,p,S=o(-30),y,E=1,C=1/0,L=.81;function R(q){var N,U=M.length,G=t.quadtree(M,v,m).visitAfter(P);for(p=q,N=0;N=C)return;(q.data!==A||q.next)&&(ee===0&&(ee=s(),O+=ee*ee),Q===0&&(Q=s(),O+=Q*Q),O{(function(e,t){typeof d4=="object"&&typeof AAe<"u"?t(d4):typeof define=="function"&&define.amd?define(["exports"],t):(e=e||self,t(e.d3=e.d3||{}))})(d4,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,l){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,l){this._+="L"+(this._x1=+s)+","+(this._y1=+l)},quadraticCurveTo:function(s,l,u,f){this._+="Q"+ +s+","+ +l+","+(this._x1=+u)+","+(this._y1=+f)},bezierCurveTo:function(s,l,u,f,c,h){this._+="C"+ +s+","+ +l+","+ +u+","+ +f+","+(this._x1=+c)+","+(this._y1=+h)},arcTo:function(s,l,u,f,c){s=+s,l=+l,u=+u,f=+f,c=+c;var h=this._x1,d=this._y1,v=u-s,m=f-l,b=h-s,g=d-l,_=b*b+g*g;if(c<0)throw new Error("negative radius: "+c);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=l);else if(_>n)if(!(Math.abs(g*v-m*b)>n)||!c)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var T=u-h,w=f-d,k=v*v+m*m,x=T*T+w*w,M=Math.sqrt(k),A=Math.sqrt(_),p=c*Math.tan((t-Math.acos((k+_-x)/(2*M*A)))/2),S=p/A,y=p/M;Math.abs(S-1)>n&&(this._+="L"+(s+S*b)+","+(l+S*g)),this._+="A"+c+","+c+",0,0,"+ +(g*T>b*w)+","+(this._x1=s+y*v)+","+(this._y1=l+y*m)}},arc:function(s,l,u,f,c,h){s=+s,l=+l,u=+u,h=!!h;var d=u*Math.cos(f),v=u*Math.sin(f),m=s+d,b=l+v,g=1^h,_=h?f-c:c-f;if(u<0)throw new Error("negative radius: "+u);this._x1===null?this._+="M"+m+","+b:(Math.abs(this._x1-m)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+m+","+b),u&&(_<0&&(_=_%r+r),_>i?this._+="A"+u+","+u+",0,1,"+g+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+g+","+(this._x1=m)+","+(this._y1=b):_>n&&(this._+="A"+u+","+u+",0,"+ +(_>=t)+","+g+","+(this._x1=s+u*Math.cos(c))+","+(this._y1=l+u*Math.sin(c))))},rect:function(s,l,u,f){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)+"h"+ +u+"v"+ +f+"h"+-u+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var hF=J((p4,kAe)=>{(function(e,t){typeof p4=="object"&&typeof kAe<"u"?t(p4,MAe()):typeof define=="function"&&define.amd?define(["exports","d3-path"],t):(e=e||self,t(e.d3=e.d3||{},e.d3))})(p4,function(e,t){"use strict";function r(De){return function(){return De}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,u=Math.sqrt,f=1e-12,c=Math.PI,h=c/2,d=2*c;function v(De){return De>1?0:De<-1?c:Math.acos(De)}function m(De){return De>=1?h:De<=-1?-h:Math.asin(De)}function b(De){return De.innerRadius}function g(De){return De.outerRadius}function _(De){return De.startAngle}function T(De){return De.endAngle}function w(De){return De&&De.padAngle}function k(De,ct,ht,Mt,Gt,Lt,ir,zt){var ar=ht-De,kr=Mt-ct,Er=ir-Gt,Xr=zt-Lt,vn=Xr*ar-Er*kr;if(!(vn*vnKo*Ko+tl*tl&&(_o=za,ka=zn),{cx:_o,cy:ka,x01:-Er,y01:-Xr,x11:_o*(Gt/qa-1),y11:ka*(Gt/qa-1)}}function M(){var De=b,ct=g,ht=r(0),Mt=null,Gt=_,Lt=T,ir=w,zt=null;function ar(){var kr,Er,Xr=+De.apply(this,arguments),vn=+ct.apply(this,arguments),ei=Gt.apply(this,arguments)-h,Rn=Lt.apply(this,arguments)-h,hi=n(Rn-ei),Xn=Rn>ei;if(zt||(zt=kr=t.path()),vnf))zt.moveTo(0,0);else if(hi>d-f)zt.moveTo(vn*a(ei),vn*l(ei)),zt.arc(0,0,vn,ei,Rn,!Xn),Xr>f&&(zt.moveTo(Xr*a(Rn),Xr*l(Rn)),zt.arc(0,0,Xr,Rn,ei,Xn));else{var $i=ei,Ki=Rn,sa=ei,Ma=Rn,qa=hi,Fa=hi,$o=ir.apply(this,arguments)/2,_o=$o>f&&(Mt?+Mt.apply(this,arguments):u(Xr*Xr+vn*vn)),ka=s(n(vn-Xr)/2,+ht.apply(this,arguments)),za=ka,zn=ka,Zr,vi;if(_o>f){var Ko=m(_o/Xr*l($o)),tl=m(_o/vn*l($o));(qa-=Ko*2)>f?(Ko*=Xn?1:-1,sa+=Ko,Ma-=Ko):(qa=0,sa=Ma=(ei+Rn)/2),(Fa-=tl*2)>f?(tl*=Xn?1:-1,$i+=tl,Ki-=tl):(Fa=0,$i=Ki=(ei+Rn)/2)}var Zl=vn*a($i),qs=vn*l($i),Qo=Xr*a(Ma),rl=Xr*l(Ma);if(ka>f){var ef=vn*a(Ki),Bi=vn*l(Ki),tf=Xr*a(sa),so=Xr*l(sa),es;if(hif?zn>f?(Zr=x(tf,so,Zl,qs,vn,zn,Xn),vi=x(ef,Bi,Qo,rl,vn,zn,Xn),zt.moveTo(Zr.cx+Zr.x01,Zr.cy+Zr.y01),znf)||!(qa>f)?zt.lineTo(Qo,rl):za>f?(Zr=x(Qo,rl,ef,Bi,Xr,-za,Xn),vi=x(Zl,qs,tf,so,Xr,-za,Xn),zt.lineTo(Zr.cx+Zr.x01,Zr.cy+Zr.y01),za=vn;--ei)zt.point(Ki[ei],sa[ei]);zt.lineEnd(),zt.areaEnd()}Xn&&(Ki[Xr]=+De(hi,Xr,Er),sa[Xr]=+ht(hi,Xr,Er),zt.point(ct?+ct(hi,Xr,Er):Ki[Xr],Mt?+Mt(hi,Xr,Er):sa[Xr]))}if($i)return zt=null,$i+""||null}function kr(){return E().defined(Gt).curve(ir).context(Lt)}return ar.x=function(Er){return arguments.length?(De=typeof Er=="function"?Er:r(+Er),ct=null,ar):De},ar.x0=function(Er){return arguments.length?(De=typeof Er=="function"?Er:r(+Er),ar):De},ar.x1=function(Er){return arguments.length?(ct=Er==null?null:typeof Er=="function"?Er:r(+Er),ar):ct},ar.y=function(Er){return arguments.length?(ht=typeof Er=="function"?Er:r(+Er),Mt=null,ar):ht},ar.y0=function(Er){return arguments.length?(ht=typeof Er=="function"?Er:r(+Er),ar):ht},ar.y1=function(Er){return arguments.length?(Mt=Er==null?null:typeof Er=="function"?Er:r(+Er),ar):Mt},ar.lineX0=ar.lineY0=function(){return kr().x(De).y(ht)},ar.lineY1=function(){return kr().x(De).y(Mt)},ar.lineX1=function(){return kr().x(ct).y(ht)},ar.defined=function(Er){return arguments.length?(Gt=typeof Er=="function"?Er:r(!!Er),ar):Gt},ar.curve=function(Er){return arguments.length?(ir=Er,Lt!=null&&(zt=ir(Lt)),ar):ir},ar.context=function(Er){return arguments.length?(Er==null?Lt=zt=null:zt=ir(Lt=Er),ar):Lt},ar}function L(De,ct){return ctDe?1:ct>=De?0:NaN}function R(De){return De}function I(){var De=R,ct=L,ht=null,Mt=r(0),Gt=r(d),Lt=r(0);function ir(zt){var ar,kr=zt.length,Er,Xr,vn=0,ei=new Array(kr),Rn=new Array(kr),hi=+Mt.apply(this,arguments),Xn=Math.min(d,Math.max(-d,Gt.apply(this,arguments)-hi)),$i,Ki=Math.min(Math.abs(Xn)/kr,Lt.apply(this,arguments)),sa=Ki*(Xn<0?-1:1),Ma;for(ar=0;ar0&&(vn+=Ma);for(ct!=null?ei.sort(function(qa,Fa){return ct(Rn[qa],Rn[Fa])}):ht!=null&&ei.sort(function(qa,Fa){return ht(zt[qa],zt[Fa])}),ar=0,Xr=vn?(Xn-kr*sa)/vn:0;ar0?Ma*Xr:0)+sa,Rn[Er]={data:zt[Er],index:ar,value:Ma,startAngle:hi,endAngle:$i,padAngle:Ki};return Rn}return ir.value=function(zt){return arguments.length?(De=typeof zt=="function"?zt:r(+zt),ir):De},ir.sortValues=function(zt){return arguments.length?(ct=zt,ht=null,ir):ct},ir.sort=function(zt){return arguments.length?(ht=zt,ct=null,ir):ht},ir.startAngle=function(zt){return arguments.length?(Mt=typeof zt=="function"?zt:r(+zt),ir):Mt},ir.endAngle=function(zt){return arguments.length?(Gt=typeof zt=="function"?zt:r(+zt),ir):Gt},ir.padAngle=function(zt){return arguments.length?(Lt=typeof zt=="function"?zt:r(+zt),ir):Lt},ir}var P=q(p);function D(De){this._curve=De}D.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(De,ct){this._curve.point(ct*Math.sin(De),ct*-Math.cos(De))}};function q(De){function ct(ht){return new D(De(ht))}return ct._curve=De,ct}function N(De){var ct=De.curve;return De.angle=De.x,delete De.x,De.radius=De.y,delete De.y,De.curve=function(ht){return arguments.length?ct(q(ht)):ct()._curve},De}function U(){return N(E().curve(P))}function G(){var De=C().curve(P),ct=De.curve,ht=De.lineX0,Mt=De.lineX1,Gt=De.lineY0,Lt=De.lineY1;return De.angle=De.x,delete De.x,De.startAngle=De.x0,delete De.x0,De.endAngle=De.x1,delete De.x1,De.radius=De.y,delete De.y,De.innerRadius=De.y0,delete De.y0,De.outerRadius=De.y1,delete De.y1,De.lineStartAngle=function(){return N(ht())},delete De.lineX0,De.lineEndAngle=function(){return N(Mt())},delete De.lineX1,De.lineInnerRadius=function(){return N(Gt())},delete De.lineY0,De.lineOuterRadius=function(){return N(Lt())},delete De.lineY1,De.curve=function(ir){return arguments.length?ct(q(ir)):ct()._curve},De}function ee(De,ct){return[(ct=+ct)*Math.cos(De-=Math.PI/2),ct*Math.sin(De)]}var Q=Array.prototype.slice;function j(De){return De.source}function O(De){return De.target}function Z(De){var ct=j,ht=O,Mt=S,Gt=y,Lt=null;function ir(){var zt,ar=Q.call(arguments),kr=ct.apply(this,ar),Er=ht.apply(this,ar);if(Lt||(Lt=zt=t.path()),De(Lt,+Mt.apply(this,(ar[0]=kr,ar)),+Gt.apply(this,ar),+Mt.apply(this,(ar[0]=Er,ar)),+Gt.apply(this,ar)),zt)return Lt=null,zt+""||null}return ir.source=function(zt){return arguments.length?(ct=zt,ir):ct},ir.target=function(zt){return arguments.length?(ht=zt,ir):ht},ir.x=function(zt){return arguments.length?(Mt=typeof zt=="function"?zt:r(+zt),ir):Mt},ir.y=function(zt){return arguments.length?(Gt=typeof zt=="function"?zt:r(+zt),ir):Gt},ir.context=function(zt){return arguments.length?(Lt=zt??null,ir):Lt},ir}function K(De,ct,ht,Mt,Gt){De.moveTo(ct,ht),De.bezierCurveTo(ct=(ct+Mt)/2,ht,ct,Gt,Mt,Gt)}function $(De,ct,ht,Mt,Gt){De.moveTo(ct,ht),De.bezierCurveTo(ct,ht=(ht+Gt)/2,Mt,ht,Mt,Gt)}function oe(De,ct,ht,Mt,Gt){var Lt=ee(ct,ht),ir=ee(ct,ht=(ht+Gt)/2),zt=ee(Mt,ht),ar=ee(Mt,Gt);De.moveTo(Lt[0],Lt[1]),De.bezierCurveTo(ir[0],ir[1],zt[0],zt[1],ar[0],ar[1])}function te(){return Z(K)}function V(){return Z($)}function ne(){var De=Z(oe);return De.angle=De.x,delete De.x,De.radius=De.y,delete De.y,De}var W={draw:function(De,ct){var ht=Math.sqrt(ct/c);De.moveTo(ht,0),De.arc(0,0,ht,0,d)}},fe={draw:function(De,ct){var ht=Math.sqrt(ct/5)/2;De.moveTo(-3*ht,-ht),De.lineTo(-ht,-ht),De.lineTo(-ht,-3*ht),De.lineTo(ht,-3*ht),De.lineTo(ht,-ht),De.lineTo(3*ht,-ht),De.lineTo(3*ht,ht),De.lineTo(ht,ht),De.lineTo(ht,3*ht),De.lineTo(-ht,3*ht),De.lineTo(-ht,ht),De.lineTo(-3*ht,ht),De.closePath()}},ge=Math.sqrt(1/3),Ce=ge*2,Ne={draw:function(De,ct){var ht=Math.sqrt(ct/Ce),Mt=ht*ge;De.moveTo(0,-ht),De.lineTo(Mt,0),De.lineTo(0,ht),De.lineTo(-Mt,0),De.closePath()}},pe=.8908130915292852,me=Math.sin(c/10)/Math.sin(7*c/10),Ie=Math.sin(d/10)*me,Re=-Math.cos(d/10)*me,ze={draw:function(De,ct){var ht=Math.sqrt(ct*pe),Mt=Ie*ht,Gt=Re*ht;De.moveTo(0,-ht),De.lineTo(Mt,Gt);for(var Lt=1;Lt<5;++Lt){var ir=d*Lt/5,zt=Math.cos(ir),ar=Math.sin(ir);De.lineTo(ar*ht,-zt*ht),De.lineTo(zt*Mt-ar*Gt,ar*Mt+zt*Gt)}De.closePath()}},Be={draw:function(De,ct){var ht=Math.sqrt(ct),Mt=-ht/2;De.rect(Mt,Mt,ht,ht)}},tt=Math.sqrt(3),rt={draw:function(De,ct){var ht=-Math.sqrt(ct/(tt*3));De.moveTo(0,ht*2),De.lineTo(-tt*ht,-ht),De.lineTo(tt*ht,-ht),De.closePath()}},ce=-.5,Ee=Math.sqrt(3)/2,Ae=1/Math.sqrt(12),Pe=(Ae/2+1)*3,He={draw:function(De,ct){var ht=Math.sqrt(ct/Pe),Mt=ht/2,Gt=ht*Ae,Lt=Mt,ir=ht*Ae+ht,zt=-Lt,ar=ir;De.moveTo(Mt,Gt),De.lineTo(Lt,ir),De.lineTo(zt,ar),De.lineTo(ce*Mt-Ee*Gt,Ee*Mt+ce*Gt),De.lineTo(ce*Lt-Ee*ir,Ee*Lt+ce*ir),De.lineTo(ce*zt-Ee*ar,Ee*zt+ce*ar),De.lineTo(ce*Mt+Ee*Gt,ce*Gt-Ee*Mt),De.lineTo(ce*Lt+Ee*ir,ce*ir-Ee*Lt),De.lineTo(ce*zt+Ee*ar,ce*ar-Ee*zt),De.closePath()}},Fe=[W,fe,Ne,Be,ze,rt,He];function ke(){var De=r(W),ct=r(64),ht=null;function Mt(){var Gt;if(ht||(ht=Gt=t.path()),De.apply(this,arguments).draw(ht,+ct.apply(this,arguments)),Gt)return ht=null,Gt+""||null}return Mt.type=function(Gt){return arguments.length?(De=typeof Gt=="function"?Gt:r(Gt),Mt):De},Mt.size=function(Gt){return arguments.length?(ct=typeof Gt=="function"?Gt:r(+Gt),Mt):ct},Mt.context=function(Gt){return arguments.length?(ht=Gt??null,Mt):ht},Mt}function Ue(){}function Ge(De,ct,ht){De._context.bezierCurveTo((2*De._x0+De._x1)/3,(2*De._y0+De._y1)/3,(De._x0+2*De._x1)/3,(De._y0+2*De._y1)/3,(De._x0+4*De._x1+ct)/6,(De._y0+4*De._y1+ht)/6)}function lt(De){this._context=De}lt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Ge(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1,this._line?this._context.lineTo(De,ct):this._context.moveTo(De,ct);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Ge(this,De,ct);break}this._x0=this._x1,this._x1=De,this._y0=this._y1,this._y1=ct}};function it(De){return new lt(De)}function wt(De){this._context=De}wt.prototype={areaStart:Ue,areaEnd:Ue,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1,this._x2=De,this._y2=ct;break;case 1:this._point=2,this._x3=De,this._y3=ct;break;case 2:this._point=3,this._x4=De,this._y4=ct,this._context.moveTo((this._x0+4*this._x1+De)/6,(this._y0+4*this._y1+ct)/6);break;default:Ge(this,De,ct);break}this._x0=this._x1,this._x1=De,this._y0=this._y1,this._y1=ct}};function _t(De){return new wt(De)}function Tt(De){this._context=De}Tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var ht=(this._x0+4*this._x1+De)/6,Mt=(this._y0+4*this._y1+ct)/6;this._line?this._context.lineTo(ht,Mt):this._context.moveTo(ht,Mt);break;case 3:this._point=4;default:Ge(this,De,ct);break}this._x0=this._x1,this._x1=De,this._y0=this._y1,this._y1=ct}};function nt(De){return new Tt(De)}function bt(De,ct){this._basis=new lt(De),this._beta=ct}bt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var De=this._x,ct=this._y,ht=De.length-1;if(ht>0)for(var Mt=De[0],Gt=ct[0],Lt=De[ht]-Mt,ir=ct[ht]-Gt,zt=-1,ar;++zt<=ht;)ar=zt/ht,this._basis.point(this._beta*De[zt]+(1-this._beta)*(Mt+ar*Lt),this._beta*ct[zt]+(1-this._beta)*(Gt+ar*ir));this._x=this._y=null,this._basis.lineEnd()},point:function(De,ct){this._x.push(+De),this._y.push(+ct)}};var At=function De(ct){function ht(Mt){return ct===1?new lt(Mt):new bt(Mt,ct)}return ht.beta=function(Mt){return De(+Mt)},ht}(.85);function Ye(De,ct,ht){De._context.bezierCurveTo(De._x1+De._k*(De._x2-De._x0),De._y1+De._k*(De._y2-De._y0),De._x2+De._k*(De._x1-ct),De._y2+De._k*(De._y1-ht),De._x2,De._y2)}function je(De,ct){this._context=De,this._k=(1-ct)/6}je.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ye(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1,this._line?this._context.lineTo(De,ct):this._context.moveTo(De,ct);break;case 1:this._point=2,this._x1=De,this._y1=ct;break;case 2:this._point=3;default:Ye(this,De,ct);break}this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var $e=function De(ct){function ht(Mt){return new je(Mt,ct)}return ht.tension=function(Mt){return De(+Mt)},ht}(0);function ve(De,ct){this._context=De,this._k=(1-ct)/6}ve.prototype={areaStart:Ue,areaEnd:Ue,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1,this._x3=De,this._y3=ct;break;case 1:this._point=2,this._context.moveTo(this._x4=De,this._y4=ct);break;case 2:this._point=3,this._x5=De,this._y5=ct;break;default:Ye(this,De,ct);break}this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var Y=function De(ct){function ht(Mt){return new ve(Mt,ct)}return ht.tension=function(Mt){return De(+Mt)},ht}(0);function ie(De,ct){this._context=De,this._k=(1-ct)/6}ie.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ye(this,De,ct);break}this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var Te=function De(ct){function ht(Mt){return new ie(Mt,ct)}return ht.tension=function(Mt){return De(+Mt)},ht}(0);function Ve(De,ct,ht){var Mt=De._x1,Gt=De._y1,Lt=De._x2,ir=De._y2;if(De._l01_a>f){var zt=2*De._l01_2a+3*De._l01_a*De._l12_a+De._l12_2a,ar=3*De._l01_a*(De._l01_a+De._l12_a);Mt=(Mt*zt-De._x0*De._l12_2a+De._x2*De._l01_2a)/ar,Gt=(Gt*zt-De._y0*De._l12_2a+De._y2*De._l01_2a)/ar}if(De._l23_a>f){var kr=2*De._l23_2a+3*De._l23_a*De._l12_a+De._l12_2a,Er=3*De._l23_a*(De._l23_a+De._l12_a);Lt=(Lt*kr+De._x1*De._l23_2a-ct*De._l12_2a)/Er,ir=(ir*kr+De._y1*De._l23_2a-ht*De._l12_2a)/Er}De._context.bezierCurveTo(Mt,Gt,Lt,ir,De._x2,De._y2)}function at(De,ct){this._context=De,this._alpha=ct}at.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){if(De=+De,ct=+ct,this._point){var ht=this._x2-De,Mt=this._y2-ct;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(ht*ht+Mt*Mt,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(De,ct):this._context.moveTo(De,ct);break;case 1:this._point=2;break;case 2:this._point=3;default:Ve(this,De,ct);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var ft=function De(ct){function ht(Mt){return ct?new at(Mt,ct):new je(Mt,0)}return ht.alpha=function(Mt){return De(+Mt)},ht}(.5);function Ht(De,ct){this._context=De,this._alpha=ct}Ht.prototype={areaStart:Ue,areaEnd:Ue,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(De,ct){if(De=+De,ct=+ct,this._point){var ht=this._x2-De,Mt=this._y2-ct;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(ht*ht+Mt*Mt,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=De,this._y3=ct;break;case 1:this._point=2,this._context.moveTo(this._x4=De,this._y4=ct);break;case 2:this._point=3,this._x5=De,this._y5=ct;break;default:Ve(this,De,ct);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var Xt=function De(ct){function ht(Mt){return ct?new Ht(Mt,ct):new ve(Mt,0)}return ht.alpha=function(Mt){return De(+Mt)},ht}(.5);function St(De,ct){this._context=De,this._alpha=ct}St.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){if(De=+De,ct=+ct,this._point){var ht=this._x2-De,Mt=this._y2-ct;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(ht*ht+Mt*Mt,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ve(this,De,ct);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=De,this._y0=this._y1,this._y1=this._y2,this._y2=ct}};var Vt=function De(ct){function ht(Mt){return ct?new St(Mt,ct):new ie(Mt,0)}return ht.alpha=function(Mt){return De(+Mt)},ht}(.5);function er(De){this._context=De}er.prototype={areaStart:Ue,areaEnd:Ue,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(De,ct){De=+De,ct=+ct,this._point?this._context.lineTo(De,ct):(this._point=1,this._context.moveTo(De,ct))}};function _r(De){return new er(De)}function br(De){return De<0?-1:1}function or(De,ct,ht){var Mt=De._x1-De._x0,Gt=ct-De._x1,Lt=(De._y1-De._y0)/(Mt||Gt<0&&-0),ir=(ht-De._y1)/(Gt||Mt<0&&-0),zt=(Lt*Gt+ir*Mt)/(Mt+Gt);return(br(Lt)+br(ir))*Math.min(Math.abs(Lt),Math.abs(ir),.5*Math.abs(zt))||0}function tn(De,ct){var ht=De._x1-De._x0;return ht?(3*(De._y1-De._y0)/ht-ct)/2:ct}function Lr(De,ct,ht){var Mt=De._x0,Gt=De._y0,Lt=De._x1,ir=De._y1,zt=(Lt-Mt)/3;De._context.bezierCurveTo(Mt+zt,Gt+zt*ct,Lt-zt,ir-zt*ht,Lt,ir)}function Gr(De){this._context=De}Gr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Lr(this,this._t0,tn(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(De,ct){var ht=NaN;if(De=+De,ct=+ct,!(De===this._x1&&ct===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(De,ct):this._context.moveTo(De,ct);break;case 1:this._point=2;break;case 2:this._point=3,Lr(this,tn(this,ht=or(this,De,ct)),ht);break;default:Lr(this,this._t0,ht=or(this,De,ct));break}this._x0=this._x1,this._x1=De,this._y0=this._y1,this._y1=ct,this._t0=ht}}};function sn(De){this._context=new Hr(De)}(sn.prototype=Object.create(Gr.prototype)).point=function(De,ct){Gr.prototype.point.call(this,ct,De)};function Hr(De){this._context=De}Hr.prototype={moveTo:function(De,ct){this._context.moveTo(ct,De)},closePath:function(){this._context.closePath()},lineTo:function(De,ct){this._context.lineTo(ct,De)},bezierCurveTo:function(De,ct,ht,Mt,Gt,Lt){this._context.bezierCurveTo(ct,De,Mt,ht,Lt,Gt)}};function Br(De){return new Gr(De)}function qn(De){return new sn(De)}function kn(De){this._context=De}kn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var De=this._x,ct=this._y,ht=De.length;if(ht)if(this._line?this._context.lineTo(De[0],ct[0]):this._context.moveTo(De[0],ct[0]),ht===2)this._context.lineTo(De[1],ct[1]);else for(var Mt=Yn(De),Gt=Yn(ct),Lt=0,ir=1;ir=0;--ct)Gt[ct]=(ir[ct]-Gt[ct+1])/Lt[ct];for(Lt[ht-1]=(De[ht]+Gt[ht-1])/2,ct=0;ct=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(De,ct){switch(De=+De,ct=+ct,this._point){case 0:this._point=1,this._line?this._context.lineTo(De,ct):this._context.moveTo(De,ct);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ct),this._context.lineTo(De,ct);else{var ht=this._x*(1-this._t)+De*this._t;this._context.lineTo(ht,this._y),this._context.lineTo(ht,ct)}break}}this._x=De,this._y=ct}};function wn(De){return new Fn(De,.5)}function Si(De){return new Fn(De,0)}function Aa(De){return new Fn(De,1)}function ia(De,ct){if((ir=De.length)>1)for(var ht=1,Mt,Gt,Lt=De[ct[0]],ir,zt=Lt.length;ht=0;)ht[ct]=ct;return ht}function Ji(De,ct){return De[ct]}function ii(){var De=r([]),ct=An,ht=ia,Mt=Ji;function Gt(Lt){var ir=De.apply(this,arguments),zt,ar=Lt.length,kr=ir.length,Er=new Array(kr),Xr;for(zt=0;zt0){for(var ht,Mt,Gt=0,Lt=De[0].length,ir;Gt0)for(var ht,Mt=0,Gt,Lt,ir,zt,ar,kr=De[ct[0]].length;Mt0?(Gt[0]=ir,Gt[1]=ir+=Lt):Lt<0?(Gt[1]=zt,Gt[0]=zt+=Lt):(Gt[0]=0,Gt[1]=Lt)}function Ia(De,ct){if((Gt=De.length)>0){for(var ht=0,Mt=De[ct[0]],Gt,Lt=Mt.length;ht0)||!((Lt=(Gt=De[ct[0]]).length)>0))){for(var ht=0,Mt=1,Gt,Lt,ir;MtLt&&(Lt=Gt,ht=ct);return ht}function ma(De){var ct=De.map(oa);return An(De).sort(function(ht,Mt){return ct[ht]-ct[Mt]})}function oa(De){for(var ct=0,ht=-1,Mt=De.length,Gt;++ht{(function(e,t){typeof g4=="object"&&typeof SAe<"u"?t(g4,q_(),f4(),hF()):typeof define=="function"&&define.amd?define(["exports","d3-array","d3-collection","d3-shape"],t):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(g4,function(e,t,r,n){"use strict";function i(p){return p.target.depth}function a(p){return p.depth}function o(p,S){return S-1-p.height}function s(p,S){return p.sourceLinks.length?p.depth:S-1}function l(p){return p.targetLinks.length?p.depth:p.sourceLinks.length?t.min(p.sourceLinks,i)-1:0}function u(p){return function(){return p}}function f(p,S){return h(p.source,S.source)||p.index-S.index}function c(p,S){return h(p.target,S.target)||p.index-S.index}function h(p,S){return p.y0-S.y0}function d(p){return p.value}function v(p){return(p.y0+p.y1)/2}function m(p){return v(p.source)*p.value}function b(p){return v(p.target)*p.value}function g(p){return p.index}function _(p){return p.nodes}function T(p){return p.links}function w(p,S){var y=p.get(S);if(!y)throw new Error("missing: "+S);return y}var k=function(){var p=0,S=0,y=1,E=1,C=24,L=8,R=g,I=s,P=_,D=T,q=32,N=2/3;function U(){var Z={nodes:P.apply(null,arguments),links:D.apply(null,arguments)};return G(Z),ee(Z),Q(Z),j(Z,q),O(Z),Z}U.update=function(Z){return O(Z),Z},U.nodeId=function(Z){return arguments.length?(R=typeof Z=="function"?Z:u(Z),U):R},U.nodeAlign=function(Z){return arguments.length?(I=typeof Z=="function"?Z:u(Z),U):I},U.nodeWidth=function(Z){return arguments.length?(C=+Z,U):C},U.nodePadding=function(Z){return arguments.length?(L=+Z,U):L},U.nodes=function(Z){return arguments.length?(P=typeof Z=="function"?Z:u(Z),U):P},U.links=function(Z){return arguments.length?(D=typeof Z=="function"?Z:u(Z),U):D},U.size=function(Z){return arguments.length?(p=S=0,y=+Z[0],E=+Z[1],U):[y-p,E-S]},U.extent=function(Z){return arguments.length?(p=+Z[0][0],y=+Z[1][0],S=+Z[0][1],E=+Z[1][1],U):[[p,S],[y,E]]},U.iterations=function(Z){return arguments.length?(q=+Z,U):q};function G(Z){Z.nodes.forEach(function($,oe){$.index=oe,$.sourceLinks=[],$.targetLinks=[]});var K=r.map(Z.nodes,R);Z.links.forEach(function($,oe){$.index=oe;var te=$.source,V=$.target;typeof te!="object"&&(te=$.source=w(K,te)),typeof V!="object"&&(V=$.target=w(K,V)),te.sourceLinks.push($),V.targetLinks.push($)})}function ee(Z){Z.nodes.forEach(function(K){K.value=Math.max(t.sum(K.sourceLinks,d),t.sum(K.targetLinks,d))})}function Q(Z){var K,$,oe;for(K=Z.nodes,$=[],oe=0;K.length;++oe,K=$,$=[])K.forEach(function(V){V.depth=oe,V.sourceLinks.forEach(function(ne){$.indexOf(ne.target)<0&&$.push(ne.target)})});for(K=Z.nodes,$=[],oe=0;K.length;++oe,K=$,$=[])K.forEach(function(V){V.height=oe,V.targetLinks.forEach(function(ne){$.indexOf(ne.source)<0&&$.push(ne.source)})});var te=(y-p-C)/(oe-1);Z.nodes.forEach(function(V){V.x1=(V.x0=p+Math.max(0,Math.min(oe-1,Math.floor(I.call(null,V,oe))))*te)+C})}function j(Z){var K=r.nest().key(function(fe){return fe.x0}).sortKeys(t.ascending).entries(Z.nodes).map(function(fe){return fe.values});te(),W();for(var $=1,oe=q;oe>0;--oe)ne($*=.99),W(),V($),W();function te(){var fe=t.max(K,function(Ne){return Ne.length}),ge=N*(E-S)/(fe-1);L>ge&&(L=ge);var Ce=t.min(K,function(Ne){return(E-S-(Ne.length-1)*L)/t.sum(Ne,d)});K.forEach(function(Ne){Ne.forEach(function(pe,me){pe.y1=(pe.y0=me)+pe.value*Ce})}),Z.links.forEach(function(Ne){Ne.width=Ne.value*Ce})}function V(fe){K.forEach(function(ge){ge.forEach(function(Ce){if(Ce.targetLinks.length){var Ne=(t.sum(Ce.targetLinks,m)/t.sum(Ce.targetLinks,d)-v(Ce))*fe;Ce.y0+=Ne,Ce.y1+=Ne}})})}function ne(fe){K.slice().reverse().forEach(function(ge){ge.forEach(function(Ce){if(Ce.sourceLinks.length){var Ne=(t.sum(Ce.sourceLinks,b)/t.sum(Ce.sourceLinks,d)-v(Ce))*fe;Ce.y0+=Ne,Ce.y1+=Ne}})})}function W(){K.forEach(function(fe){var ge,Ce,Ne=S,pe=fe.length,me;for(fe.sort(h),me=0;me0&&(ge.y0+=Ce,ge.y1+=Ce),Ne=ge.y1+L;if(Ce=Ne-L-E,Ce>0)for(Ne=ge.y0-=Ce,ge.y1-=Ce,me=pe-2;me>=0;--me)ge=fe[me],Ce=ge.y1+L-Ne,Ce>0&&(ge.y0-=Ce,ge.y1-=Ce),Ne=ge.y0})}}function O(Z){Z.nodes.forEach(function(K){K.sourceLinks.sort(c),K.targetLinks.sort(f)}),Z.nodes.forEach(function(K){var $=K.y0,oe=$;K.sourceLinks.forEach(function(te){te.y0=$+te.width/2,$+=te.width}),K.targetLinks.forEach(function(te){te.y1=oe+te.width/2,oe+=te.width})})}return U};function x(p){return[p.source.x1,p.y0]}function M(p){return[p.target.x0,p.y1]}var A=function(){return n.linkHorizontal().source(x).target(M)};e.sankey=k,e.sankeyCenter=l,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=A,Object.defineProperty(e,"__esModule",{value:!0})})});var LAe=J((WUt,EAe)=>{var h3t=cF();EAe.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(T){a[T]=!1,o.hasOwnProperty(T)&&Object.keys(o[T]).forEach(function(w){delete o[T][w],a[w]&&u(w)})}function f(T){var w=!1;i.push(T),a[T]=!0;var k,x;for(k=0;k=T})}function d(T){h(T);for(var w=t,k=h3t(w),x=k.components.filter(function(C){return C.length>1}),M=1/0,A,p=0;p{(function(e,t){typeof m4=="object"&&typeof DAe<"u"?t(m4,q_(),f4(),hF(),LAe()):typeof define=="function"&&define.amd?define(["exports","d3-array","d3-collection","d3-shape","elementary-circuits-directed-graph"],t):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(m4,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(pe){return pe.target.depth}function o(pe){return pe.depth}function s(pe,me){return me-1-pe.height}function l(pe,me){return pe.sourceLinks.length?pe.depth:me-1}function u(pe){return pe.targetLinks.length?pe.depth:pe.sourceLinks.length?t.min(pe.sourceLinks,a)-1:0}function f(pe){return function(){return pe}}var c=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(pe){return typeof pe}:function(pe){return pe&&typeof Symbol=="function"&&pe.constructor===Symbol&&pe!==Symbol.prototype?"symbol":typeof pe};function h(pe,me){return v(pe.source,me.source)||pe.index-me.index}function d(pe,me){return v(pe.target,me.target)||pe.index-me.index}function v(pe,me){return pe.partOfCycle===me.partOfCycle?pe.y0-me.y0:pe.circularLinkType==="top"||me.circularLinkType==="bottom"?-1:1}function m(pe){return pe.value}function b(pe){return(pe.y0+pe.y1)/2}function g(pe){return b(pe.source)}function _(pe){return b(pe.target)}function T(pe){return pe.index}function w(pe){return pe.nodes}function k(pe){return pe.links}function x(pe,me){var Ie=pe.get(me);if(!Ie)throw new Error("missing: "+me);return Ie}function M(pe,me){return me(pe)}var A=25,p=10,S=.3;function y(){var pe=0,me=0,Ie=1,Re=1,ze=24,Be,tt=T,rt=l,ce=w,Ee=k,Ae=32,Pe=2,He,Fe=null;function ke(){var nt={nodes:ce.apply(null,arguments),links:Ee.apply(null,arguments)};Ue(nt),E(nt,tt,Fe),Ge(nt),wt(nt),C(nt,tt),_t(nt,Ae,tt),Tt(nt);for(var bt=4,At=0;At"u"?"undefined":c(je))!=="object"&&(je=At.source=x(bt,je)),(typeof $e>"u"?"undefined":c($e))!=="object"&&($e=At.target=x(bt,$e)),je.sourceLinks.push(At),$e.targetLinks.push(At)}),nt}function Ge(nt){nt.nodes.forEach(function(bt){bt.partOfCycle=!1,bt.value=Math.max(t.sum(bt.sourceLinks,m),t.sum(bt.targetLinks,m)),bt.sourceLinks.forEach(function(At){At.circular&&(bt.partOfCycle=!0,bt.circularLinkType=At.circularLinkType)}),bt.targetLinks.forEach(function(At){At.circular&&(bt.partOfCycle=!0,bt.circularLinkType=At.circularLinkType)})})}function lt(nt){var bt=0,At=0,Ye=0,je=0,$e=t.max(nt.nodes,function(ve){return ve.column});return nt.links.forEach(function(ve){ve.circular&&(ve.circularLinkType=="top"?bt=bt+ve.width:At=At+ve.width,ve.target.column==0&&(je=je+ve.width),ve.source.column==$e&&(Ye=Ye+ve.width))}),bt=bt>0?bt+A+p:bt,At=At>0?At+A+p:At,Ye=Ye>0?Ye+A+p:Ye,je=je>0?je+A+p:je,{top:bt,bottom:At,left:je,right:Ye}}function it(nt,bt){var At=t.max(nt.nodes,function(Te){return Te.column}),Ye=Ie-pe,je=Re-me,$e=Ye+bt.right+bt.left,ve=je+bt.top+bt.bottom,Y=Ye/$e,ie=je/ve;return pe=pe*Y+bt.left,Ie=bt.right==0?Ie:Ie*Y,me=me*ie+bt.top,Re=Re*ie,nt.nodes.forEach(function(Te){Te.x0=pe+Te.column*((Ie-pe-ze)/At),Te.x1=Te.x0+ze}),ie}function wt(nt){var bt,At,Ye;for(bt=nt.nodes,At=[],Ye=0;bt.length;++Ye,bt=At,At=[])bt.forEach(function(je){je.depth=Ye,je.sourceLinks.forEach(function($e){At.indexOf($e.target)<0&&!$e.circular&&At.push($e.target)})});for(bt=nt.nodes,At=[],Ye=0;bt.length;++Ye,bt=At,At=[])bt.forEach(function(je){je.height=Ye,je.targetLinks.forEach(function($e){At.indexOf($e.source)<0&&!$e.circular&&At.push($e.source)})});nt.nodes.forEach(function(je){je.column=Math.floor(rt.call(null,je,Ye))})}function _t(nt,bt,At){var Ye=r.nest().key(function(Te){return Te.column}).sortKeys(t.ascending).entries(nt.nodes).map(function(Te){return Te.values});ve(At),ie();for(var je=1,$e=bt;$e>0;--$e)Y(je*=.99,At),ie();function ve(Te){if(He){var Ve=1/0;Ye.forEach(function(Xt){var St=Re*He/(Xt.length+1);Ve=St0))if(Xt==0&&Ht==1)Vt=St.y1-St.y0,St.y0=Re/2-Vt/2,St.y1=Re/2+Vt/2;else if(Xt==at-1&&Ht==1)Vt=St.y1-St.y0,St.y0=Re/2-Vt/2,St.y1=Re/2+Vt/2;else{var er=0,_r=t.mean(St.sourceLinks,_),br=t.mean(St.targetLinks,g);_r&&br?er=(_r+br)/2:er=_r||br;var or=(er-b(St))*Te;St.y0+=or,St.y1+=or}})})}function ie(){Ye.forEach(function(Te){var Ve,at,ft=me,Ht=Te.length,Xt;for(Te.sort(v),Xt=0;Xt0&&(Ve.y0+=at,Ve.y1+=at),ft=Ve.y1+Be;if(at=ft-Be-Re,at>0)for(ft=Ve.y0-=at,Ve.y1-=at,Xt=Ht-2;Xt>=0;--Xt)Ve=Te[Xt],at=Ve.y1+Be-ft,at>0&&(Ve.y0-=at,Ve.y1-=at),ft=Ve.y0})}}function Tt(nt){nt.nodes.forEach(function(bt){bt.sourceLinks.sort(d),bt.targetLinks.sort(h)}),nt.nodes.forEach(function(bt){var At=bt.y0,Ye=At,je=bt.y1,$e=je;bt.sourceLinks.forEach(function(ve){ve.circular?(ve.y0=je-ve.width/2,je=je-ve.width):(ve.y0=At+ve.width/2,At+=ve.width)}),bt.targetLinks.forEach(function(ve){ve.circular?(ve.y1=$e-ve.width/2,$e=$e-ve.width):(ve.y1=Ye+ve.width/2,Ye+=ve.width)})})}return ke}function E(pe,me,Ie){var Re=0;if(Ie===null){for(var ze=[],Be=0;Beme.source.column)}function I(pe,me){var Ie=0;pe.sourceLinks.forEach(function(ze){Ie=ze.circular&&!Ce(ze,me)?Ie+1:Ie});var Re=0;return pe.targetLinks.forEach(function(ze){Re=ze.circular&&!Ce(ze,me)?Re+1:Re}),Ie+Re}function P(pe){var me=pe.source.sourceLinks,Ie=0;me.forEach(function(Be){Ie=Be.circular?Ie+1:Ie});var Re=pe.target.targetLinks,ze=0;return Re.forEach(function(Be){ze=Be.circular?ze+1:ze}),!(Ie>1||ze>1)}function D(pe,me,Ie){return pe.sort(U),pe.forEach(function(Re,ze){var Be=0;if(Ce(Re,Ie)&&P(Re))Re.circularPathData.verticalBuffer=Be+Re.width/2;else{var tt=0;for(tt;ttBe?rt:Be}Re.circularPathData.verticalBuffer=Be+Re.width/2}}),pe}function q(pe,me,Ie,Re){var ze=5,Be=t.min(pe.links,function(ce){return ce.source.y0});pe.links.forEach(function(ce){ce.circular&&(ce.circularPathData={})});var tt=pe.links.filter(function(ce){return ce.circularLinkType=="top"});D(tt,me,Re);var rt=pe.links.filter(function(ce){return ce.circularLinkType=="bottom"});D(rt,me,Re),pe.links.forEach(function(ce){if(ce.circular){if(ce.circularPathData.arcRadius=ce.width+p,ce.circularPathData.leftNodeBuffer=ze,ce.circularPathData.rightNodeBuffer=ze,ce.circularPathData.sourceWidth=ce.source.x1-ce.source.x0,ce.circularPathData.sourceX=ce.source.x0+ce.circularPathData.sourceWidth,ce.circularPathData.targetX=ce.target.x0,ce.circularPathData.sourceY=ce.y0,ce.circularPathData.targetY=ce.y1,Ce(ce,Re)&&P(ce))ce.circularPathData.leftSmallArcRadius=p+ce.width/2,ce.circularPathData.leftLargeArcRadius=p+ce.width/2,ce.circularPathData.rightSmallArcRadius=p+ce.width/2,ce.circularPathData.rightLargeArcRadius=p+ce.width/2,ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=ce.source.y1+A+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=ce.source.y0-A-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius);else{var Ee=ce.source.column,Ae=ce.circularLinkType,Pe=pe.links.filter(function(ke){return ke.source.column==Ee&&ke.circularLinkType==Ae});ce.circularLinkType=="bottom"?Pe.sort(ee):Pe.sort(G);var He=0;Pe.forEach(function(ke,Ue){ke.circularLinkID==ce.circularLinkID&&(ce.circularPathData.leftSmallArcRadius=p+ce.width/2+He,ce.circularPathData.leftLargeArcRadius=p+ce.width/2+Ue*me+He),He=He+ke.width}),Ee=ce.target.column,Pe=pe.links.filter(function(ke){return ke.target.column==Ee&&ke.circularLinkType==Ae}),ce.circularLinkType=="bottom"?Pe.sort(j):Pe.sort(Q),He=0,Pe.forEach(function(ke,Ue){ke.circularLinkID==ce.circularLinkID&&(ce.circularPathData.rightSmallArcRadius=p+ce.width/2+He,ce.circularPathData.rightLargeArcRadius=p+ce.width/2+Ue*me+He),He=He+ke.width}),ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=Math.max(Ie,ce.source.y1,ce.target.y1)+A+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=Be-A-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius)}ce.circularPathData.leftInnerExtent=ce.circularPathData.sourceX+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightInnerExtent=ce.circularPathData.targetX-ce.circularPathData.rightNodeBuffer,ce.circularPathData.leftFullExtent=ce.circularPathData.sourceX+ce.circularPathData.leftLargeArcRadius+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightFullExtent=ce.circularPathData.targetX-ce.circularPathData.rightLargeArcRadius-ce.circularPathData.rightNodeBuffer}if(ce.circular)ce.path=N(ce);else{var Fe=n.linkHorizontal().source(function(ke){var Ue=ke.source.x0+(ke.source.x1-ke.source.x0),Ge=ke.y0;return[Ue,Ge]}).target(function(ke){var Ue=ke.target.x0,Ge=ke.y1;return[Ue,Ge]});ce.path=Fe(ce)}})}function N(pe){var me="";return pe.circularLinkType=="top"?me="M"+pe.circularPathData.sourceX+" "+pe.circularPathData.sourceY+" L"+pe.circularPathData.leftInnerExtent+" "+pe.circularPathData.sourceY+" A"+pe.circularPathData.leftLargeArcRadius+" "+pe.circularPathData.leftSmallArcRadius+" 0 0 0 "+pe.circularPathData.leftFullExtent+" "+(pe.circularPathData.sourceY-pe.circularPathData.leftSmallArcRadius)+" L"+pe.circularPathData.leftFullExtent+" "+pe.circularPathData.verticalLeftInnerExtent+" A"+pe.circularPathData.leftLargeArcRadius+" "+pe.circularPathData.leftLargeArcRadius+" 0 0 0 "+pe.circularPathData.leftInnerExtent+" "+pe.circularPathData.verticalFullExtent+" L"+pe.circularPathData.rightInnerExtent+" "+pe.circularPathData.verticalFullExtent+" A"+pe.circularPathData.rightLargeArcRadius+" "+pe.circularPathData.rightLargeArcRadius+" 0 0 0 "+pe.circularPathData.rightFullExtent+" "+pe.circularPathData.verticalRightInnerExtent+" L"+pe.circularPathData.rightFullExtent+" "+(pe.circularPathData.targetY-pe.circularPathData.rightSmallArcRadius)+" A"+pe.circularPathData.rightLargeArcRadius+" "+pe.circularPathData.rightSmallArcRadius+" 0 0 0 "+pe.circularPathData.rightInnerExtent+" "+pe.circularPathData.targetY+" L"+pe.circularPathData.targetX+" "+pe.circularPathData.targetY:me="M"+pe.circularPathData.sourceX+" "+pe.circularPathData.sourceY+" L"+pe.circularPathData.leftInnerExtent+" "+pe.circularPathData.sourceY+" A"+pe.circularPathData.leftLargeArcRadius+" "+pe.circularPathData.leftSmallArcRadius+" 0 0 1 "+pe.circularPathData.leftFullExtent+" "+(pe.circularPathData.sourceY+pe.circularPathData.leftSmallArcRadius)+" L"+pe.circularPathData.leftFullExtent+" "+pe.circularPathData.verticalLeftInnerExtent+" A"+pe.circularPathData.leftLargeArcRadius+" "+pe.circularPathData.leftLargeArcRadius+" 0 0 1 "+pe.circularPathData.leftInnerExtent+" "+pe.circularPathData.verticalFullExtent+" L"+pe.circularPathData.rightInnerExtent+" "+pe.circularPathData.verticalFullExtent+" A"+pe.circularPathData.rightLargeArcRadius+" "+pe.circularPathData.rightLargeArcRadius+" 0 0 1 "+pe.circularPathData.rightFullExtent+" "+pe.circularPathData.verticalRightInnerExtent+" L"+pe.circularPathData.rightFullExtent+" "+(pe.circularPathData.targetY+pe.circularPathData.rightSmallArcRadius)+" A"+pe.circularPathData.rightLargeArcRadius+" "+pe.circularPathData.rightSmallArcRadius+" 0 0 1 "+pe.circularPathData.rightInnerExtent+" "+pe.circularPathData.targetY+" L"+pe.circularPathData.targetX+" "+pe.circularPathData.targetY,me}function U(pe,me){return O(pe)==O(me)?pe.circularLinkType=="bottom"?ee(pe,me):G(pe,me):O(me)-O(pe)}function G(pe,me){return pe.y0-me.y0}function ee(pe,me){return me.y0-pe.y0}function Q(pe,me){return pe.y1-me.y1}function j(pe,me){return me.y1-pe.y1}function O(pe){return pe.target.column-pe.source.column}function Z(pe){return pe.target.x0-pe.source.x1}function K(pe,me){var Ie=L(pe),Re=Z(me)/Math.tan(Ie),ze=ge(pe)=="up"?pe.y1+Re:pe.y1-Re;return ze}function $(pe,me){var Ie=L(pe),Re=Z(me)/Math.tan(Ie),ze=ge(pe)=="up"?pe.y1-Re:pe.y1+Re;return ze}function oe(pe,me,Ie,Re){pe.links.forEach(function(ze){if(!ze.circular&&ze.target.column-ze.source.column>1){var Be=ze.source.column+1,tt=ze.target.column-1,rt=1,ce=tt-Be+1;for(rt=1;Be<=tt;Be++,rt++)pe.nodes.forEach(function(Ee){if(Ee.column==Be){var Ae=rt/(ce+1),Pe=Math.pow(1-Ae,3),He=3*Ae*Math.pow(1-Ae,2),Fe=3*Math.pow(Ae,2)*(1-Ae),ke=Math.pow(Ae,3),Ue=Pe*ze.y0+He*ze.y0+Fe*ze.y1+ke*ze.y1,Ge=Ue-ze.width/2,lt=Ue+ze.width/2,it;Ge>Ee.y0&&GeEe.y0&<Ee.y1&&V(wt,it,me,Ie)})):GeEe.y1&&(it=lt-Ee.y0+10,Ee=V(Ee,it,me,Ie),pe.nodes.forEach(function(wt){M(wt,Re)==M(Ee,Re)||wt.column!=Ee.column||wt.y0Ee.y1&&V(wt,it,me,Ie)}))}})}})}function te(pe,me){return pe.y0>me.y0&&pe.y0me.y0&&pe.y1me.y1}function V(pe,me,Ie,Re){return pe.y0+me>=Ie&&pe.y1+me<=Re&&(pe.y0=pe.y0+me,pe.y1=pe.y1+me,pe.targetLinks.forEach(function(ze){ze.y1=ze.y1+me}),pe.sourceLinks.forEach(function(ze){ze.y0=ze.y0+me})),pe}function ne(pe,me,Ie,Re){pe.nodes.forEach(function(ze){Re&&ze.y+(ze.y1-ze.y0)>me&&(ze.y=ze.y-(ze.y+(ze.y1-ze.y0)-me));var Be=pe.links.filter(function(ce){return M(ce.source,Ie)==M(ze,Ie)}),tt=Be.length;tt>1&&Be.sort(function(ce,Ee){if(!ce.circular&&!Ee.circular){if(ce.target.column==Ee.target.column)return ce.y1-Ee.y1;if(fe(ce,Ee)){if(ce.target.column>Ee.target.column){var Ae=$(Ee,ce);return ce.y1-Ae}if(Ee.target.column>ce.target.column){var Pe=$(ce,Ee);return Pe-Ee.y1}}else return ce.y1-Ee.y1}if(ce.circular&&!Ee.circular)return ce.circularLinkType=="top"?-1:1;if(Ee.circular&&!ce.circular)return Ee.circularLinkType=="top"?1:-1;if(ce.circular&&Ee.circular)return ce.circularLinkType===Ee.circularLinkType&&ce.circularLinkType=="top"?ce.target.column===Ee.target.column?ce.target.y1-Ee.target.y1:Ee.target.column-ce.target.column:ce.circularLinkType===Ee.circularLinkType&&ce.circularLinkType=="bottom"?ce.target.column===Ee.target.column?Ee.target.y1-ce.target.y1:ce.target.column-Ee.target.column:ce.circularLinkType=="top"?-1:1});var rt=ze.y0;Be.forEach(function(ce){ce.y0=rt+ce.width/2,rt=rt+ce.width}),Be.forEach(function(ce,Ee){if(ce.circularLinkType=="bottom"){var Ae=Ee+1,Pe=0;for(Ae;Ae1&&ze.sort(function(rt,ce){if(!rt.circular&&!ce.circular){if(rt.source.column==ce.source.column)return rt.y0-ce.y0;if(fe(rt,ce)){if(ce.source.column0?"up":"down"}function Ce(pe,me){return M(pe.source,me)==M(pe.target,me)}function Ne(pe,me,Ie){var Re=pe.nodes,ze=pe.links,Be=!1,tt=!1;if(ze.forEach(function(He){He.circularLinkType=="top"?Be=!0:He.circularLinkType=="bottom"&&(tt=!0)}),Be==!1||tt==!1){var rt=t.min(Re,function(He){return He.y0}),ce=t.max(Re,function(He){return He.y1}),Ee=ce-rt,Ae=Ie-me,Pe=Ae/Ee;Re.forEach(function(He){var Fe=(He.y1-He.y0)*Pe;He.y0=(He.y0-rt)*Pe,He.y1=He.y0+Fe}),ze.forEach(function(He){He.y0=(He.y0-rt)*Pe,He.y1=(He.y1-rt)*Pe,He.width=He.width*Pe})}}e.sankeyCircular=y,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var vF=J((XUt,PAe)=>{"use strict";PAe.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var GAe=J((ZUt,YAe)=>{"use strict";var IAe=TAe(),v3t=(Qg(),s1(Kg)).interpolateNumber,Fx=Nr(),X_=CAe(),d3t=RAe(),Gi=vF(),zx=ls(),dm=qr(),p3t=ln(),Ad=gt(),gF=Ad.strTranslate,g3t=Ad.strRotate,mF=Px(),Z_=mF.keyFun,y4=mF.repeat,BAe=mF.unwrap,qAe=ca(),m3t=zr(),UAe=Vo(),y3t=UAe.CAP_SHIFT,x3t=UAe.LINE_SPACING,b3t=3;function w3t(e,t,r){var n=BAe(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:X_.sankeyJustify,left:X_.sankeyLeft,right:X_.sankeyRight,center:X_.sankeyCenter}[i.node.align],f=e.width*(a.x[1]-a.x[0]),c=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,v=n.circular,m;v?m=d3t.sankeyCircular().circularLinkGap(0):m=X_.sankey(),m.iterations(Gi.sankeyIterations).size(o?[f,c]:[c,f]).nodeWidth(l).nodePadding(s).nodeId(function(L){return L.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=m();m.nodePadding()=D||(P=D-I.y0,P>1e-6&&(I.y0+=P,I.y1+=P)),D=I.y1+s})}function S(L){var R=L.map(function(G,ee){return{x0:G.x0,index:ee}}).sort(function(G,ee){return G.x0-ee.x0}),I=[],P=-1,D,q=-1/0,N;for(g=0;gq+l&&(P+=1,D=U.x0),q=U.x0,I[P]||(I[P]=[]),I[P].push(U),N=D-U.x0,U.x0+=N,U.x1+=N}return I}if(i.node.x.length&&i.node.y.length){for(g=0;g0?"L"+i.targetX+" "+i.targetY:"")+"Z":r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L"+(i.rightInnerExtent-t)+" "+(i.targetY-n)+"A"+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+"L"+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent+"A"+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+"L"+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+"A"+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent+"L"+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+"A"+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+"L"+i.sourceX+" "+(i.sourceY-n)+"L"+i.sourceX+" "+(i.sourceY+n)+"L"+i.leftInnerExtent+" "+(i.sourceY+n)+"A"+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+"L"+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent+"A"+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+"L"+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+"A"+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent+"L"+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+"A"+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+"L"+(i.targetX-t)+" "+(i.targetY+n)+(t>0?"L"+i.targetX+" "+i.targetY:"")+"Z",r}function yF(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return T3t(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=v3t(a,o),l=s(e),u=s(1-e),f=r.link.y0-r.link.width/2,c=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,v="M"+a+","+f,m="C"+l+","+f+" "+u+","+h+" "+o+","+h,b="C"+u+","+d+" "+l+","+c+" "+a+","+c,g=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return g+="L"+o+","+d,v+m+g+b+"Z"}return t}function A3t(e,t){var r=zx(t.color),n=Gi.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=Ad.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:dm.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function pF(e){e.attr("transform",function(t){return gF(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function M3t(e){e.call(pF)}function HAe(e,t){e.call(M3t),t.attr("d",yF())}function FAe(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function dF(e){return e.link.width>1||e.linkLineWidth>0}function zAe(e){var t=gF(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function NAe(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function k3t(e,t,r,n){var i=Fx.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(Ad.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),Ad.raiseToTop(this),a.interactionState.dragInProgress=a.node,OAe(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):S3t(e,o,a,n),C3t(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=Fx.event.x,s=Fx.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),OAe(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),HAe(e.filter(VAe(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o0)window.requestAnimationFrame(a);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,jAe(r,i)}})}function E3t(e,t,r,n){return function(){for(var a=0,o=0;o0&&n.forceLayouts[t].alpha(0)}}function jAe(e,t){for(var r=[],n=[],i=0;i{"use strict";var Yl=Nr(),bF=gt(),x4=bF.numberFormat,P3t=GAe(),Nx=go(),I3t=qr(),np=vF().cn,J_=bF._;function WAe(e){return e!==""}function Ox(e,t){return e.filter(function(r){return r.key===t.traceId})}function XAe(e,t){Yl.select(e).select("path").style("fill-opacity",t),Yl.select(e).select("rect").style("fill-opacity",t)}function ZAe(e){Yl.select(e).select("text.name").style("fill","black")}function JAe(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function $Ae(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function KAe(e,t,r){t&&r&&Ox(r,t).selectAll("."+np.sankeyLink).filter(JAe(t)).call(QAe.bind(0,t,r,!1))}function xF(e,t,r){t&&r&&Ox(r,t).selectAll("."+np.sankeyLink).filter(JAe(t)).call(eMe.bind(0,t,r,!1))}function QAe(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&Ox(t,e).selectAll("."+np.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&Ox(t,e).selectAll("."+np.sankeyNode).filter($Ae(e)).call(KAe)}function eMe(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&Ox(t,e).selectAll("."+np.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&Ox(t,e).selectAll(np.sankeyNode).filter($Ae(e)).call(xF)}function ja(e,t){var r=e.hoverlabel||{},n=bF.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}tMe.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o"),color:ja(M,"bgcolor")||I3t.addOpacity(E.color,1),borderColor:ja(M,"bordercolor"),fontFamily:ja(M,"font.family"),fontSize:ja(M,"font.size"),fontColor:ja(M,"font.color"),fontWeight:ja(M,"font.weight"),fontStyle:ja(M,"font.style"),fontVariant:ja(M,"font.variant"),fontTextcase:ja(M,"font.textcase"),fontLineposition:ja(M,"font.lineposition"),fontShadow:ja(M,"font.shadow"),nameLength:ja(M,"namelength"),textAlign:ja(M,"align"),idealAlign:Yl.event.x"),color:ja(M,"bgcolor")||x.tinyColorHue,borderColor:ja(M,"bordercolor"),fontFamily:ja(M,"font.family"),fontSize:ja(M,"font.size"),fontColor:ja(M,"font.color"),fontWeight:ja(M,"font.weight"),fontStyle:ja(M,"font.style"),fontVariant:ja(M,"font.variant"),fontTextcase:ja(M,"font.textcase"),fontLineposition:ja(M,"font.lineposition"),fontShadow:ja(M,"font.shadow"),nameLength:ja(M,"namelength"),textAlign:ja(M,"align"),idealAlign:"left",hovertemplate:M.hovertemplate,hovertemplateLabels:L,eventData:[x.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});XAe(P,.85),ZAe(P)}}},w=function(k,x,M){t._fullLayout.hovermode!==!1&&(Yl.select(k).call(xF,x,M),x.node.trace.node.hoverinfo!=="skip"&&(x.node.fullData=x.node.trace,t.emit("plotly_unhover",{event:Yl.event,points:[x.node]})),Nx.loneUnhover(n._hoverlayer.node()))};P3t(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:u,follow:m,unhover:b,select:l},nodeEvents:{hover:_,follow:T,unhover:w,select:g}})}});var rMe=J(pm=>{"use strict";var q3t=La().overrideAll,F3t=Nu().getModuleCalcData,z3t=wF(),N3t=Uv(),O3t=th(),B3t=iu(),U3t=ml().prepSelect,_F=gt(),H3t=zr(),b4="sankey";pm.name=b4;pm.baseLayoutAttrOverrides=q3t({hoverlabel:N3t.hoverlabel},"plot","nested");pm.plot=function(e){var t=F3t(e.calcdata,b4)[0];z3t(e,t),pm.updateFx(e)};pm.clean=function(e,t,r,n){var i=n._has&&n._has(b4),a=t._has&&t._has(b4);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};pm.updateFx=function(e){for(var t=0;t{"use strict";nMe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s{"use strict";aMe.exports={attributes:fF(),supplyDefaults:uAe(),calc:dAe(),plot:wF(),moduleType:"trace",name:"sankey",basePlotModule:rMe(),selectPoints:iMe(),categories:["noOpacity"],meta:{description:["Sankey plots for network flow data analysis.","The nodes are specified in `nodes` and the links between sources and targets in `links`.","The colors are set in `nodes[i].color` and `links[i].color`, otherwise defaults are used."].join(" ")}}});var lMe=J((eHt,sMe)=>{"use strict";sMe.exports=oMe()});var fMe=J(Bx=>{"use strict";var uMe=ea();Bx.name="indicator";Bx.plot=function(e,t,r,n){uMe.plotBasePlot(Bx.name,e,t,r,n)};Bx.clean=function(e,t,r,n){uMe.cleanBasePlot(Bx.name,e,t,r,n)}});var AF=J((rHt,gMe)=>{"use strict";var ip=cn().extendFlat,hMe=cn().extendDeep,V3t=La().overrideAll,vMe=xa(),dMe=Ho(),Y3t=Wa().attributes,Za=hl(),G3t=ki().templatedArray,w4=Jy(),cMe=Ga().descriptionOnlyNumbers,TF=vMe({editType:"plot",colorEditType:"plot"}),$_={color:{valType:"color",editType:"plot",description:["Sets the background color of the arc."].join(" ")},line:{color:{valType:"color",dflt:dMe.defaultLine,editType:"plot",description:["Sets the color of the line enclosing each sector."].join(" ")},width:{valType:"number",min:0,dflt:0,editType:"plot",description:["Sets the width (in px) of the line enclosing each sector."].join(" ")},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot",description:["Sets the thickness of the bar as a fraction of the total thickness of the gauge."].join(" ")},editType:"calc"},pMe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot",description:["Sets the range of this axis."].join(" ")},W3t=G3t("step",hMe({},$_,{range:pMe}));gMe.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number",description:["Determines how the value is displayed on the graph.","`number` displays the value numerically in text.","`delta` displays the difference to a reference value in text.","Finally, `gauge` displays the value graphically on an axis."].join(" ")},value:{valType:"number",editType:"calc",anim:!0,description:["Sets the number to be displayed."].join(" ")},align:{valType:"enumerated",values:["left","center","right"],editType:"plot",description:["Sets the horizontal alignment of the `text` within the box.","Note that this attribute has no effect if an angular gauge is displayed:","in this case, it is always centered"].join(" ")},domain:Y3t({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot",description:["Sets the title of this indicator."].join(" ")},align:{valType:"enumerated",values:["left","center","right"],editType:"plot",description:["Sets the horizontal alignment of the title.","It defaults to `center` except for bullet charts","for which it defaults to right."].join(" ")},font:ip({},TF,{description:["Set the font used to display the title"].join(" ")}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:cMe("value")},font:ip({},TF,{description:["Set the font used to display main number"].join(" ")}),prefix:{valType:"string",dflt:"",editType:"plot",description:["Sets a prefix appearing before the number."].join(" ")},suffix:{valType:"string",dflt:"",editType:"plot",description:["Sets a suffix appearing next to the number."].join(" ")},editType:"plot"},delta:{reference:{valType:"number",editType:"calc",description:["Sets the reference value to compute the delta.","By default, it is set to the current value."].join(" ")},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot",description:["Sets the position of delta with respect to the number."].join(" ")},relative:{valType:"boolean",editType:"plot",dflt:!1,description:["Show relative change"].join(" ")},valueformat:{valType:"string",editType:"plot",description:cMe("value")},increasing:{symbol:{valType:"string",dflt:w4.INCREASING.SYMBOL,editType:"plot",description:["Sets the symbol to display for increasing value"].join(" ")},color:{valType:"color",dflt:w4.INCREASING.COLOR,editType:"plot",description:["Sets the color for increasing value."].join(" ")},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:w4.DECREASING.SYMBOL,editType:"plot",description:["Sets the symbol to display for increasing value"].join(" ")},color:{valType:"color",dflt:w4.DECREASING.COLOR,editType:"plot",description:["Sets the color for increasing value."].join(" ")},editType:"plot"},font:ip({},TF,{description:["Set the font used to display the delta"].join(" ")}),prefix:{valType:"string",dflt:"",editType:"plot",description:["Sets a prefix appearing before the delta."].join(" ")},suffix:{valType:"string",dflt:"",editType:"plot",description:["Sets a suffix appearing next to the delta."].join(" ")},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"],description:["Set the shape of the gauge"].join(" ")},bar:hMe({},$_,{color:{dflt:"green"},description:["Set the appearance of the gauge's value"].join(" ")}),bgcolor:{valType:"color",editType:"plot",description:"Sets the gauge background color."},bordercolor:{valType:"color",dflt:dMe.defaultLine,editType:"plot",description:"Sets the color of the border enclosing the gauge."},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot",description:"Sets the width (in px) of the border enclosing the gauge."},axis:V3t({range:pMe,visible:ip({},Za.visible,{dflt:!0}),tickmode:Za.minor.tickmode,nticks:Za.nticks,tick0:Za.tick0,dtick:Za.dtick,tickvals:Za.tickvals,ticktext:Za.ticktext,ticks:ip({},Za.ticks,{dflt:"outside"}),ticklen:Za.ticklen,tickwidth:Za.tickwidth,tickcolor:Za.tickcolor,ticklabelstep:Za.ticklabelstep,showticklabels:Za.showticklabels,labelalias:Za.labelalias,tickfont:vMe({description:"Sets the color bar's tick label font"}),tickangle:Za.tickangle,tickformat:Za.tickformat,tickformatstops:Za.tickformatstops,tickprefix:Za.tickprefix,showtickprefix:Za.showtickprefix,ticksuffix:Za.ticksuffix,showticksuffix:Za.showticksuffix,separatethousands:Za.separatethousands,exponentformat:Za.exponentformat,minexponent:Za.minexponent,showexponent:Za.showexponent,editType:"plot"},"plot"),steps:W3t,threshold:{line:{color:ip({},$_.line.color,{description:["Sets the color of the threshold line."].join(" ")}),width:ip({},$_.line.width,{dflt:1,description:["Sets the width (in px) of the threshold line."].join(" ")}),editType:"plot"},thickness:ip({},$_.thickness,{dflt:.85,description:["Sets the thickness of the threshold line as a fraction of the thickness of the gauge."].join(" ")}),value:{valType:"number",editType:"calc",dflt:!1,description:["Sets a treshold value drawn as a line."].join(" ")},editType:"plot"},description:"The gauge of the Indicator plot.",editType:"plot"}}});var MF=J((nHt,mMe)=>{"use strict";mMe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var bMe=J((iHt,xMe)=>{"use strict";var mv=gt(),T4=AF(),X3t=Wa().defaults,yMe=ki(),Z3t=Bu(),_4=MF(),J3t=Wp(),$3t=N1(),K3t=Xp(),Q3t=Zp();function eTt(e,t,r,n){function i(x,M){return mv.coerce(e,t,T4,x,M)}X3t(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var l=mv.extendFlat({},n.font);l.size=void 0,mv.coerceFont(i,"number.font",l),t.number.font.size===void 0&&(t.number.font.size=_4.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var u;if(t._hasDelta){var f=mv.extendFlat({},n.font);f.size=void 0,mv.coerceFont(i,"delta.font",f),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||_4.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),u=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var c=mv.extendFlat({},n.font);c.size=.25*(s||u||_4.defaultNumberFontSize),mv.coerceFont(i,"title.font",c),i("title.text");var h,d,v,m;function b(x,M){return mv.coerce(h,d,T4.gauge,x,M)}function g(x,M){return mv.coerce(v,m,T4.gauge.axis,x,M)}if(t._hasGauge){h=e.gauge,h||(h={}),d=yMe.newContainer(t,"gauge"),b("shape");var _=t._isBullet=t.gauge.shape==="bullet";_||i("title.align","center");var T=t._isAngular=t.gauge.shape==="angular";T||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var w=_4.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",w),Z3t(h,d,{name:"steps",handleItemDefaults:tTt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),m=yMe.newContainer(d,"axis"),g("visible"),t._range=g("range",t._range);var k={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};J3t(v,m,g,"linear"),Q3t(v,m,g,"linear",k),K3t(v,m,g,"linear",k),$3t(v,m,g,k)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function tTt(e,t){function r(n,i){return mv.coerce(e,t,T4.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}xMe.exports={supplyDefaults:eTt}});var _Me=J((aHt,wMe)=>{"use strict";function rTt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}wMe.exports={calc:rTt}});var CMe=J((oHt,SMe)=>{"use strict";var bm=Nr(),nTt=(Qg(),s1(Kg)).interpolate,TMe=(Qg(),s1(Kg)).interpolateNumber,ap=gt(),iTt=ap.strScale,Q_=ap.strTranslate,aTt=ap.rad2deg,oTt=Vo().MID_SHIFT,xm=ln(),gm=MF(),M4=ca(),Qs=nn(),sTt=vw(),lTt=lk(),uTt=hl(),Ux=qr(),kF={left:"start",center:"middle",right:"end"},mm={left:0,center:.5,right:1},AMe=/[yzafpnµmkMGTPEZY]/;function e3(e){return e&&e.duration>0}SMe.exports=function(t,r,n,i){var a=t._fullLayout,o;e3(n)&&i&&(o=i()),ap.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var l=s[0],u=l.trace,f=bm.select(this),c=u._hasGauge,h=u._isAngular,d=u._isBullet,v=u.domain,m={w:a._size.w*(v.x[1]-v.x[0]),h:a._size.h*(v.y[1]-v.y[0]),l:a._size.l+a._size.w*v.x[0],r:a._size.r+a._size.w*(1-v.x[1]),t:a._size.t+a._size.h*(1-v.y[1]),b:a._size.b+a._size.h*v.y[0]},b=m.l+m.w/2,g=m.t+m.h/2,_=Math.min(m.w/2,m.h),T=gm.innerRadius*_,w,k,x,M=u.align||"center";if(k=g,!c)w=m.l+mm[M]*m.w,x=function(P){return MMe(P,m.w,m.h)};else if(h&&(w=b,k=g+_/2,x=function(P){return dTt(P,.9*T)}),d){var A=gm.bulletPadding,p=1-gm.bulletNumberDomainSize+A;w=m.l+(p+(1-p)*mm[M])*m.w,x=function(P){return MMe(P,(gm.bulletNumberDomainSize-A)*m.w,m.h)}}hTt(t,f,s,{numbersX:w,numbersY:k,numbersScaler:x,transitionOpts:n,onComplete:o});var S,y;c&&(S={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},y={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var E=f.selectAll("g.angular").data(h?s:[]);E.exit().remove();var C=f.selectAll("g.angularaxis").data(h?s:[]);C.exit().remove(),h&&cTt(t,f,s,{radius:_,innerRadius:T,gauge:E,layer:C,size:m,gaugeBg:S,gaugeOutline:y,transitionOpts:n,onComplete:o});var L=f.selectAll("g.bullet").data(d?s:[]);L.exit().remove();var R=f.selectAll("g.bulletaxis").data(d?s:[]);R.exit().remove(),d&&fTt(t,f,s,{gauge:L,layer:R,size:m,gaugeBg:S,gaugeOutline:y,transitionOpts:n,onComplete:o});var I=f.selectAll("text.title").data(s);I.exit().remove(),I.enter().append("text").classed("title",!0),I.attr("text-anchor",function(){return d?kF.right:kF[u.title.align]}).text(u.title.text).call(xm.font,u.title.font).call(M4.convertToTspans,t),I.attr("transform",function(){var P=m.l+m.w*mm[u.title.align],D,q=gm.titlePadding,N=xm.bBox(I.node());if(c){if(h)if(u.gauge.axis.visible){var U=xm.bBox(C.node());D=U.top-q-N.bottom}else D=m.t+m.h/2-_/2-N.bottom-q;d&&(D=k-(N.top+N.bottom)/2,P=m.l-gm.bulletPadding*m.w)}else D=u._numbersTop-q-N.bottom;return Q_(P,D)})})};function fTt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,l=n.gaugeOutline,u=n.size,f=i.domain,c=n.transitionOpts,h=n.onComplete,d,v,m,b,g;a.enter().append("g").classed("bullet",!0),a.attr("transform",Q_(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var _=u.h,T=i.gauge.bar.thickness*_,w=f.x[0],k=f.x[0]+(f.x[1]-f.x[0])*(i._hasNumber||i._hasDelta?1-gm.bulletNumberDomainSize:1);d=K_(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[w,k],d.setScale(),v=Qs.calcTicks(d),m=Qs.makeTransTickFn(d),b=Qs.getTickSigns(d)[2],g=u.t+u.h,d.visible&&(Qs.drawTicks(e,d,{vals:d.ticks==="inside"?Qs.clipEnds(d,v):v,layer:o,path:Qs.makeTickPath(d,g,b),transFn:m}),Qs.drawLabels(e,d,{vals:v,layer:o,transFn:m,labelFns:Qs.makeLabelFns(d,g)}));function x(C){C.attr("width",function(L){return Math.max(0,d.c2p(L.range[1])-d.c2p(L.range[0]))}).attr("x",function(L){return d.c2p(L.range[0])}).attr("y",function(L){return .5*(1-L.thickness)*_}).attr("height",function(L){return L.thickness*_})}var M=[s].concat(i.gauge.steps),A=a.selectAll("g.bg-bullet").data(M);A.enter().append("g").classed("bg-bullet",!0).append("rect"),A.select("rect").call(x).call(ym),A.exit().remove();var p=a.selectAll("g.value-bullet").data([i.gauge.bar]);p.enter().append("g").classed("value-bullet",!0).append("rect"),p.select("rect").attr("height",T).attr("y",(_-T)/2).call(ym),e3(c)?p.select("rect").transition().duration(c.duration).ease(c.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):p.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),p.exit().remove();var S=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),y=a.selectAll("g.threshold-bullet").data(S);y.enter().append("g").classed("threshold-bullet",!0).append("line"),y.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*_).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*_).call(Ux.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),y.exit().remove();var E=a.selectAll("g.gauge-outline").data([l]);E.enter().append("g").classed("gauge-outline",!0).append("rect"),E.select("rect").call(x).call(ym),E.exit().remove()}function cTt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,l=n.gaugeBg,u=n.gaugeOutline,f=[a.l+a.w/2,a.t+a.h/2+o/2],c=n.gauge,h=n.layer,d=n.transitionOpts,v=n.onComplete,m=Math.PI/2;function b(G){var ee=i.gauge.axis.range[0],Q=i.gauge.axis.range[1],j=(G-ee)/(Q-ee)*Math.PI-m;return j<-m?-m:j>m?m:j}function g(G){return bm.svg.arc().innerRadius((s+o)/2-G/2*(o-s)).outerRadius((s+o)/2+G/2*(o-s)).startAngle(-m)}function _(G){G.attr("d",function(ee){return g(ee.thickness).startAngle(b(ee.range[0])).endAngle(b(ee.range[1]))()})}var T,w,k,x;c.enter().append("g").classed("angular",!0),c.attr("transform",Q_(f[0],f[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),T=K_(e,i.gauge.axis),T.type="linear",T.range=i.gauge.axis.range,T._id="xangularaxis",T.ticklabeloverflow="allow",T.setScale();var M=function(G){return(T.range[0]-G.x)/(T.range[1]-T.range[0])*Math.PI+Math.PI},A={},p=Qs.makeLabelFns(T,0),S=p.labelStandoff;A.xFn=function(G){var ee=M(G);return Math.cos(ee)*S},A.yFn=function(G){var ee=M(G),Q=Math.sin(ee)>0?.2:1;return-Math.sin(ee)*(S+G.fontSize*Q)+Math.abs(Math.cos(ee))*(G.fontSize*oTt)},A.anchorFn=function(G){var ee=M(G),Q=Math.cos(ee);return Math.abs(Q)<.1?"middle":Q>0?"start":"end"},A.heightFn=function(G,ee,Q){var j=M(G);return-.5*(1+Math.sin(j))*Q};var y=function(G){return Q_(f[0]+o*Math.cos(G),f[1]-o*Math.sin(G))};k=function(G){return y(M(G))};var E=function(G){var ee=M(G);return y(ee)+"rotate("+-aTt(ee)+")"};if(w=Qs.calcTicks(T),x=Qs.getTickSigns(T)[2],T.visible){x=T.ticks==="inside"?-1:1;var C=(T.linewidth||1)/2;Qs.drawTicks(e,T,{vals:w,layer:h,path:"M"+x*C+",0h"+x*T.ticklen,transFn:E}),Qs.drawLabels(e,T,{vals:w,layer:h,transFn:k,labelFns:A})}var L=[l].concat(i.gauge.steps),R=c.selectAll("g.bg-arc").data(L);R.enter().append("g").classed("bg-arc",!0).append("path"),R.select("path").call(_).call(ym),R.exit().remove();var I=g(i.gauge.bar.thickness),P=c.selectAll("g.value-arc").data([i.gauge.bar]);P.enter().append("g").classed("value-arc",!0).append("path");var D=P.select("path");e3(d)?(D.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",vTt(I,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):D.attr("d",typeof r[0].y=="number"?I.endAngle(b(r[0].y)):"M0,0Z"),D.call(ym),P.exit().remove(),L=[];var q=i.gauge.threshold.value;(q||q===0)&&L.push({range:[q,q],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var N=c.selectAll("g.threshold-arc").data(L);N.enter().append("g").classed("threshold-arc",!0).append("path"),N.select("path").call(_).call(ym),N.exit().remove();var U=c.selectAll("g.gauge-outline").data([u]);U.enter().append("g").classed("gauge-outline",!0).append("path"),U.select("path").call(_).call(ym),U.exit().remove()}function hTt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=kF[s],u=n.transitionOpts,f=n.onComplete,c=ap.ensureSingle(t,"g","numbers"),h,d,v,m=[];i._hasNumber&&m.push("number"),i._hasDelta&&(m.push("delta"),i.delta.position==="left"&&m.reverse());var b=c.selectAll("text").data(m);b.enter().append("text"),b.attr("text-anchor",function(){return l}).attr("class",function(y){return y}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function g(y,E,C,L){if(y.match("s")&&C>=0!=L>=0&&!E(C).slice(-1).match(AMe)&&!E(L).slice(-1).match(AMe)){var R=y.slice().replace("s","f").replace(/\d+/,function(P){return parseInt(P)-1}),I=K_(e,{tickformat:R});return function(P){return Math.abs(P)<1?Qs.tickText(I,P).text:E(P)}}else return E}function _(){var y=K_(e,{tickformat:i.number.valueformat},i._range);y.setScale(),Qs.prepTicks(y);var E=function(P){return Qs.tickText(y,P).text},C=i.number.suffix,L=i.number.prefix,R=c.select("text.number");function I(){var P=typeof r[0].y=="number"?L+E(r[0].y)+C:"-";R.text(P).call(xm.font,i.number.font).call(M4.convertToTspans,e)}return e3(u)?R.transition().duration(u.duration).ease(u.easing).each("end",function(){I(),f&&f()}).each("interrupt",function(){I(),f&&f()}).attrTween("text",function(){var P=bm.select(this),D=TMe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var q=g(i.number.valueformat,E,r[0].lastY,r[0].y);return function(N){P.text(L+q(D(N))+C)}}):I(),h=kMe(L+E(r[0].y)+C,i.number.font,l,e),R}function T(){var y=K_(e,{tickformat:i.delta.valueformat},i._range);y.setScale(),Qs.prepTicks(y);var E=function(N){return Qs.tickText(y,N).text},C=i.delta.suffix,L=i.delta.prefix,R=function(N){var U=i.delta.relative?N.relativeDelta:N.delta;return U},I=function(N,U){return N===0||typeof N!="number"||isNaN(N)?"-":(N>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+L+U(N)+C},P=function(N){return N.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=R(r[0]));var D=c.select("text.delta");D.call(xm.font,i.delta.font).call(Ux.fill,P({delta:i._deltaLastValue}));function q(){D.text(I(R(r[0]),E)).call(Ux.fill,P(r[0])).call(M4.convertToTspans,e)}return e3(u)?D.transition().duration(u.duration).ease(u.easing).tween("text",function(){var N=bm.select(this),U=R(r[0]),G=i._deltaLastValue,ee=g(i.delta.valueformat,E,G,U),Q=TMe(G,U);return i._deltaLastValue=U,function(j){N.text(I(Q(j),ee)),N.call(Ux.fill,P({delta:Q(j)}))}}).each("end",function(){q(),f&&f()}).each("interrupt",function(){q(),f&&f()}):q(),d=kMe(I(R(r[0]),E),i.delta.font,l,e),D}var w=i.mode+i.align,k;if(i._hasDelta&&(k=T(),w+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,w+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(_(),w+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,v=h),i._hasDelta&&i._hasNumber){var x=[(h.left+h.right)/2,(h.top+h.bottom)/2],M=[(d.left+d.right)/2,(d.top+d.bottom)/2],A,p,S=.75*i.delta.font.size;i.delta.position==="left"&&(A=A4(i,"deltaPos",0,-1*(h.width*mm[i.align]+d.width*(1-mm[i.align])+S),w,Math.min),p=x[1]-M[1],v={width:h.width+d.width+S,height:Math.max(h.height,d.height),left:d.left+A,right:h.right,top:Math.min(h.top,d.top+p),bottom:Math.max(h.bottom,d.bottom+p)}),i.delta.position==="right"&&(A=A4(i,"deltaPos",0,h.width*(1-mm[i.align])+d.width*mm[i.align]+S,w,Math.max),p=x[1]-M[1],v={width:h.width+d.width+S,height:Math.max(h.height,d.height),left:h.left,right:d.right+A,top:Math.min(h.top,d.top+p),bottom:Math.max(h.bottom,d.bottom+p)}),i.delta.position==="bottom"&&(A=null,p=d.height,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(A=null,p=h.top,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),k.attr({dx:A,dy:p})}(i._hasNumber||i._hasDelta)&&c.attr("transform",function(){var y=n.numbersScaler(v);w+=y[2];var E=A4(i,"numbersScale",1,y[0],w,Math.min),C;i._scaleNumbers||(E=1),i._isAngular?C=o-E*v.bottom:C=o-E*(v.top+v.bottom)/2,i._numbersTop=E*v.top+C;var L=v[s];s==="center"&&(L=(v.left+v.right)/2);var R=a-E*L;return R=A4(i,"numbersTranslate",0,R,w,Math.max),Q_(R,C)+iTt(E)})}function ym(e){e.each(function(t){Ux.stroke(bm.select(this),t.line.color)}).each(function(t){Ux.fill(bm.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function vTt(e,t,r){return function(){var n=nTt(t,r);return function(i){return e.endAngle(n(i))()}}}function K_(e,t,r){var n=e._fullLayout,i=ap.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(l,u){return ap.coerce(i,a,uTt,l,u)}return sTt(i,a,s,o,n),lTt(i,a,s,o),a}function MMe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function dTt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function kMe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=bm.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(M4.convertToTspans,n).call(xm.font,t),xm.bBox(a.node())}function A4(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=ap.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var LMe=J((sHt,EMe)=>{"use strict";EMe.exports={moduleType:"trace",name:"indicator",basePlotModule:fMe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:AF(),supplyDefaults:bMe().supplyDefaults,calc:_Me().calc,plot:CMe(),meta:{description:["An indicator is used to visualize a single `value` along with some","contextual information such as `steps` or a `threshold`, using a","combination of three visual elements: a number, a delta, and/or a gauge.","Deltas are taken with respect to a `reference`.","Gauges can be either angular or bullet (aka linear) gauges."].join(" ")}}});var RMe=J((lHt,DMe)=>{"use strict";DMe.exports=LMe()});var SF=J((uHt,FMe)=>{"use strict";var PMe=dg(),k4=cn().extendFlat,pTt=La().overrideAll,IMe=xa(),gTt=Wa().attributes,qMe=Ga().descriptionOnlyNumbers,mTt=FMe.exports=pTt({domain:gTt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null,description:["The width of columns expressed as a ratio. Columns fill the available width","in proportion of their specified column widths."].join(" ")},columnorder:{valType:"data_array",description:["Specifies the rendered order of the data columns; for example, a value `2` at position `0`","means that column index `0` in the data will be rendered as the","third column, as columns have an index base of zero."].join(" ")},header:{values:{valType:"data_array",dflt:[],description:["Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`,","therefore the `values[m]` vector length for all columns must be the same (longer vectors","will be truncated). Each value must be a finite number or a string."].join(" ")},format:{valType:"data_array",dflt:[],description:qMe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null,description:"Prefix for cell values."},suffix:{valType:"string",arrayOk:!0,dflt:null,description:"Suffix for cell values."},height:{valType:"number",dflt:28,description:"The height of cells."},align:k4({},PMe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white",description:["Sets the cell fill color. It accepts either a specific color","or an array of colors or a 2D array of colors."].join(" ")}},font:k4({},IMe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[],description:["Cell values. `values[m][n]` represents the value of the `n`th point in column `m`,","therefore the `values[m]` vector length for all columns must be the same (longer vectors","will be truncated). Each value must be a finite number or a string."].join(" ")},format:{valType:"data_array",dflt:[],description:qMe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null,description:"Prefix for cell values."},suffix:{valType:"string",arrayOk:!0,dflt:null,description:"Suffix for cell values."},height:{valType:"number",dflt:20,description:"The height of cells."},align:k4({},PMe.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white",description:["Sets the cell fill color. It accepts either a specific color","or an array of colors or a 2D array of colors."].join(" ")}},font:k4({},IMe({arrayOk:!0}))}},"calc","from-root");mTt.transforms=void 0});var NMe=J((fHt,zMe)=>{"use strict";var CF=gt(),yTt=SF(),xTt=Wa().defaults;function bTt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(l,u){return l-u}),o=i.map(function(l){return a.indexOf(l)}),s=o.length;s{"use strict";var wTt=Px().wrap;OMe.exports=function(){return wTt({})}});var EF=J((hHt,UMe)=>{"use strict";UMe.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"
",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}});var JMe=J((vHt,ZMe)=>{"use strict";var HMe=EF(),DF=cn().extendFlat,_Tt=dn(),TTt=fl().isTypedArray,S4=fl().isArrayOrTypedArray;ZMe.exports=function(t,r){var n=LF(r.cells.values),i=function(p){return p.slice(r.header.values.length,p.length)},a=LF(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=LF(a));var o=a.concat(i(n).map(function(){return XMe((a[0]||[""]).length)})),s=r.domain,l=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),u=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),f=r.header.values.length?o[0].map(function(){return r.header.height}):[HMe.emptyHeaderHeight],c=n.length?n[0].map(function(){return r.cells.height}):[],h=f.reduce(jMe,0),d=u-h,v=d+HMe.uplift,m=GMe(c,v),b=GMe(f,h),g=YMe(b,[]),_=YMe(m,g),T={},w=r._fullInput.columnorder;S4(w)&&(w=Array.from(w)),w=w.concat(i(n.map(function(p,S){return S})));var k=o.map(function(p,S){var y=S4(r.columnwidth)?r.columnwidth[Math.min(S,r.columnwidth.length-1)]:r.columnwidth;return _Tt(y)?Number(y):1}),x=k.reduce(jMe,0);k=k.map(function(p){return p/x*l});var M=Math.max(RF(r.header.line.width),RF(r.cells.line.width)),A={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:l,maxLineWidth:M,height:u,columnOrder:w,groupHeight:u,rowBlocks:_,headerRowBlocks:g,scrollY:0,cells:DF({},r.cells,{values:n}),headerCells:DF({},r.header,{values:o}),gdColumns:o.map(function(p){return p[0]}),gdColumnsOriginalOrder:o.map(function(p){return p[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(p,S){var y=T[p];T[p]=(y||0)+1;var E=p+"__"+T[p];return{key:E,label:p,specIndex:S,xIndex:w[S],xScale:VMe,x:void 0,calcdata:void 0,columnWidth:k[S]}})};return A.columns.forEach(function(p){p.calcdata=A,p.x=VMe(p)}),A};function RF(e){if(S4(e)){for(var t=0,r=0;r=t||u===e.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o=WMe(),i+=a,s=u+1,a=0);return r}function WMe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var $Me=J(PF=>{"use strict";var C4=cn().extendFlat;PF.splitToPanels=function(e){var t=[0,0],r=C4({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:C4({},e.calcdata,{cells:e.calcdata.headerCells})}),n=C4({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=C4({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};PF.splitToCells=function(e){var t=ATt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function ATt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var jF=J((pHt,lke)=>{"use strict";var Or=EF(),Ta=Nr(),IF=gt(),MTt=IF.numberFormat,Wi=Px(),qF=ln(),kTt=ca(),STt=gt().raiseToTop,kc=gt().strTranslate,CTt=gt().cancelTransition,ETt=JMe(),ike=$Me(),KMe=qr();lke.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Or.cn.table).data(r.map(function(_){var T=Wi.unwrap(_),w=T.trace;return ETt(t,w)}),Wi.keyFun);i.exit().remove(),i.enter().append("g").classed(Or.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(_){return _.width+_.size.l+_.size.r}).attr("height",function(_){return _.height+_.size.t+_.size.b}).attr("transform",function(_){return kc(_.translateX,_.translateY)});var a=i.selectAll("."+Or.cn.tableControlView).data(Wi.repeat,Wi.keyFun),o=a.enter().append("g").classed(Or.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(_){a.filter(function(T){return _===T}).call(t3,t)}).on(s,function(_){if(!_.scrollbarState.wheeling){_.scrollbarState.wheeling=!0;var T=_.scrollY+Ta.event.deltaY,w=L4(t,a,null,T)(_);w||(Ta.event.stopPropagation(),Ta.event.preventDefault()),_.scrollbarState.wheeling=!1}}).call(t3,t,!0)}a.attr("transform",function(_){return kc(_.size.l,_.size.t)});var l=a.selectAll("."+Or.cn.scrollBackground).data(Wi.repeat,Wi.keyFun);l.enter().append("rect").classed(Or.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(_){return _.width}).attr("height",function(_){return _.height}),a.each(function(_){qF.setClipUrl(Ta.select(this),QMe(t,_),t)});var u=a.selectAll("."+Or.cn.yColumn).data(function(_){return _.columns},Wi.keyFun);u.enter().append("g").classed(Or.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(_){return kc(_.x,0)}),n&&u.call(Ta.behavior.drag().origin(function(_){var T=Ta.select(this);return rke(T,_,-Or.uplift),STt(this),_.calcdata.columnDragInProgress=!0,t3(a.filter(function(w){return _.calcdata.key===w.key}),t),_}).on("drag",function(_){var T=Ta.select(this),w=function(M){return(_===M?Ta.event.x:M.x)+M.columnWidth/2};_.x=Math.max(-Or.overdrag,Math.min(_.calcdata.width+Or.overdrag-_.columnWidth,Ta.event.x));var k=ake(u).filter(function(M){return M.calcdata.key===_.calcdata.key}),x=k.sort(function(M,A){return w(M)-w(A)});x.forEach(function(M,A){M.xIndex=A,M.x=_===M?M.x:M.xScale(M)}),u.filter(function(M){return _!==M}).transition().ease(Or.transitionEase).duration(Or.transitionDuration).attr("transform",function(M){return kc(M.x,0)}),T.call(CTt).attr("transform",kc(_.x,-Or.uplift))}).on("dragend",function(_){var T=Ta.select(this),w=_.calcdata;_.x=_.xScale(_),_.calcdata.columnDragInProgress=!1,rke(T,_,0),OTt(t,w,w.columns.map(function(k){return k.xIndex}))})),u.each(function(_){qF.setClipUrl(Ta.select(this),eke(t,_),t)});var f=u.selectAll("."+Or.cn.columnBlock).data(ike.splitToPanels,Wi.keyFun);f.enter().append("g").classed(Or.cn.columnBlock,!0).attr("id",function(_){return _.key}),f.style("cursor",function(_){return _.dragHandle?"ew-resize":_.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var c=f.filter(BTt),h=f.filter(BF);n&&h.call(Ta.behavior.drag().origin(function(_){return Ta.event.stopPropagation(),_}).on("drag",L4(t,a,-1)).on("dragend",function(){})),FF(t,a,c,f),FF(t,a,h,f);var d=a.selectAll("."+Or.cn.scrollAreaClip).data(Wi.repeat,Wi.keyFun);d.enter().append("clipPath").classed(Or.cn.scrollAreaClip,!0).attr("id",function(_){return QMe(t,_)});var v=d.selectAll("."+Or.cn.scrollAreaClipRect).data(Wi.repeat,Wi.keyFun);v.enter().append("rect").classed(Or.cn.scrollAreaClipRect,!0).attr("x",-Or.overdrag).attr("y",-Or.uplift).attr("fill","none"),v.attr("width",function(_){return _.width+2*Or.overdrag}).attr("height",function(_){return _.height+Or.uplift});var m=u.selectAll("."+Or.cn.columnBoundary).data(Wi.repeat,Wi.keyFun);m.enter().append("g").classed(Or.cn.columnBoundary,!0);var b=u.selectAll("."+Or.cn.columnBoundaryClippath).data(Wi.repeat,Wi.keyFun);b.enter().append("clipPath").classed(Or.cn.columnBoundaryClippath,!0),b.attr("id",function(_){return eke(t,_)});var g=b.selectAll("."+Or.cn.columnBoundaryRect).data(Wi.repeat,Wi.keyFun);g.enter().append("rect").classed(Or.cn.columnBoundaryRect,!0).attr("fill","none"),g.attr("width",function(_){return _.columnWidth+2*E4(_)}).attr("height",function(_){return _.calcdata.height+2*E4(_)+Or.uplift}).attr("x",function(_){return-E4(_)}).attr("y",function(_){return-E4(_)}),UF(null,h,a)};function E4(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function QMe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function eke(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function ake(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function t3(e,t,r){function n(u){var f=u.rowBlocks;return NF(f,f.length-1)+(f.length?D4(f[f.length-1],1/0):1)}var i=e.selectAll("."+Or.cn.scrollbarKit).data(Wi.repeat,Wi.keyFun);i.enter().append("g").classed(Or.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var f=u.scrollbarState;f.totalHeight=n(u),f.scrollableAreaHeight=u.groupHeight-zF(u),f.currentlyVisibleHeight=Math.min(f.totalHeight,f.scrollableAreaHeight),f.ratio=f.currentlyVisibleHeight/f.totalHeight,f.barLength=Math.max(f.ratio*f.currentlyVisibleHeight,Or.goldenRatio*Or.scrollbarWidth),f.barWiggleRoom=f.currentlyVisibleHeight-f.barLength,f.wiggleRoom=Math.max(0,f.totalHeight-f.scrollableAreaHeight),f.topY=f.barWiggleRoom===0?0:u.scrollY/f.wiggleRoom*f.barWiggleRoom,f.bottomY=f.topY+f.barLength,f.dragMultiplier=f.wiggleRoom/f.barWiggleRoom}).attr("transform",function(u){var f=u.width+Or.scrollbarWidth/2+Or.scrollbarOffset;return kc(f,zF(u))});var a=i.selectAll("."+Or.cn.scrollbar).data(Wi.repeat,Wi.keyFun);a.enter().append("g").classed(Or.cn.scrollbar,!0);var o=a.selectAll("."+Or.cn.scrollbarSlider).data(Wi.repeat,Wi.keyFun);o.enter().append("g").classed(Or.cn.scrollbarSlider,!0),o.attr("transform",function(u){return kc(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Or.cn.scrollbarGlyph).data(Wi.repeat,Wi.keyFun);s.enter().append("line").classed(Or.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Or.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Or.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Or.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Or.scrollbarHideDelay).duration(Or.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Or.cn.scrollbarCaptureZone).data(Wi.repeat,Wi.keyFun);l.enter().append("line").classed(Or.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Or.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var f=Ta.event.y,c=this.getBoundingClientRect(),h=u.scrollbarState,d=f-c.top,v=Ta.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||L4(t,e,null,v(d-h.barLength/2))(u)}).call(Ta.behavior.drag().origin(function(u){return Ta.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",L4(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function FF(e,t,r,n){var i=LTt(r),a=DTt(i);qTt(a);var o=RTt(a);zTt(o);var s=ITt(a),l=PTt(s);FTt(l),oke(l,t,n,e),HF(a)}function LTt(e){var t=e.selectAll("."+Or.cn.columnCells).data(Wi.repeat,Wi.keyFun);return t.enter().append("g").classed(Or.cn.columnCells,!0),t.exit().remove(),t}function DTt(e){var t=e.selectAll("."+Or.cn.columnCell).data(ike.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Or.cn.columnCell,!0),t.exit().remove(),t}function RTt(e){var t=e.selectAll("."+Or.cn.cellRect).data(Wi.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Or.cn.cellRect,!0),t}function PTt(e){var t=e.selectAll("."+Or.cn.cellText).data(Wi.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Or.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){Ta.event.stopPropagation()}),t}function ITt(e){var t=e.selectAll("."+Or.cn.cellTextHolder).data(Wi.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Or.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function qTt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Gl(n.size,i,r),color:Gl(n.color,i,r),family:Gl(n.family,i,r),weight:Gl(n.weight,i,r),style:Gl(n.style,i,r),variant:Gl(n.variant,i,r),textcase:Gl(n.textcase,i,r),lineposition:Gl(n.lineposition,i,r),shadow:Gl(n.shadow,i,r)};t.rowNumber=t.key,t.align=Gl(t.calcdata.cells.align,i,r),t.cellBorderWidth=Gl(t.calcdata.cells.line.width,i,r),t.font=a})}function FTt(e){e.each(function(t){qF.font(Ta.select(this),t.font)})}function zTt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=Ta.select(this);KMe.stroke(r,Gl(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),KMe.fill(r,Gl(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function oke(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,l=typeof s=="string",u=l&&s.match(/
/i),f=!l||u;i.mayHaveMarkup=l&&s.match(/[<&>]/);var c=NTt(s);i.latex=c;var h=c?"":Gl(i.calcdata.cells.prefix,a,o)||"",d=c?"":Gl(i.calcdata.cells.suffix,a,o)||"",v=c?null:Gl(i.calcdata.cells.format,a,o)||null,m=h+(v?MTt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!f&&!c&&(b=tke(m)),i.cellHeightMayIncrease=u||c||i.mayHaveMarkup||(b===void 0?tke(m):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var g;if(i.wrappingNeeded){var _=Or.wrapSplitCharacter===" "?m.replace(/i&&n.push(a),i+=l}return n}function UF(e,t,r){var n=ake(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=NF(i,i.length),s=n.calcdata.groupHeight-zF(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=UTt(i,l,s);u.length===1&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each(function(f,c){f.page=u[c],f.scrollY=l}),t.attr("transform",function(f){var c=NF(f.rowBlocks,f.page)-f.scrollY;return kc(0,c)}),e&&(nke(e,r,t,u,n.prevPages,n,0),nke(e,r,t,u,n.prevPages,n,1),t3(r,e))}}function L4(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(c){return o.key===c.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*Ta.event.dy:n;var f=s.selectAll("."+Or.cn.yColumn).selectAll("."+Or.cn.columnBlock).filter(BF);return UF(e,f,s),o.scrollY===u}}function nke(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var l=r.filter(function(u,f){return f===o&&n[f]!==i[f]});FF(e,t,l,r),i[o]=n[o]}))}function HTt(e,t,r,n){return function(){var a=Ta.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(m,b){s[b].width=this.getComputedTextLength()});var l=s[s.length-1].width,u=s.slice(0,-1),f=[],c,h,d=0,v=o.column.columnWidth-2*Or.cellPad;for(o.value="";u.length;)c=u.shift(),h=c.width+l,d+h>v&&(o.value+=f.join(Or.wrapSpacer)+Or.lineBreaker,f=[],d=0),f.push(c.text),d+=h;d&&(o.value+=f.join(Or.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),oke(a.select("."+Or.cn.cellText),r,e,n),Ta.select(t.parentNode.parentNode).call(HF)}}function jTt(e,t,r,n,i){return function(){if(!i.settledY){var o=Ta.select(t.parentNode),s=OF(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,f=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Or.cellPad:u,c=Math.max(f,u),h=c-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=c,e.selectAll("."+Or.cn.columnCell).call(HF),UF(null,e.filter(BF),0),t3(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,m=v.getBoundingClientRect(),b=Ta.select(d.parentNode).select("."+Or.cn.cellRect).node().getBoundingClientRect(),g=d.transform.baseVal.consolidate(),_=b.top-m.top+(g?g.matrix.f:Or.cellPad);return kc(ske(i,Ta.select(d.parentNode).select("."+Or.cn.cellTextHolder).node().getBoundingClientRect().width),_)}),i.settledY=!0}}}function ske(e,t){switch(e.align){case"left":return Or.cellPad;case"right":return e.column.columnWidth-(t||0)-Or.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Or.cellPad}}function HF(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+D4(s,1/0)},0),n=OF(t),i=D4(n,t.key),a=i+r;return kc(0,a)}).selectAll("."+Or.cn.cellRect).attr("height",function(t){return YTt(OF(t),t.key).rowHeight})}function NF(e,t){for(var r=0,n=t-1;n>=0;n--)r+=VTt(e[n]);return r}function D4(e,t){for(var r=0,n=0;n{"use strict";var GTt=Nu().getModuleCalcData,WTt=jF(),R4="table";P4.name=R4;P4.plot=function(e){var t=GTt(e.calcdata,R4)[0];t.length&&WTt(e,t)};P4.clean=function(e,t,r,n){var i=n._has&&n._has(R4),a=t._has&&t._has(R4);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var cke=J((mHt,fke)=>{"use strict";fke.exports={attributes:SF(),supplyDefaults:NMe(),calc:BMe(),plot:jF(),moduleType:"trace",name:"table",basePlotModule:uke(),categories:["noOpacity"],meta:{description:["Table view for detailed data viewing.","The data are arranged in a grid of rows and columns.","Most styling can be specified for columns, rows or individual cells.","Table is using a column-major order, ie. the grid is represented as a vector of column vectors."].join(" ")}}});var vke=J((yHt,hke)=>{"use strict";hke.exports=cke()});var mke=J((xHt,gke)=>{"use strict";var VF=xa(),dke=Ho(),YF=hl(),XTt=Ga().descriptionWithDates,ZTt=La().overrideAll,pke=Ss().dash,GF=cn().extendFlat;gke.exports={color:{valType:"color",editType:"calc",description:["Sets default for all colors associated with this axis","all at once: line, font, tick, and grid colors.","Grid color is lightened by blending this with the plot background","Individual pieces can override this."].join(" ")},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc",description:["Sets the title of this axis.","Note that before the existence of `title.text`, the title's","contents used to be defined as the `title` attribute itself.","This behavior has been deprecated."].join(" ")},font:VF({editType:"calc",description:["Sets this axis' title font.","Note that the title's font used to be set","by the now deprecated `titlefont` attribute."].join(" ")}),offset:{valType:"number",dflt:10,editType:"calc",description:["An additional amount by which to offset the title from the tick","labels, given in pixels.","Note that this used to be set","by the now deprecated `titleoffset` attribute."].join(" ")},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc",description:["Sets the axis type.","By default, plotly attempts to determined the axis type","by looking into the data of the traces that referenced","the axis in question."].join(" ")},autotypenumbers:YF.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc",description:["Determines whether or not the range of this axis is","computed in relation to the input data.","See `rangemode` for more info.","If `range` is provided, then `autorange` is set to *false*."].join(" ")},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc",description:["If *normal*, the range is computed in relation to the extrema","of the input data.","If *tozero*`, the range extends to 0,","regardless of the input data","If *nonnegative*, the range is non-negative,","regardless of the input data."].join(" ")},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],description:["Sets the range of this axis.","If the axis `type` is *log*, then you must take the log of your","desired range (e.g. to set the range from 1 to 100,","set the range from 0 to 2).","If the axis `type` is *date*, it should be date strings,","like date data, though Date objects and unix milliseconds","will be accepted and converted to strings.","If the axis `type` is *category*, it should be numbers,","using the scale where each category is assigned a serial","number from zero in the order it appears."].join(" ")},fixedrange:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not this axis is zoom-able.","If true, then zoom is disabled."].join(" ")},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc",description:["Specifies the maximum number of ticks for the particular axis.","The actual number of ticks will be chosen automatically to be","less than or equal to `nticks`.","Has an effect only if `tickmode` is set to *auto*."].join(" ")},tickvals:{valType:"data_array",editType:"calc",description:["Sets the values at which ticks on this axis appear.","Only has an effect if `tickmode` is set to *array*.","Used with `ticktext`."].join(" ")},ticktext:{valType:"data_array",editType:"calc",description:["Sets the text displayed at the ticks position via `tickvals`.","Only has an effect if `tickmode` is set to *array*.","Used with `tickvals`."].join(" ")},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc",description:["Determines whether axis labels are drawn on the low side,","the high side, both, or neither side of the axis."].join(" ")},labelalias:GF({},YF.labelalias,{editType:"calc"}),tickfont:VF({editType:"calc",description:"Sets the tick font."}),tickangle:{valType:"angle",dflt:"auto",editType:"calc",description:["Sets the angle of the tick labels with respect to the horizontal.","For example, a `tickangle` of -90 draws the tick labels","vertically."].join(" ")},tickprefix:{valType:"string",dflt:"",editType:"calc",description:"Sets a tick label prefix."},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc",description:["If *all*, all tick labels are displayed with a prefix.","If *first*, only the first tick is displayed with a prefix.","If *last*, only the last tick is displayed with a suffix.","If *none*, tick prefixes are hidden."].join(" ")},ticksuffix:{valType:"string",dflt:"",editType:"calc",description:"Sets a tick label suffix."},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc",description:"Same as `showtickprefix` but for tick suffixes."},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc",description:["If *all*, all exponents are shown besides their significands.","If *first*, only the exponent of the first tick is shown.","If *last*, only the exponent of the last tick is shown.","If *none*, no exponents appear."].join(" ")},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"calc",description:["Determines a formatting rule for the tick exponents.","For example, consider the number 1,000,000,000.","If *none*, it appears as 1,000,000,000.","If *e*, 1e+9.","If *E*, 1E+9.","If *power*, 1x10^9 (with 9 in a super script).","If *SI*, 1G.","If *B*, 1B."].join(" ")},minexponent:{valType:"number",dflt:3,min:0,editType:"calc",description:["Hide SI prefix for 10^n if |n| is below this number"].join(" ")},separatethousands:{valType:"boolean",dflt:!1,editType:"calc",description:['If "true", even 4-digit integers are separated'].join(" ")},tickformat:{valType:"string",dflt:"",editType:"calc",description:XTt("tick label")},tickformatstops:ZTt(YF.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc",description:["Specifies the ordering logic for the case of categorical variables.","By default, plotly uses *trace*, which specifies the order that is present in the data supplied.","Set `categoryorder` to *category ascending* or *category descending* if order should be determined by","the alphanumerical order of the category names.","Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category","is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to","the *trace* mode. The unspecified categories will follow the categories in `categoryarray`."].join(" ")},categoryarray:{valType:"data_array",editType:"calc",description:["Sets the order in which categories on this axis appear.","Only has an effect if `categoryorder` is set to *array*.","Used with `categoryorder`."].join(" ")},labelpadding:{valType:"integer",dflt:10,editType:"calc",description:"Extra padding between label and the axis"},labelprefix:{valType:"string",editType:"calc",description:"Sets a axis label prefix."},labelsuffix:{valType:"string",dflt:"",editType:"calc",description:"Sets a axis label suffix."},showline:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not a line bounding this axis is drawn."].join(" ")},linecolor:{valType:"color",dflt:dke.defaultLine,editType:"calc",description:"Sets the axis line color."},linewidth:{valType:"number",min:0,dflt:1,editType:"calc",description:"Sets the width (in px) of the axis line."},gridcolor:{valType:"color",editType:"calc",description:"Sets the axis line color."},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc",description:"Sets the width (in px) of the axis line."},griddash:GF({},pke,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether or not grid lines are drawn.","If *true*, the grid lines are drawn at every tick mark."].join(" ")},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc",description:"Sets the number of minor grid ticks per major grid tick"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc",description:"Sets the width (in px) of the grid lines."},minorgriddash:GF({},pke,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:dke.lightLine,editType:"calc",description:"Sets the color of the grid lines."},startline:{valType:"boolean",editType:"calc",description:["Determines whether or not a line is drawn at along the starting value","of this axis.","If *true*, the start line is drawn on top of the grid lines."].join(" ")},startlinecolor:{valType:"color",editType:"calc",description:"Sets the line color of the start line."},startlinewidth:{valType:"number",dflt:1,editType:"calc",description:"Sets the width (in px) of the start line."},endline:{valType:"boolean",editType:"calc",description:["Determines whether or not a line is drawn at along the final value","of this axis.","If *true*, the end line is drawn on top of the grid lines."].join(" ")},endlinewidth:{valType:"number",dflt:1,editType:"calc",description:"Sets the width (in px) of the end line."},endlinecolor:{valType:"color",editType:"calc",description:"Sets the line color of the end line."},tick0:{valType:"number",min:0,dflt:0,editType:"calc",description:"The starting index of grid lines along the axis"},dtick:{valType:"number",min:0,dflt:1,editType:"calc",description:"The stride between grid lines along the axis"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc",description:"The starting index of grid lines along the axis"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc",description:"The stride between grid lines along the axis"},_deprecated:{title:{valType:"string",editType:"calc",description:["Deprecated in favor of `title.text`.","Note that value of `title` is no longer a simple","*string* but a set of sub-attributes."].join(" ")},titlefont:VF({editType:"calc",description:"Deprecated in favor of `title.font`."}),titleoffset:{valType:"number",dflt:10,editType:"calc",description:"Deprecated in favor of `title.offset`."}},editType:"calc"}});var q4=J((bHt,bke)=>{"use strict";var JTt=xa(),yke=mke(),xke=Ho(),I4=JTt({editType:"calc",description:"The default font used for axis & tick labels on this carpet"}),$Tt=ds().zorder;I4.family.dflt='"Open Sans", verdana, arial, sans-serif';I4.size.dflt=12;I4.color.dflt=xke.defaultLine;bke.exports={carpet:{valType:"string",editType:"calc",description:["An identifier for this carpet, so that `scattercarpet` and","`contourcarpet` traces can specify a carpet plot on which","they lie"].join(" ")},x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["A two dimensional array of x coordinates at each carpet point.","If omitted, the plot is a cheater plot and the xaxis is hidden","by default."].join(" ")},y:{valType:"data_array",editType:"calc+clearAxisTypes",description:"A two dimensional array of y coordinates at each carpet point."},a:{valType:"data_array",editType:"calc",description:["An array containing values of the first parameter value"].join(" ")},a0:{valType:"number",dflt:0,editType:"calc",description:["Alternate to `a`.","Builds a linear space of a coordinates.","Use with `da`","where `a0` is the starting coordinate and `da` the step."].join(" ")},da:{valType:"number",dflt:1,editType:"calc",description:["Sets the a coordinate step.","See `a0` for more info."].join(" ")},b:{valType:"data_array",editType:"calc",description:"A two dimensional array of y coordinates at each carpet point."},b0:{valType:"number",dflt:0,editType:"calc",description:["Alternate to `b`.","Builds a linear space of a coordinates.","Use with `db`","where `b0` is the starting coordinate and `db` the step."].join(" ")},db:{valType:"number",dflt:1,editType:"calc",description:["Sets the b coordinate step.","See `b0` for more info."].join(" ")},cheaterslope:{valType:"number",dflt:1,editType:"calc",description:["The shift applied to each successive row of data in creating a cheater plot.","Only used if `x` is been omitted."].join(" ")},aaxis:yke,baxis:yke,font:I4,color:{valType:"color",dflt:xke.defaultLine,editType:"plot",description:["Sets default for all colors associated with this axis","all at once: line, font, tick, and grid colors.","Grid color is lightened by blending this with the plot background","Individual pieces can override this."].join(" ")},transforms:void 0,zorder:$Tt}});var Tke=J((wHt,_ke)=>{"use strict";var wke=gt().isArray1D;_ke.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||wke(i))&&(!s||wke(o))){var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),r.a&&r.a.length&&(l=Math.min(l,r.a.length)),r.b&&r.b.length&&(l=Math.min(l,r.b.length)),r._length=l}else r._length=null;return!0}});var kke=J((_Ht,Mke)=>{"use strict";var KTt=q4(),Ake=qr().addOpacity,QTt=zr(),r3=gt(),eAt=Wp(),tAt=Xp(),rAt=Zp(),nAt=ik(),iAt=Zv(),aAt=V1();Mke.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=KTt[i+"axis"];function s(p,S){return r3.coerce(t,r,o,p,S)}function l(p,S){return r3.coerce2(t,r,o,p,S)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var u=s("type");if(u==="-"&&(n.data&&oAt(r,n.data),r.type==="-"?r.type="linear":u=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,u==="date"){var f=QTt.getComponentMethod("calendars","handleDefaults");f(t,r,"calendar",n.calendar)}iAt(r,n.fullLayout),r.c2p=r3.identity;var c=s("color",n.dfltColor),h=c===t.color?c:a.color,d=s("title.text");d&&(r3.coerceFont(s,"title.font",a,{overrideDflt:{size:r3.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var v=s("autorange",!r.isValidRange(t.range));v&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),eAt(t,r,s,u),rAt(t,r,s,u,n),tAt(t,r,s,u,n),nAt(t,r,s,{data:n.data,dataAttr:i});var m=l("gridcolor",Ake(c,.3)),b=l("gridwidth"),g=l("griddash"),_=s("showgrid");_||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var T=l("startlinecolor",c),w=l("startlinewidth",b),k=s("startline",r.showgrid||!!T||!!w);k||(delete r.startlinecolor,delete r.startlinewidth);var x=l("endlinecolor",c),M=l("endlinewidth",b),A=s("endline",r.showgrid||!!x||!!M);return A||(delete r.endlinecolor,delete r.endlinewidth),_?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",g),s("minorgridcolor",Ake(m,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function oAt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=aAt(t,a,{autotypenumbers:e.autotypenumbers})}}});var Cke=J((THt,Ske)=>{"use strict";var sAt=kke(),lAt=ki();Ske.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),uAt(t,r,n,a)};function uAt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=lAt.newContainer(t,a),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};sAt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var Dke=J((AHt,Lke)=>{"use strict";var Eke=gt(),fAt=Tke(),cAt=Cke(),hAt=q4(),vAt=Ho();Lke.exports=function(t,r,n,i){function a(l,u){return Eke.coerce(t,r,hAt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",vAt.defaultLine);if(Eke.coerceFont(a,"font",i.font),a("carpet"),cAt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=fAt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var WF=J((MHt,Rke)=>{"use strict";var dAt=gt().isArrayOrTypedArray;Rke.exports=function(t,r,n){var i;for(dAt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i{"use strict";Pke.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i{"use strict";Ike.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),l=a[1]*t.dpdy(n),u=1,f=1;if(o){var c=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/c/h;f=Math.max(0,d)}var v=Math.atan2(l,s)*180/Math.PI;return v<-90?(v+=180,u=-u):v>90&&(v-=180,u=-u),{angle:v,flip:u,p:t.c2p(i,r,n),offsetMultplier:f}}});var jke=J((CHt,Hke)=>{"use strict";var O4=Nr(),F4=ln(),z4=WF(),Nke=XF(),n3=qke(),ZF=ca(),Ju=gt(),Oke=Ju.strRotate,N4=Ju.strTranslate,Bke=Vo();Hke.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Ju.makeTraceGroups(i,n,"trace").each(function(f){var c=O4.select(this),h=f[0],d=h.trace,v=d.aaxis,m=d.baxis,b=Ju.ensureSingle(c,"g","minorlayer"),g=Ju.ensureSingle(c,"g","majorlayer"),_=Ju.ensureSingle(c,"g","boundarylayer"),T=Ju.ensureSingle(c,"g","labellayer");c.style("opacity",d.opacity),Hx(o,s,g,v,"a",v._gridlines,!0,a),Hx(o,s,g,m,"b",m._gridlines,!0,a),Hx(o,s,b,v,"a",v._minorgridlines,!0,a),Hx(o,s,b,m,"b",m._minorgridlines,!0,a),Hx(o,s,_,v,"a-boundary",v._boundarylines,a),Hx(o,s,_,m,"b-boundary",m._boundarylines,a);var w=Fke(t,o,s,d,h,T,v._labels,"a-label"),k=Fke(t,o,s,d,h,T,m._labels,"b-label");gAt(t,T,d,h,o,s,w,k),pAt(d,h,u,o,s)})};function pAt(e,t,r,n,i){var a,o,s,l,u=r.select("#"+e._clipPathId);u.size()||(u=r.append("clipPath").classed("carpetclip",!0));var f=Ju.ensureSingle(u,"path","carpetboundary"),c=t.clipsegments,h=[];for(l=0;l0?"start":"end","data-notex":1}).call(F4.font,c.font).text(c.text).call(ZF.convertToTspans,e),g=F4.bBox(this);b.attr("transform",N4(d.p[0],d.p[1])+Oke(d.angle)+N4(c.axis.labelpadding*m,g.height*.3)),u=Math.max(u,g.width+c.axis.labelpadding)}),l.exit().remove(),f.maxExtent=u,f}function gAt(e,t,r,n,i,a,o,s){var l,u,f,c,h=Ju.aggNums(Math.min,null,r.a),d=Ju.aggNums(Math.max,null,r.a),v=Ju.aggNums(Math.min,null,r.b),m=Ju.aggNums(Math.max,null,r.b);l=.5*(h+d),u=v,f=r.ab2xy(l,u,!0),c=r.dxyda_rough(l,u),o.angle===void 0&&Ju.extendFlat(o,n3(r,i,a,f,r.dxydb_rough(l,u))),zke(e,t,r,n,f,c,r.aaxis,i,a,o,"a-title"),l=h,u=.5*(v+m),f=r.ab2xy(l,u,!0),c=r.dxydb_rough(l,u),s.angle===void 0&&Ju.extendFlat(s,n3(r,i,a,f,r.dxyda_rough(l,u))),zke(e,t,r,n,f,c,r.baxis,i,a,s,"b-title")}var Uke=Bke.LINE_SPACING,mAt=(1-Bke.MID_SHIFT)/Uke+1;function zke(e,t,r,n,i,a,o,s,l,u,f){var c=[];o.title.text&&c.push(o.title.text);var h=t.selectAll("text."+f).data(c),d=u.maxExtent;h.enter().append("text").classed(f,!0),h.each(function(){var v=n3(r,s,l,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var m=o.title.font.size;d+=m+o.title.offset;var b=u.angle+(u.flip<0?180:0),g=(b-v.angle+450)%360,_=g>90&&g<270,T=O4.select(this);T.text(o.title.text).call(ZF.convertToTspans,e),_&&(d=(-ZF.lineCount(T)+mAt)*Uke*m-d),T.attr("transform",N4(v.p[0],v.p[1])+Oke(v.angle)+N4(0,d)).attr("text-anchor","middle").call(F4.font,o.title.font)}),h.exit().remove()}});var Yke=J((EHt,Vke)=>{"use strict";var B4=gt().isArrayOrTypedArray;Vke.exports=function(e,t,r){var n,i,a,o,s,l,u=[],f=B4(e)?e.length:e,c=B4(t)?t.length:t,h=B4(e)?e:null,d=B4(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(f-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(c-1));var v,m=1/0,b=-1/0;for(i=0;i{"use strict";var Gke=gt().isArrayOrTypedArray;Xke.exports=function(e){return Wke(e,0)};function Wke(e,t){if(!Gke(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a{"use strict";var yAt=nn(),op=cn().extendFlat;Jke.exports=function(t,r,n){var i,a,o,s,l,u,f,c,h,d,v,m,b,g,_=t["_"+r],T=t[r+"axis"],w=T._gridlines=[],k=T._minorgridlines=[],x=T._boundarylines=[],M=t["_"+n],A=t[n+"axis"];T.tickmode==="array"&&(T.tickvals=_.slice());var p=t._xctrl,S=t._yctrl,y=p[0].length,E=p.length,C=t._a.length,L=t._b.length;yAt.prepTicks(T),T.tickmode==="array"&&delete T.tickvals;var R=T.smoothing?3:1;function I(D){var q,N,U,G,ee,Q,j,O,Z,K,$,oe,te=[],V=[],ne={};if(r==="b")for(N=t.b2j(D),U=Math.floor(Math.max(0,Math.min(L-2,N))),G=N-U,ne.length=L,ne.crossLength=C,ne.xy=function(W){return t.evalxy([],W,N)},ne.dxy=function(W,fe){return t.dxydi([],W,U,fe,G)},q=0;q0&&(Z=t.dxydi([],q-1,U,0,G),te.push(ee[0]+Z[0]/3),V.push(ee[1]+Z[1]/3),K=t.dxydi([],q-1,U,1,G),te.push(O[0]-K[0]/3),V.push(O[1]-K[1]/3)),te.push(O[0]),V.push(O[1]),ee=O;else for(q=t.a2i(D),Q=Math.floor(Math.max(0,Math.min(C-2,q))),j=q-Q,ne.length=C,ne.crossLength=L,ne.xy=function(W){return t.evalxy([],q,W)},ne.dxy=function(W,fe){return t.dxydj([],Q,W,j,fe)},N=0;N0&&($=t.dxydj([],Q,N-1,j,0),te.push(ee[0]+$[0]/3),V.push(ee[1]+$[1]/3),oe=t.dxydj([],Q,N-1,j,1),te.push(O[0]-oe[0]/3),V.push(O[1]-oe[1]/3)),te.push(O[0]),V.push(O[1]),ee=O;return ne.axisLetter=r,ne.axis=T,ne.crossAxis=A,ne.value=D,ne.constvar=n,ne.index=c,ne.x=te,ne.y=V,ne.smoothing=A.smoothing,ne}function P(D){var q,N,U,G,ee,Q=[],j=[],O={};if(O.length=_.length,O.crossLength=M.length,r==="b")for(U=Math.max(0,Math.min(L-2,D)),ee=Math.min(1,Math.max(0,D-U)),O.xy=function(Z){return t.evalxy([],Z,D)},O.dxy=function(Z,K){return t.dxydi([],Z,U,K,ee)},q=0;q_.length-1)&&w.push(op(P(a),{color:T.gridcolor,width:T.gridwidth,dash:T.griddash}));for(c=u;c_.length-1)&&!(v<0||v>_.length-1))for(m=_[o],b=_[v],i=0;i_[_.length-1])&&k.push(op(I(d),{color:T.minorgridcolor,width:T.minorgridwidth,dash:T.minorgriddash})));T.startline&&x.push(op(P(0),{color:T.startlinecolor,width:T.startlinewidth})),T.endline&&x.push(op(P(_.length-1),{color:T.endlinecolor,width:T.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((_[_.length-1]-T.tick0)/T.dtick*(1+s)),Math.ceil((_[0]-T.tick0)/T.dtick/(1+s))].sort(function(D,q){return D-q}),u=l[0],f=l[1],c=u;c<=f;c++)h=T.tick0+T.dtick*c,w.push(op(I(h),{color:T.gridcolor,width:T.gridwidth,dash:T.griddash}));for(c=u-1;c_[_.length-1])&&k.push(op(I(d),{color:T.minorgridcolor,width:T.minorgridwidth,dash:T.minorgriddash}));T.startline&&x.push(op(I(_[0]),{color:T.startlinecolor,width:T.startlinewidth})),T.endline&&x.push(op(I(_[_.length-1]),{color:T.endlinecolor,width:T.endlinewidth}))}}});var tSe=J((RHt,eSe)=>{"use strict";var Kke=nn(),Qke=cn().extendFlat;eSe.exports=function(t,r){var n,i,a,o,s,l=r._labels=[],u=r._gridlines;for(n=0;n{"use strict";rSe.exports=function(t,r,n,i){var a,o,s,l=[],u=!!n.smoothing,f=!!i.smoothing,c=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=c;a++)o[a]=t[0][a],s[a]=r[0][a];for(l.push({x:o,y:s,bicubic:u}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][c],s[a]=r[a][c];for(l.push({x:o,y:s,bicubic:f}),a=c,o=[],s=[];a>=0;a--)o[c-a]=t[h][a],s[c-a]=r[h][a];for(l.push({x:o,y:s,bicubic:u}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return l.push({x:o,y:s,bicubic:f}),l}});var aSe=J((IHt,iSe)=>{"use strict";var xAt=gt();iSe.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,f=t.length;function c(U,G){var ee=0,Q,j=0;return U>0&&(Q=t[G][U-1])!==void 0&&(j++,ee+=Q),U0&&(Q=t[G-1][U])!==void 0&&(j++,ee+=Q),G0&&a0&&iA);return xAt.log("Smoother converged to",p,"after",y,"iterations"),t}});var sSe=J((qHt,oSe)=>{"use strict";oSe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var fSe=J((FHt,uSe)=>{"use strict";var lSe=.5;uSe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,lSe/2),f=Math.pow(s*s+l*l,lSe/2),c=(f*f*a-u*u*s)*i,h=(f*f*o-u*u*l)*i,d=f*(u+f)*3,v=u*(u+f)*3;return[[r[0]+(d&&c/d),r[1]+(d&&h/d)],[r[0]-(v&&c/v),r[1]-(v&&h/v)]]}});var hSe=J((zHt,cSe)=>{"use strict";var JF=fSe(),U4=gt().ensureArray;function jx(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}cSe.exports=function(t,r,n,i,a,o){var s,l,u,f,c,h,d,v,m,b,g=n[0].length,_=n.length,T=a?3*g-2:g,w=o?3*_-2:_;for(t=U4(t,w),r=U4(r,w),u=0;u{"use strict";vSe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,l,u){s||(s=[]);var f,c,h,d,v,m,b=Math.max(0,Math.min(Math.floor(l),a)),g=Math.max(0,Math.min(Math.floor(u),o)),_=Math.max(0,Math.min(1,l-b)),T=Math.max(0,Math.min(1,u-g));b*=3,g*=3;var w=_*_,k=w*_,x=1-_,M=x*x,A=M*x,p=T*T,S=p*T,y=1-T,E=y*y,C=E*y;for(m=0;m{"use strict";pSe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,f,c,h,d;i*=3,a*=3;var v=o*o,m=1-o,b=m*m,g=m*o*2,_=-3*b,T=3*(b-g),w=3*(g-v),k=3*v,x=s*s,M=x*s,A=1-s,p=A*A,S=p*A;for(d=0;d{"use strict";mSe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,f,c,h,d;i*=3,a*=3;var v=o*o,m=v*o,b=1-o,g=b*b,_=g*b,T=s*s,w=1-s,k=w*w,x=w*s*2,M=-3*k,A=3*(k-x),p=3*(x-T),S=3*T;for(d=0;d{"use strict";var xSe=sSe(),bSe=IT().findBin,bAt=hSe(),wAt=dSe(),_At=gSe(),TAt=ySe();wSe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,l=r[0],u=r[i-1],f=n[0],c=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],v=h*xSe.RELATIVE_CULL_TOLERANCE,m=d*xSe.RELATIVE_CULL_TOLERANCE;l-=v,u+=v,f-=m,c+=m,t.isVisible=function(b,g){return b>l&&bf&&gu||gc},t.setScale=function(){var b=t._x,g=t._y,_=bAt(t._xctrl,t._yctrl,b,g,o.smoothing,s.smoothing);t._xctrl=_[0],t._yctrl=_[1],t.evalxy=wAt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=_At([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=TAt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var g=Math.max(0,Math.floor(b[0]),i-2),_=b[0]-g;return(1-_)*r[g]+_*r[g+1]},t.j2b=function(b){var g=Math.max(0,Math.floor(b[1]),i-2),_=b[1]-g;return(1-_)*n[g]+_*n[g+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var g=Math.max(0,Math.min(bSe(b,r),i-2)),_=r[g],T=r[g+1];return Math.max(0,Math.min(i-1,g+(b-_)/(T-_)))},t.b2j=function(b){var g=Math.max(0,Math.min(bSe(b,n),a-2)),_=n[g],T=n[g+1];return Math.max(0,Math.min(a-1,g+(b-_)/(T-_)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,g){return t.evalxy([],b,g)},t.ab2xy=function(b,g,_){if(!_&&(br[i-1]|gn[a-1]))return[!1,!1];var T=t.a2i(b),w=t.b2j(g),k=t.evalxy([],T,w);if(_){var x=0,M=0,A=[],p,S,y,E;br[i-1]?(p=i-2,S=1,x=(b-r[i-1])/(r[i-1]-r[i-2])):(p=Math.max(0,Math.min(i-2,Math.floor(T))),S=T-p),gn[a-1]?(y=a-2,E=1,M=(g-n[a-1])/(n[a-1]-n[a-2])):(y=Math.max(0,Math.min(a-2,Math.floor(w))),E=w-y),x&&(t.dxydi(A,p,y,S,E),k[0]+=A[0]*x,k[1]+=A[1]*x),M&&(t.dxydj(A,p,y,S,E),k[0]+=A[0]*M,k[1]+=A[1]*M)}return k},t.c2p=function(b,g,_){return[g.c2p(b[0]),_.c2p(b[1])]},t.p2x=function(b,g,_){return[g.p2c(b[0]),_.p2c(b[1])]},t.dadi=function(b){var g=Math.max(0,Math.min(r.length-2,b));return r[g+1]-r[g]},t.dbdj=function(b){var g=Math.max(0,Math.min(n.length-2,b));return n[g+1]-n[g]},t.dxyda=function(b,g,_,T){var w=t.dxydi(null,b,g,_,T),k=t.dadi(b,_);return[w[0]/k,w[1]/k]},t.dxydb=function(b,g,_,T){var w=t.dxydj(null,b,g,_,T),k=t.dbdj(g,T);return[w[0]/k,w[1]/k]},t.dxyda_rough=function(b,g,_){var T=h*(_||.1),w=t.ab2xy(b+T,g,!0),k=t.ab2xy(b-T,g,!0);return[(w[0]-k[0])*.5/T,(w[1]-k[1])*.5/T]},t.dxydb_rough=function(b,g,_){var T=d*(_||.1),w=t.ab2xy(b,g+T,!0),k=t.ab2xy(b,g-T,!0);return[(w[0]-k[0])*.5/T,(w[1]-k[1])*.5/T]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var LSe=J((HHt,ESe)=>{"use strict";var H4=nn(),TSe=gt().isArray1D,AAt=Yke(),ASe=Zke(),MSe=$ke(),kSe=tSe(),MAt=nSe(),SSe=rS(),CSe=aSe(),kAt=eS(),SAt=_Se();ESe.exports=function(t,r){var n=H4.getFromId(t,r.xaxis),i=H4.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&TSe(s)&&u.push("x"),l&&TSe(l)&&u.push("y"),u.length&&kAt(r,a,o,"a","b",u);var f=r._a=r._a||r.a,c=r._b=r._b||r.b;s=r._x||r.x,l=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?f.length:f,v=o.cheatertype==="index"?c.length:c;s=AAt(d,v,r.cheaterslope)}r._x=s=SSe(s),r._y=l=SSe(l),CSe(s,f,c),CSe(l,f,c),SAt(r),r.setScale();var m=ASe(s),b=ASe(l),g=.5*(m[1]-m[0]),_=.5*(m[1]+m[0]),T=.5*(b[1]-b[0]),w=.5*(b[1]+b[0]),k=1.3;return m=[_-g*k,_+g*k],b=[w-T*k,w+T*k],r._extremes[n._id]=H4.findExtremes(n,m,{padded:!0}),r._extremes[i._id]=H4.findExtremes(i,b,{padded:!0}),MSe(r,"a","b"),MSe(r,"b","a"),kSe(r,a),kSe(r,o),h.clipsegments=MAt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=f,h.b=c,[h]}});var RSe=J((jHt,DSe)=>{"use strict";DSe.exports={attributes:q4(),supplyDefaults:Dke(),plot:jke(),calc:LSe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:gs(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{description:["The data describing carpet axis layout is set in `y` and (optionally)","also `x`. If only `y` is present, `x` the plot is interpreted as a","cheater plot and is filled in using the `y` values.","`x` and `y` may either be 2D arrays matching with each dimension matching","that of `a` and `b`, or they may be 1D arrays with total length equal to","that of `a` and `b`."].join(" ")}}});var ISe=J((VHt,PSe)=>{"use strict";PSe.exports=RSe()});var $F=J((YHt,FSe)=>{"use strict";var CAt=gg(),Nf=ds(),EAt=Qi(),LAt=Jn().hovertemplateAttrs,DAt=Jn().texttemplateAttrs,qSe=Da(),sp=cn().extendFlat,Sc=Nf.marker,Vx=Nf.line,RAt=Sc.line;FSe.exports={carpet:{valType:"string",editType:"calc",description:["An identifier for this carpet, so that `scattercarpet` and","`contourcarpet` traces can specify a carpet plot on which","they lie"].join(" ")},a:{valType:"data_array",editType:"calc",description:"Sets the a-axis coordinates."},b:{valType:"data_array",editType:"calc",description:"Sets the b-axis coordinates."},mode:sp({},Nf.mode,{dflt:"markers"}),text:sp({},Nf.text,{description:["Sets text elements associated with each (a,b) point.","If a single string, the same string appears over","all the data points.","If an array of strings, the items are mapped in order to the","the data points in (a,b).","If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,","these elements will be seen in the hover labels."].join(" ")}),texttemplate:DAt({editType:"plot"},{keys:["a","b","text"]}),hovertext:sp({},Nf.hovertext,{description:["Sets hover text elements associated with each (a,b) point.","If a single string, the same string appears over","all the data points.","If an array of strings, the items are mapped in order to the","the data points in (a,b).","To be seen, trace `hoverinfo` must contain a *text* flag."].join(" ")}),line:{color:Vx.color,width:Vx.width,dash:Vx.dash,backoff:Vx.backoff,shape:sp({},Vx.shape,{values:["linear","spline"]}),smoothing:Vx.smoothing,editType:"calc"},connectgaps:Nf.connectgaps,fill:sp({},Nf.fill,{values:["none","toself","tonext"],dflt:"none",description:["Sets the area to fill with a solid color.","Use with `fillcolor` if not *none*.","scatterternary has a subset of the options available to scatter.","*toself* connects the endpoints of the trace (or each segment","of the trace if it has gaps) into a closed shape.","*tonext* fills the space between two traces if one completely","encloses the other (eg consecutive contour lines), and behaves like","*toself* if there is no trace before it. *tonext* should not be","used if one trace does not enclose the other."].join(" ")}),fillcolor:CAt(),marker:sp({symbol:Sc.symbol,opacity:Sc.opacity,maxdisplayed:Sc.maxdisplayed,angle:Sc.angle,angleref:Sc.angleref,standoff:Sc.standoff,size:Sc.size,sizeref:Sc.sizeref,sizemin:Sc.sizemin,sizemode:Sc.sizemode,line:sp({width:RAt.width,editType:"calc"},qSe("marker.line")),gradient:Sc.gradient,editType:"calc"},qSe("marker")),textfont:Nf.textfont,textposition:Nf.textposition,selected:Nf.selected,unselected:Nf.unselected,hoverinfo:sp({},EAt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:Nf.hoveron,hovertemplate:LAt(),zorder:Nf.zorder}});var BSe=J((GHt,OSe)=>{"use strict";var zSe=gt(),PAt=pg(),Yx=fs(),IAt=bg(),qAt=wg(),NSe=nw(),FAt=_g(),zAt=uy(),NAt=$F();OSe.exports=function(t,r,n,i){function a(h,d){return zSe.coerce(t,r,NAt,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("text"),a("texttemplate"),a("hovertext");var u=l{"use strict";USe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,l=Math.floor(a[1]),u=a[1]-l,f=i.evalxy([],o,l,s,u);return n.yLabel=f[1].toFixed(3),n}});var j4=J((XHt,jSe)=>{"use strict";jSe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i{"use strict";var VSe=dn(),OAt=Ag(),BAt=nd(),UAt=oh(),HAt=Mg().calcMarkerSize,jAt=j4();YSe.exports=function(t,r){var n=r._carpetTrace=jAt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,l,u=!1;for(i=0;i{"use strict";var VAt=lw(),WSe=nn(),YAt=ln();XSe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=WSe.getFromId(t,l.xaxis||"x"),f=WSe.getFromId(t,l.yaxis||"y"),c={xaxis:u,yaxis:f,plot:r.plot};for(a=0;a{"use strict";var GAt=uw(),WAt=gt().fillText;JSe.exports=function(t,r,n,i){var a=GAt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,f=l-u;return o.x0=Math.max(Math.min(o.x0,f),u),o.x1=Math.max(Math.min(o.x1,f),u),a}var c=o.cd[o.index];o.a=c.a,o.b=c.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,v=h._module.formatLabels(c,h);o.yLabel=v.yLabel,delete o.text;var m=[];function b(T,w){var k;T.labelprefix&&T.labelprefix.length>0?k=T.labelprefix.replace(/ = $/,""):k=T._hovertitle,m.push(k+": "+w.toFixed(3)+T.labelsuffix)}if(!h.hovertemplate){var g=c.hi||h.hoverinfo,_=g.split("+");_.indexOf("all")!==-1&&(_=["a","b","text"]),_.indexOf("a")!==-1&&b(d.aaxis,c.a),_.indexOf("b")!==-1&&b(d.baxis,c.b),m.push("y: "+o.yLabel),_.indexOf("text")!==-1&&WAt(c,h,m),o.extraText=m.join("
")}return a}});var QSe=J((KHt,KSe)=>{"use strict";KSe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var t5e=J((QHt,e5e)=>{"use strict";e5e.exports={attributes:$F(),supplyDefaults:BSe(),colorbar:pc(),formatLabels:HSe(),calc:GSe(),plot:ZSe(),style:Ef().style,styleOnSelect:Ef().styleOnSelect,hoverPoints:$Se(),selectPoints:fw(),eventData:QSe(),moduleType:"trace",name:"scattercarpet",basePlotModule:gs(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{hrName:"scatter_carpet",description:["Plots a scatter trace on either the first carpet axis or the","carpet axis with a matching `carpet` attribute."].join(" ")}}});var n5e=J((ejt,r5e)=>{"use strict";r5e.exports=t5e()});var KF=J((tjt,i5e)=>{"use strict";var Cc=Ug(),Md=Vw(),XAt=Da(),ZAt=cn().extendFlat,yv=Md.contours;i5e.exports=ZAt({carpet:{valType:"string",editType:"calc",description:["The `carpet` of the carpet axes on which this contour trace lies"].join(" ")},z:Cc.z,a:Cc.x,a0:Cc.x0,da:Cc.dx,b:Cc.y,b0:Cc.y0,db:Cc.dy,text:Cc.text,hovertext:Cc.hovertext,transpose:Cc.transpose,atype:Cc.xtype,btype:Cc.ytype,fillcolor:Md.fillcolor,autocontour:Md.autocontour,ncontours:Md.ncontours,contours:{type:yv.type,start:yv.start,end:yv.end,size:yv.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc",description:["Determines the coloring method showing the contour values.","If *fill*, coloring is done evenly between each contour level","If *lines*, coloring is done on the contour lines.","If *none*, no coloring is applied on this trace."].join(" ")},showlines:yv.showlines,showlabels:yv.showlabels,labelfont:yv.labelfont,labelformat:yv.labelformat,operation:yv.operation,value:yv.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:Md.line.color,width:Md.line.width,dash:Md.line.dash,smoothing:Md.line.smoothing,editType:"plot"},zorder:Md.zorder,transforms:void 0},XAt("",{cLetter:"z",autoColorDflt:!1}))});var QF=J((rjt,s5e)=>{"use strict";var a5e=gt(),JAt=qw(),o5e=KF(),$At=bI(),KAt=yS(),QAt=xS();s5e.exports=function(t,r,n,i){function a(u,f){return a5e.coerce(t,r,o5e,u,f)}function o(u){return a5e.coerce2(t,r,o5e,u)}if(a("carpet"),t.a&&t.b){var s=JAt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?$At(t,r,a,i,n,{hasHover:!1}):(KAt(t,r,a,o),QAt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var c5e=J((njt,f5e)=>{"use strict";var eMt=Uu(),l5e=gt(),tMt=eS(),rMt=rS(),nMt=nS(),iMt=iS(),u5e=HP(),aMt=QF(),oMt=j4(),sMt=lI();f5e.exports=function(t,r){var n=r._carpetTrace=oMt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),aMt(a,r,r._defaultColor,t._fullLayout)}var o=lMt(t,r);return sMt(r,r._z),o}};function lMt(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,l,u,f,c;n._minDtick=0,i._minDtick=0,l5e.isArray1D(t.z)&&tMt(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,l=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],l=l?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,u=t.b0||0,f=t.db||1,c=t._z=rMt(t._z||t.z,t.transpose),t._emptypoints=iMt(c),nMt(c,t._emptypoints);var h=l5e.maxRowLength(c),d=t.xtype==="scaled"?"":a,v=u5e(t,d,o,s,h,n),m=t.ytype==="scaled"?"":l,b=u5e(t,m,u,f,c.length,i),g={a:v,b,z:c};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&eMt(e,t,{vals:c,containerStr:"",cLetter:"z"}),[g]}});var v5e=J((ijt,h5e)=>{"use strict";var uMt=gt().isArrayOrTypedArray;h5e.exports=function(e,t,r,n){var i,a,o,s,l,u,f,c,h,d,v,m,b,g=uMt(r)?"a":"b",_=g==="a"?e.aaxis:e.baxis,T=_.smoothing,w=g==="a"?e.a2i:e.b2j,k=g==="a"?r:n,x=g==="a"?n:r,M=g==="a"?t.a.length:t.b.length,A=g==="a"?t.b.length:t.a.length,p=Math.floor(g==="a"?e.b2j(x):e.a2i(x)),S=g==="a"?function(G){return e.evalxy([],G,p)}:function(G){return e.evalxy([],p,G)};T&&(o=Math.max(0,Math.min(A-2,p)),s=p-o,a=g==="a"?function(G,ee){return e.dxydi([],G,o,ee,s)}:function(G,ee){return e.dxydj([],o,G,s,ee)});var y=w(k[0]),E=w(k[1]),C=y0?Math.floor:Math.ceil,I=C>0?Math.ceil:Math.floor,P=C>0?Math.min:Math.max,D=C>0?Math.max:Math.min,q=R(y+L),N=I(E-L);f=S(y);var U=[[f]];for(i=q;i*C{"use strict";var Y4=Nr(),G4=WF(),y5e=XF(),i3=ln(),kd=gt(),fMt=fI(),cMt=cI(),wm=_S(),V4=Gw(),hMt=pI(),vMt=dI(),dMt=gI(),pMt=j4(),d5e=v5e();x5e.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;kd.makeTraceGroups(i,n,"contour").each(function(s){var l=Y4.select(this),u=s[0],f=u.trace,c=f._carpetTrace=pMt(t,f),h=t.calcdata[c.index][0];if(!c.visible||c.visible==="legendonly")return;var d=u.a,v=u.b,m=f.contours,b=vMt(m,r,u),g=m.type==="constraint",_=m._operation,T=g?_==="="?"lines":"fill":m.coloring;function w(R){var I=c.ab2xy(R[0],R[1],!0);return[a.c2p(I[0]),o.c2p(I[1])]}var k=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];fMt(b);var x=(d[d.length-1]-d[0])*1e-8,M=(v[v.length-1]-v[0])*1e-8;cMt(b,x,M);var A=b;m.type==="constraint"&&(A=hMt(b,_)),gMt(b,w);var p,S,y,E,C=[];for(E=h.clipsegments.length-1;E>=0;E--)p=h.clipsegments[E],S=G4([],p.x,a.c2p),y=G4([],p.y,o.c2p),S.reverse(),y.reverse(),C.push(y5e(S,y,p.bicubic));var L="M"+C.join("L")+"Z";xMt(l,h.clipsegments,a,o,g,T),bMt(f,l,a,o,A,k,w,c,h,T,L),mMt(l,b,t,u,m,r,c),i3.setClipUrl(l,c._clipPathId,t)})};function gMt(e,t){var r,n,i,a,o,s,l,u,f;for(r=0;rb&&(n.max=b),n.len=n.max-n.min}function p5e(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function g5e(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function m5e(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function xMt(e,t,r,n,i,a){var o,s,l,u,f=kd.ensureSingle(e,"g","contourbg"),c=f.selectAll("path").data(a==="fill"&&!i?[0]:[]);c.enter().append("path"),c.exit().remove();var h=[];for(u=0;u=0&&(d=S,m=b):Math.abs(h[1]-d[1])=0&&(d=S,m=b):kd.log("endpt to newendpt is not vert. or horz.",h,d,S)}if(m>=0)break;u+=A(h,d),h=d}if(m===t.edgepaths.length){kd.log("unclosed perimeter path");break}l=m,c=f.indexOf(l)===-1,c&&(l=f[0],u+=A(h,d)+"Z",h=null)}for(l=0;l{"use strict";w5e.exports={attributes:KF(),supplyDefaults:QF(),colorbar:MS(),calc:c5e(),plot:b5e(),style:AS(),moduleType:"trace",name:"contourcarpet",basePlotModule:gs(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{hrName:"contour_carpet",description:["Plots contours on either the first carpet axis or the","carpet axis with a matching `carpet` attribute. Data `z`","is interpreted as matching that of the corresponding carpet","axis."].join(" ")}}});var A5e=J((sjt,T5e)=>{"use strict";T5e.exports=_5e()});var Z4=J((ljt,C5e)=>{"use strict";var W4=gt().extendFlat,a3=ds(),M5e=Ga().axisHoverFormat,ez=Ss().dash,_Mt=b1(),S5e=Jy(),TMt=S5e.INCREASING.COLOR,AMt=S5e.DECREASING.COLOR,X4=a3.line;function k5e(e){return{line:{color:W4({},X4.color,{dflt:e}),width:X4.width,dash:ez,editType:"style"},editType:"style"}}C5e.exports={xperiod:a3.xperiod,xperiod0:a3.xperiod0,xperiodalignment:a3.xperiodalignment,xhoverformat:M5e("x"),yhoverformat:M5e("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes",description:["Sets the x coordinates.","If absent, linear coordinate will be generated."].join(" ")},open:{valType:"data_array",editType:"calc",description:"Sets the open values."},high:{valType:"data_array",editType:"calc",description:"Sets the high values."},low:{valType:"data_array",editType:"calc",description:"Sets the low values."},close:{valType:"data_array",editType:"calc",description:"Sets the close values."},line:{width:W4({},X4.width,{description:[X4.width,"Note that this style setting can also be set per","direction via `increasing.line.width` and","`decreasing.line.width`."].join(" ")}),dash:W4({},ez,{description:[ez.description,"Note that this style setting can also be set per","direction via `increasing.line.dash` and","`decreasing.line.dash`."].join(" ")}),editType:"style"},increasing:k5e(TMt),decreasing:k5e(AMt),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:["Sets hover text elements associated with each sample point.","If a single string, the same string appears over","all the data points.","If an array of string, the items are mapped in order to","this trace's sample points."].join(" ")},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc",description:"Same as `text`."},tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc",description:["Sets the width of the open/close tick marks","relative to the *x* minimal interval."].join(" ")},hoverlabel:W4({},_Mt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style",description:["Show hover information (open, close, high, low) in","separate labels."].join(" ")}}),zorder:a3.zorder}});var tz=J((ujt,E5e)=>{"use strict";var MMt=zr(),kMt=gt();E5e.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),l=n("low"),u=n("close");n("hoverlabel.split");var f=MMt.getComponentMethod("calendars","handleTraceDefaults");if(f(t,r,["x"],i),!!(o&&s&&l&&u)){var c=Math.min(o.length,s.length,l.length,u.length);return a&&(c=Math.min(c,kMt.minRowLength(a))),r._length=c,c}}});var R5e=J((fjt,D5e)=>{"use strict";var SMt=gt(),CMt=tz(),EMt=nv(),LMt=Z4();D5e.exports=function(t,r,n,i){function a(s,l){return SMt.coerce(t,r,LMt,s,l)}var o=CMt(t,r,a,i);if(!o){r.visible=!1;return}EMt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),L5e(t,r,a,"increasing"),L5e(t,r,a,"decreasing"),a("text"),a("hovertext"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function L5e(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var rz=J((cjt,I5e)=>{"use strict";var Gx=gt(),J4=Gx._,$4=nn(),DMt=iv(),o3=oi().BADNUM;function RMt(e,t){var r=$4.getFromId(e,t.xaxis),n=$4.getFromId(e,t.yaxis),i=IMt(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var l=P5e(e,t,o,s,n,PMt);return t._extremes[r._id]=$4.findExtremes(r,s,{vpad:a/2}),l.length?(Gx.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function PMt(e,t,r,n){return{o:e,h:t,l:r,c:n}}function P5e(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),l=i.makeCalcdata(t,"low"),u=i.makeCalcdata(t,"close"),f=Gx.isArrayOrTypedArray(t.text),c=Gx.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,m=[],b=0;bd):h=k>_,d=k;var x=a(_,T,w,k);x.pos=g,x.yc=(_+k)/2,x.i=b,x.dir=h?"increasing":"decreasing",x.x=x.pos,x.y=[w,T],v&&(x.orig_p=r[b]),f&&(x.tx=t.text[b]),c&&(x.htx=t.hovertext[b]),m.push(x)}else m.push({pos:g,empty:!0})}return t._extremes[i._id]=$4.findExtremes(i,Gx.concat(l,s),{padded:!0}),m.length&&(m[0].t={labels:{open:J4(e,"open:")+" ",high:J4(e,"high:")+" ",low:J4(e,"low:")+" ",close:J4(e,"close:")+" "}}),m}function IMt(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o{"use strict";var qMt=Nr(),q5e=gt();F5e.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;q5e.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=qMt.select(this),f=l[0],c=f.t,h=f.trace;if(h.visible!==!0||c.empty){u.remove();return}var d=c.tickLen,v=u.selectAll("path").data(q5e.identity);v.enter().append("path"),v.exit().remove(),v.attr("d",function(m){if(m.empty)return"M0,0Z";var b=o.c2p(m.pos-d,!0),g=o.c2p(m.pos+d,!0),_=s?(b+g)/2:o.c2p(m.pos,!0),T=a.c2p(m.o,!0),w=a.c2p(m.h,!0),k=a.c2p(m.l,!0),x=a.c2p(m.c,!0);return"M"+b+","+T+"H"+_+"M"+_+","+w+"V"+k+"M"+g+","+x+"H"+_})})}});var O5e=J((vjt,N5e)=>{"use strict";var nz=Nr(),FMt=ln(),zMt=qr();N5e.exports=function(t,r,n){var i=n||nz.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;nz.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;nz.select(this).style("fill","none").call(zMt.stroke,l.color).call(FMt.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var az=J((djt,V5e)=>{"use strict";var iz=nn(),NMt=gt(),K4=go(),OMt=qr(),BMt=gt().fillText,B5e=Jy(),UMt={increasing:B5e.INCREASING.SYMBOL,decreasing:B5e.DECREASING.SYMBOL};function HMt(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?H5e(e,t,r,n):j5e(e,t,r,n)}function U5e(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,l=o.type,u=l==="ohlc"?"l":"min",f=l==="ohlc"?"h":"max",c,h,d=s.bPos||0,v=function(S){return S.pos+d-t},m=s.bdPos||s.tickLen,b=s.wHover,g=Math.min(1,m/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));c=e.maxHoverDistance-g,h=e.maxSpikeDistance-g;function _(S){var y=v(S);return K4.inbox(y-b,y+b,c)}function T(S){var y=S[u],E=S[f];return y===E||K4.inbox(y-r,E-r,c)}function w(S){return(_(S)+T(S))/2}var k=K4.getDistanceFunction(n,_,T,w);if(K4.getClosest(i,k,e),e.index===!1)return null;var x=i[e.index];if(x.empty)return null;var M=x.dir,A=o[M],p=A.line.color;return OMt.opacity(p)&&A.line.width?e.color=p:e.color=A.fillcolor,e.x0=a.c2p(x.pos+d-m,!0),e.x1=a.c2p(x.pos+d+m,!0),e.xLabelVal=x.orig_p!==void 0?x.orig_p:x.pos,e.spikeDistance=w(x)*h/c,e.xSpike=a.c2p(x.pos,!0),e}function H5e(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=U5e(e,t,r,n);if(!u)return[];var f=u.index,c=i[f],h=c.hi||o.hoverinfo,d=h.split("+"),v=h==="all",m=v||d.indexOf("y")!==-1;if(!m)return[];for(var b=["high","open","close","low"],g={},_=0;_"+s.labels[T]+iz.hoverLabelText(a,w,o.yhoverformat)):(x=NMt.extendFlat({},u),x.y0=x.y1=k,x.yLabelVal=w,x.yLabel=s.labels[T]+iz.hoverLabelText(a,w,o.yhoverformat),x.name="",l.push(x),g[w]=x)}return l}function j5e(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=U5e(e,t,r,n);if(!l)return[];var u=l.index,f=i[u],c=l.index=f.i,h=f.dir;function d(w){return s.labels[w]+iz.hoverLabelText(a,o[w][c],o.yhoverformat)}var v=f.hi||o.hoverinfo,m=v.split("+"),b=v==="all",g=b||m.indexOf("y")!==-1,_=b||m.indexOf("text")!==-1,T=g?[d("open"),d("high"),d("low"),d("close")+" "+UMt[h]]:[];return _&&BMt(f,o,T),l.extraText=T.join("
"),l.y0=l.y1=a.c2p(f.yc,!0),[l]}V5e.exports={hoverPoints:HMt,hoverSplit:H5e,hoverOnPoints:j5e}});var oz=J((pjt,Y5e)=>{"use strict";Y5e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l=n[0].t.bPos||0;if(r===!1)for(s=0;s{"use strict";G5e.exports={moduleType:"trace",name:"ohlc",basePlotModule:gs(),categories:["cartesian","svg","showLegend"],meta:{description:["The ohlc (short for Open-High-Low-Close) is a style of financial chart describing","open, high, low and close for a given `x` coordinate (most likely time).","The tip of the lines represent the `low` and `high` values and","the horizontal segments represent the `open` and `close` values.","Sample points where the close value is higher (lower) then the open","value are called increasing (decreasing).","By default, increasing items are drawn in green whereas","decreasing are drawn in red."].join(" ")},attributes:Z4(),supplyDefaults:R5e(),calc:rz().calc,plot:z5e(),style:O5e(),hoverPoints:az().hoverPoints,selectPoints:oz()}});var Z5e=J((mjt,X5e)=>{"use strict";X5e.exports=W5e()});var lz=J((yjt,K5e)=>{"use strict";var sz=gt().extendFlat,J5e=Ga().axisHoverFormat,Of=Z4(),_m=Dw();function $5e(e){return{line:{color:sz({},_m.line.color,{dflt:e}),width:_m.line.width,editType:"style"},fillcolor:_m.fillcolor,editType:"style"}}K5e.exports={xperiod:Of.xperiod,xperiod0:Of.xperiod0,xperiodalignment:Of.xperiodalignment,xhoverformat:J5e("x"),yhoverformat:J5e("y"),x:Of.x,open:Of.open,high:Of.high,low:Of.low,close:Of.close,line:{width:sz({},_m.line.width,{description:[_m.line.width.description,"Note that this style setting can also be set per","direction via `increasing.line.width` and","`decreasing.line.width`."].join(" ")}),editType:"style"},increasing:$5e(Of.increasing.line.color.dflt),decreasing:$5e(Of.decreasing.line.color.dflt),text:Of.text,hovertext:Of.hovertext,whiskerwidth:sz({},_m.whiskerwidth,{dflt:0}),hoverlabel:Of.hoverlabel,zorder:_m.zorder}});var t4e=J((xjt,e4e)=>{"use strict";var jMt=gt(),VMt=qr(),YMt=tz(),GMt=nv(),WMt=lz();e4e.exports=function(t,r,n,i){function a(s,l){return jMt.coerce(t,r,WMt,s,l)}var o=YMt(t,r,a,i);if(!o){r.visible=!1;return}GMt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),Q5e(t,r,a,"increasing"),Q5e(t,r,a,"decreasing"),a("text"),a("hovertext"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function Q5e(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",VMt.addOpacity(i,.5))}});var a4e=J((bjt,i4e)=>{"use strict";var r4e=gt(),n4e=nn(),XMt=iv(),ZMt=rz().calcCommon;i4e.exports=function(e,t){var r=e._fullLayout,n=n4e.getFromId(e,t.xaxis),i=n4e.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=XMt(t,n,"x",a).vals,s=ZMt(e,t,a,o,i,JMt);return s.length?(r4e.extendFlat(s[0].t,{num:r._numBoxes,dPos:r4e.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function JMt(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var s4e=J((wjt,o4e)=>{"use strict";o4e.exports={moduleType:"trace",name:"candlestick",basePlotModule:gs(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{description:["The candlestick is a style of financial chart describing","open, high, low and close for a given `x` coordinate (most likely time).","The boxes represent the spread between the `open` and `close` values and","the lines represent the spread between the `low` and `high` values","Sample points where the close value is higher (lower) then the open","value are called increasing (decreasing).","By default, increasing candles are drawn in green whereas","decreasing are drawn in red."].join(" ")},attributes:lz(),layoutAttributes:Rw(),supplyLayoutDefaults:Gk().supplyLayoutDefaults,crossTraceCalc:Xk().crossTraceCalc,supplyDefaults:t4e(),calc:a4e(),plot:Zk().plot,layerName:"boxlayer",style:Jk().style,hoverPoints:az().hoverPoints,selectPoints:oz()}});var u4e=J((_jt,l4e)=>{"use strict";l4e.exports=s4e()});var fz=J((Tjt,f4e)=>{"use strict";var eC=gt(),$Mt=Zv(),Q4=eC.deg2rad,uz=eC.rad2deg;f4e.exports=function(t,r,n){switch($Mt(t,n),t._id){case"x":case"radialaxis":KMt(t,r);break;case"angularaxis":tkt(t,r);break}};function KMt(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,l=n>i?function(u){return u<=0}:function(u){return u>=0};e.c2g=function(u){var f=e.c2l(u)-n;return(l(f)?f:0)+s},e.g2c=function(u){return e.l2c(u+n-s)},e.g2p=function(u){return u*o},e.c2p=function(u){return e.g2p(e.c2g(u))}}}function QMt(e,t){return t==="degrees"?Q4(e):e}function ekt(e,t){return t==="degrees"?uz(e):e}function tkt(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return QMt(n(a),o)},e.c2d=function(a,o){return i(ekt(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],l=a._length,u,f,c=function(b){return e.d2c(b,a.thetaunit)};if(s)for(u=new Array(l),f=0;f{"use strict";c4e.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var nC=J((Mjt,g4e)=>{"use strict";var Tm=gt(),h4e=R2().tester,cz=Tm.findIndexOfMin,d4e=Tm.isAngleInsideSector,rkt=Tm.angleDelta,v4e=Tm.angleDist;function nkt(e,t,r,n,i){if(!d4e(t,n))return!1;var a,o;r[0]0?o:1/0},n=cz(t,r),i=Tm.mod(n+1,t.length);return[t[n],t[i]]}function rC(e){return Math.abs(e)>1e-10?e:0}function hz(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a{"use strict";function m4e(e){return e<0?-1:e>0?1:0}function Xx(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function Zx(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function y4e(e,t){return t*e.radius}function ckt(e,t,r,n){var i=Zx(e,Xx([r,t])),a=i[0],o=i[1],s=Zx(e,Xx([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var f=y4e(e,1/Math.abs(t));return["M"+a+","+o,"A"+f+","+f+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function hkt(e,t,r,n){var i=y4e(e,1/(t+1)),a=Zx(e,Xx([t,r])),o=a[0],s=a[1],l=Zx(e,Xx([t,n])),u=l[0],f=l[1];if(m4e(r)!==m4e(n)){var c=Zx(e,Xx([t,0])),h=c[0],d=c[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0{"use strict";var Am=Nr(),vkt=ls(),km=zr(),va=gt(),xv=va.strRotate,xs=va.strTranslate,vz=qr(),s3=ln(),dkt=ea(),pu=nn(),pkt=Zv(),gkt=fz(),mkt=ec().doAutoRange,Sd=q8(),oC=iu(),w4e=go(),ykt=tg(),xkt=ml().prepSelect,bkt=ml().selectOnClick,dz=ml().clearOutline,_4e=th(),T4e=y2(),A4e=k2().redrawReglTraces,wkt=Vo().MID_SHIFT,lp=tC(),Cd=nC(),sC=b4e(),iC=sC.smith,_kt=sC.reactanceArc,Tkt=sC.resistanceArc,aC=sC.smithTransform,Akt=va._,M4e=va.mod,up=va.deg2rad,Mm=va.rad2deg;function k4e(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Rs=k4e.prototype;E4e.exports=function(t,r,n){return new k4e(t,r,n)};Rs.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;ab?(g=u,_=u*b,k=(f-_)/i.h/2,T=[s[0],s[1]],w=[l[0]+k,l[1]-k]):(g=f/b,_=f,k=(u-g)/i.w/2,T=[s[0]+k,s[1]-k],w=[l[0],l[1]]),r.xLength2=g,r.yLength2=_,r.xDomain2=T,r.yDomain2=w;var x=r.xOffset2=i.l+i.w*T[0],M=r.yOffset2=i.t+i.h*(1-w[1]),A=r.radius=g/d,p=r.innerRadius=r.getHole(t)*A,S=r.cx=x-A*h[0],y=r.cy=M+A*h[3],E=r.cxx=S-x,C=r.cyy=y-M,L=a.side,R;L==="counterclockwise"?(R=L,L="top"):L==="clockwise"&&(R=L,L="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:L,_trueSide:R,domain:[p/i.w,A/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:T}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:w});var I=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",I).attr("transform",xs(E,C)),n.frontplot.attr("transform",xs(x,M)).call(s3.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",I).attr("transform",xs(S,y)).call(vz.fill,t.bgcolor)};Rs.mockAxis=function(e,t,r,n){var i=va.extendFlat({},r,n);return gkt(i,t,e),i};Rs.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=va.extendFlat({type:"linear"},r);pkt(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],f=n.radialAxis._rl,c=(f[1]-f[0])/(1-n.getHole(t));o.range=[l[u[0]]*c,l[u[1]]*c]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Rs.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);mkt(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var l=i.r2l(i.maxallowed);i._rl[0]90&&f<=270&&(c.tickangle=180);var v=d?function(A){var p=aC(r,iC([A.x,0]));return xs(p[0]-s,p[1]-l)}:function(A){return xs(c.l2p(A.x)+o,0)},m=d?function(A){return Tkt(r,A.x,-1/0,1/0)}:function(A){return r.pathArc(c.r2p(A.x)+o)},b=S4e(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){c.setScale();var g=0,_=d?(c.tickvals||[]).filter(function(A){return A>=0}).map(function(A){return pu.tickText(c,A,!0,!1)}):pu.calcTicks(c),T=d?_:pu.clipEnds(c,_),w=pu.getTickSigns(c)[2];d&&((c.ticks==="top"&&c.side==="bottom"||c.ticks==="bottom"&&c.side==="top")&&(w=-w),c.ticks==="top"&&c.side==="top"&&(g=-c.ticklen),c.ticks==="bottom"&&c.side==="bottom"&&(g=c.ticklen)),pu.drawTicks(n,c,{vals:_,layer:i["radial-axis"],path:pu.makeTickPath(c,0,w),transFn:v,crisp:!1}),pu.drawGrid(n,c,{vals:T,layer:i["radial-grid"],path:m,transFn:va.noop,crisp:!1}),pu.drawLabels(n,c,{vals:_,layer:i["radial-axis"],transFn:v,labelFns:pu.makeLabelFns(c,g)})}var k=r.radialAxisAngle=r.vangles?Mm(C4e(up(u.angle),r.vangles)):u.angle,x=xs(s,l),M=x+xv(-k);l3(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:M}),l3(i["radial-grid"],h&&u.showgrid,{transform:d?"":x}),l3(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:M}).attr("stroke-width",u.linewidth).call(vz.stroke,u.linecolor)};Rs.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",f=0;if(l.title){var c=s3.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,d=l.side;f=d==="top"?h:d==="counterclockwise"?-(c+h*.4):c+h*.8}var v=r!==void 0?r:n.radialAxisAngle,m=up(v),b=Math.cos(m),g=Math.sin(m),_=o+a/2*b+f*g,T=s-a/2*g+f*b;n.layers["radial-axis-title"]=ykt.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:Akt(i,"Click to enter radial axis title"),attributes:{x:_,y:T,"text-anchor":"middle"},transform:{rotate:-v}})}};Rs.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),f=r.angularAxis,c=r.isSmith;c||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),f.setGeometry(),f.setScale());var h=c?function(p){var S=aC(r,iC([0,p.x]));return Math.atan2(S[0]-s,S[1]-l)-Math.PI/2}:function(p){return f.t2g(p.x)};f.type==="linear"&&f.thetaunit==="radians"&&(f.tick0=Mm(f.tick0),f.dtick=Mm(f.dtick));var d=function(p){return xs(s+a*Math.cos(p),l-a*Math.sin(p))},v=c?function(p){var S=aC(r,iC([0,p.x]));return xs(S[0],S[1])}:function(p){return d(h(p))},m=c?function(p){var S=aC(r,iC([0,p.x])),y=Math.atan2(S[0]-s,S[1]-l)-Math.PI/2;return xs(S[0],S[1])+xv(-Mm(y))}:function(p){var S=h(p);return d(S)+xv(-Mm(S))},b=c?function(p){return _kt(r,p.x,0,1/0)}:function(p){var S=h(p),y=Math.cos(S),E=Math.sin(S);return"M"+[s+o*y,l-o*E]+"L"+[s+a*y,l-a*E]},g=pu.makeLabelFns(f,0),_=g.labelStandoff,T={};T.xFn=function(p){var S=h(p);return Math.cos(S)*_},T.yFn=function(p){var S=h(p),y=Math.sin(S)>0?.2:1;return-Math.sin(S)*(_+p.fontSize*y)+Math.abs(Math.cos(S))*(p.fontSize*wkt)},T.anchorFn=function(p){var S=h(p),y=Math.cos(S);return Math.abs(y)<.1?"middle":y>0?"start":"end"},T.heightFn=function(p,S,y){var E=h(p);return-.5*(1+Math.sin(E))*y};var w=S4e(u);r.angularTickLayout!==w&&(i["angular-axis"].selectAll("."+f._id+"tick").remove(),r.angularTickLayout=w);var k=c?[1/0].concat(f.tickvals||[]).map(function(p){return pu.tickText(f,p,!0,!1)}):pu.calcTicks(f);c&&(k[0].text="\u221E",k[0].fontSize*=1.75);var x;if(t.gridshape==="linear"?(x=k.map(h),va.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,f.type==="category"&&(k=k.filter(function(p){return va.isAngleInsideSector(h(p),r.sectorInRad)})),f.visible){var M=f.ticks==="inside"?-1:1,A=(f.linewidth||1)/2;pu.drawTicks(n,f,{vals:k,layer:i["angular-axis"],path:"M"+M*A+",0h"+M*f.ticklen,transFn:m,crisp:!1}),pu.drawGrid(n,f,{vals:k,layer:i["angular-grid"],path:b,transFn:va.noop,crisp:!1}),pu.drawLabels(n,f,{vals:k,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:T})}l3(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:xs(s,l)}).attr("stroke-width",u.linewidth).call(vz.stroke,u.linecolor)};Rs.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Rs.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=lp.MINZOOM,s=lp.OFFEDGE,l=t.radius,u=t.innerRadius,f=t.cx,c=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,m=t.vangles,b=t.radialAxis,g=Cd.clampTiny,_=Cd.findXYatLength,T=Cd.findEnclosingVertexAngles,w=lp.cornerHalfWidth,k=lp.cornerLen/2,x,M,A=Sd.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");Am.select(A).attr("d",t.pathSubplot()).attr("transform",xs(f,c)),A.onmousemove=function(W){w4e.hover(n,W,t.id),n._fullLayout._lasthover=A,n._fullLayout._hoversubplot=t.id},A.onmouseout=function(W){n._dragging||oC.unhover(n,W)};var p={element:A,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},S,y,E,C,L,R,I,P,D;function q(W,fe){return Math.sqrt(W*W+fe*fe)}function N(W,fe){return q(W-h,fe-d)}function U(W,fe){return Math.atan2(d-fe,W-h)}function G(W,fe){return[W*Math.cos(fe),W*Math.sin(-fe)]}function ee(W,fe){if(W===0)return t.pathSector(2*w);var ge=k/W,Ce=fe-ge,Ne=fe+ge,pe=Math.max(0,Math.min(W,l)),me=pe-w,Ie=pe+w;return"M"+G(me,Ce)+"A"+[me,me]+" 0,0,0 "+G(me,Ne)+"L"+G(Ie,Ne)+"A"+[Ie,Ie]+" 0,0,1 "+G(Ie,Ce)+"Z"}function Q(W,fe,ge){if(W===0)return t.pathSector(2*w);var Ce=G(W,fe),Ne=G(W,ge),pe=g((Ce[0]+Ne[0])/2),me=g((Ce[1]+Ne[1])/2),Ie,Re;if(pe&&me){var ze=me/pe,Be=-1/ze,tt=_(w,ze,pe,me);Ie=_(k,Be,tt[0][0],tt[0][1]),Re=_(k,Be,tt[1][0],tt[1][1])}else{var rt,ce;me?(rt=k,ce=w):(rt=w,ce=k),Ie=[[pe-rt,me-ce],[pe+rt,me-ce]],Re=[[pe-rt,me+ce],[pe+rt,me+ce]]}return"M"+Ie.join("L")+"L"+Re.reverse().join("L")+"Z"}function j(){E=null,C=null,L=t.pathSubplot(),R=!1;var W=n._fullLayout[t.id];I=vkt(W.bgcolor).getLuminance(),P=Sd.makeZoombox(a,I,f,c,L),P.attr("fill-rule","evenodd"),D=Sd.makeCorners(a,f,c),dz(n)}function O(W,fe){return fe=Math.max(Math.min(fe,l),u),Wo?(W-1&&W===1&&bkt(fe,n,[t.xaxis],[t.yaxis],t.id,p),ge.indexOf("event")>-1&&w4e.click(n,fe,t.id)}p.prepFn=function(W,fe,ge){var Ce=n._fullLayout.dragmode,Ne=A.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var pe=n._fullLayout._invTransform;x=n._fullLayout._invScaleX,M=n._fullLayout._invScaleY;var me=va.apply3DTransform(pe)(fe-Ne.left,ge-Ne.top);if(S=me[0],y=me[1],m){var Ie=Cd.findPolygonOffset(l,v[0],v[1],m);S+=h+Ie[0],y+=d+Ie[1]}switch(Ce){case"zoom":p.clickFn=ne,r||(m?p.moveFn=oe:p.moveFn=K,p.doneFn=te,j(W,fe,ge));break;case"select":case"lasso":xkt(W,fe,ge,p,Ce);break}},oC.init(p)};Rs.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,f=n.radialAxis,c=lp.radialDragBoxSize,h=c/2;if(!f.visible)return;var d=up(n.radialAxisAngle),v=f._rl,m=v[0],b=v[1],g=v[r],_=.75*(v[1]-v[0])/(1-n.getHole(t))/o,T,w,k;r?(T=l+(o+h)*Math.cos(d),w=u-(o+h)*Math.sin(d),k="radialdrag"):(T=l+(s-h)*Math.cos(d),w=u-(s-h)*Math.sin(d),k="radialdrag-inner");var x=Sd.makeRectDragger(a,k,"crosshair",-h,-h,c,c),M={element:x,gd:i};e.dragmode===!1&&(M.dragmode=!1),l3(Am.select(x),f.visible&&s0!=(r?S>m:S=90||i>90&&a>=450?d=1:s<=0&&u<=0?d=0:d=Math.max(s,u),i<=180&&a>=180||i>180&&a>=540?f=-1:o>=0&&l>=0?f=0:f=Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?c=-1:s>=0&&u>=0?c=0:c=Math.min(s,u),a>=360?h=1:o<=0&&l<=0?h=0:h=Math.max(o,l),[f,c,h,d]}function C4e(e,t){var r=function(i){return va.angleDist(e,i)},n=va.findIndexOfMin(t,r);return t[n]}function l3(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var pz=J((Cjt,F4e)=>{"use strict";var kkt=Ho(),Tn=hl(),Skt=Wa().attributes,Bf=gt().extendFlat,D4e=La().overrideAll,R4e=D4e({color:Tn.color,showline:Bf({},Tn.showline,{dflt:!0}),linecolor:Tn.linecolor,linewidth:Tn.linewidth,showgrid:Bf({},Tn.showgrid,{dflt:!0}),gridcolor:Tn.gridcolor,gridwidth:Tn.gridwidth,griddash:Tn.griddash},"plot","from-root"),P4e=D4e({tickmode:Tn.minor.tickmode,nticks:Tn.nticks,tick0:Tn.tick0,dtick:Tn.dtick,tickvals:Tn.tickvals,ticktext:Tn.ticktext,ticks:Tn.ticks,ticklen:Tn.ticklen,tickwidth:Tn.tickwidth,tickcolor:Tn.tickcolor,ticklabelstep:Tn.ticklabelstep,showticklabels:Tn.showticklabels,labelalias:Tn.labelalias,showtickprefix:Tn.showtickprefix,tickprefix:Tn.tickprefix,showticksuffix:Tn.showticksuffix,ticksuffix:Tn.ticksuffix,showexponent:Tn.showexponent,exponentformat:Tn.exponentformat,minexponent:Tn.minexponent,separatethousands:Tn.separatethousands,tickfont:Tn.tickfont,tickangle:Tn.tickangle,tickformat:Tn.tickformat,tickformatstops:Tn.tickformatstops,layer:Tn.layer},"plot","from-root"),I4e={visible:Bf({},Tn.visible,{dflt:!0}),type:Bf({},Tn.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Tn.autotypenumbers,autorangeoptions:{minallowed:Tn.autorangeoptions.minallowed,maxallowed:Tn.autorangeoptions.maxallowed,clipmin:Tn.autorangeoptions.clipmin,clipmax:Tn.autorangeoptions.clipmax,include:Tn.autorangeoptions.include,editType:"plot"},autorange:Bf({},Tn.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc",description:["If *tozero*`, the range extends to 0,","regardless of the input data","If *nonnegative*, the range is non-negative,","regardless of the input data.","If *normal*, the range is computed in relation to the extrema","of the input data (same behavior as for cartesian axes)."].join(" ")},minallowed:Bf({},Tn.minallowed,{editType:"plot"}),maxallowed:Bf({},Tn.maxallowed,{editType:"plot"}),range:Bf({},Tn.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:Tn.categoryorder,categoryarray:Tn.categoryarray,angle:{valType:"angle",editType:"plot",description:["Sets the angle (in degrees) from which the radial axis is drawn.","Note that by default, radial axis line on the theta=0 line","corresponds to a line pointing right (like what mathematicians prefer).","Defaults to the first `polar.sector` angle."].join(" ")},autotickangles:Tn.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot",description:["Determines on which side of radial axis line","the tick and tick labels appear."].join(" ")},title:{text:Bf({},Tn.title.text,{editType:"plot",dflt:""}),font:Bf({},Tn.title.font,{editType:"plot"}),editType:"plot"},hoverformat:Tn.hoverformat,uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis `range`,","`autorange`, `angle`, and `title` if in `editable: true` configuration.","Defaults to `polar.uirevision`."].join(" ")},editType:"calc",_deprecated:{title:Tn._deprecated.title,titlefont:Tn._deprecated.titlefont}};Bf(I4e,R4e,P4e);var q4e={visible:Bf({},Tn.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0,description:["Sets the angular axis type.","If *linear*, set `thetaunit` to determine the unit in which axis value are shown.","If *category, use `period` to set the number of integer coordinates around polar axis."].join(" ")},autotypenumbers:Tn.autotypenumbers,categoryorder:Tn.categoryorder,categoryarray:Tn.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc",description:["Sets the format unit of the formatted *theta* values.","Has an effect only when `angularaxis.type` is *linear*."].join(" ")},period:{valType:"number",editType:"calc",min:0,description:["Set the angular period.","Has an effect only when `angularaxis.type` is *category*."].join(" ")},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc",description:["Sets the direction corresponding to positive angles."].join(" ")},rotation:{valType:"angle",editType:"calc",description:["Sets that start position (in degrees) of the angular axis","By default, polar subplots with `direction` set to *counterclockwise*","get a `rotation` of *0*","which corresponds to due East (like what mathematicians prefer).","In turn, polar with `direction` set to *clockwise* get a rotation of *90*","which corresponds to due North (like on a compass),"].join(" ")},hoverformat:Tn.hoverformat,uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis `rotation`.","Defaults to `polar.uirevision`."].join(" ")},editType:"calc"};Bf(q4e,R4e,P4e);F4e.exports={domain:Skt({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot",description:["Sets angular span of this polar subplot with two angles (in degrees).","Sector are assumed to be spanned in the counterclockwise direction","with *0* corresponding to rightmost limit of the polar subplot."].join(" ")},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot",description:["Sets the fraction of the radius to cut out of the polar subplot."].join(" ")},bgcolor:{valType:"color",editType:"plot",dflt:kkt.background,description:"Set the background color of the subplot"},radialaxis:I4e,angularaxis:q4e,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot",description:["Determines if the radial axis grid lines and angular axis line are drawn","as *circular* sectors or as *linear* (polygon) sectors.","Has an effect only when the angular axis has `type` *category*.","Note that `radialaxis.angle` is snapped to the angle of the closest","vertex when `gridshape` is *circular*","(so that radial axis scale is the same as the data scale)."].join(" ")},uirevision:{valType:"any",editType:"none",description:["Controls persistence of user-driven changes in axis attributes,","if not overridden in the individual axes.","Defaults to `layout.uirevision`."].join(" ")},editType:"calc"}});var B4e=J((Ejt,O4e)=>{"use strict";var lC=gt(),Ckt=qr(),Ekt=ki(),Lkt=Kw(),Dkt=Nu().getSubplotData,Rkt=Wp(),Pkt=N1(),Ikt=Xp(),qkt=Zp(),Fkt=ik(),zkt=ak(),Nkt=cD(),Okt=V1(),N4e=pz(),Bkt=fz(),uC=tC(),z4e=uC.axisNames;function Ukt(e,t,r,n){var i=r("bgcolor");n.bgColor=Ckt.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=Dkt(n.fullData,uC.name,n.id),s=n.layoutOut,l;function u(P,D){return r(l+"."+P,D)}for(var f=0;f{"use strict";var jkt=Nu().getSubplotCalcData,Vkt=gt().counterRegex,Ykt=L4e(),H4e=tC(),j4e=H4e.attr,Sm=H4e.name,U4e=Vkt(Sm),V4e={};V4e[j4e]={valType:"subplotid",dflt:Sm,editType:"calc",description:["Sets a reference between this trace's data coordinates and","a polar subplot.","If *polar* (the default value), the data refer to `layout.polar`.","If *polar2*, the data refer to `layout.polar2`, and so on."].join(" ")};function Gkt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Sm],i=0;i{"use strict";var Xkt=Jn().hovertemplateAttrs,Zkt=Jn().texttemplateAttrs,fC=cn().extendFlat,Jkt=gg(),Uf=ds(),$kt=Qi(),Jx=Uf.line;G4e.exports={mode:Uf.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes",description:"Sets the radial coordinates"},theta:{valType:"data_array",editType:"calc+clearAxisTypes",description:"Sets the angular coordinates"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",description:["Alternate to `r`.","Builds a linear space of r coordinates.","Use with `dr`","where `r0` is the starting coordinate and `dr` the step."].join(" ")},dr:{valType:"number",dflt:1,editType:"calc",description:"Sets the r coordinate step."},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",description:["Alternate to `theta`.","Builds a linear space of theta coordinates.","Use with `dtheta`","where `theta0` is the starting coordinate and `dtheta` the step."].join(" ")},dtheta:{valType:"number",editType:"calc",description:["Sets the theta coordinate step.","By default, the `dtheta` step equals the subplot's period divided","by the length of the `r` coordinates."].join(" ")},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes",description:["Sets the unit of input *theta* values.","Has an effect only when on *linear* angular axes."].join(" ")},text:Uf.text,texttemplate:Zkt({editType:"plot"},{keys:["r","theta","text"]}),hovertext:Uf.hovertext,line:{color:Jx.color,width:Jx.width,dash:Jx.dash,backoff:Jx.backoff,shape:fC({},Jx.shape,{values:["linear","spline"]}),smoothing:Jx.smoothing,editType:"calc"},connectgaps:Uf.connectgaps,marker:Uf.marker,cliponaxis:fC({},Uf.cliponaxis,{dflt:!1}),textposition:Uf.textposition,textfont:Uf.textfont,fill:fC({},Uf.fill,{values:["none","toself","tonext"],dflt:"none",description:["Sets the area to fill with a solid color.","Use with `fillcolor` if not *none*.","scatterpolar has a subset of the options available to scatter.","*toself* connects the endpoints of the trace (or each segment","of the trace if it has gaps) into a closed shape.","*tonext* fills the space between two traces if one completely","encloses the other (eg consecutive contour lines), and behaves like","*toself* if there is no trace before it. *tonext* should not be","used if one trace does not enclose the other."].join(" ")}),fillcolor:Jkt(),hoverinfo:fC({},$kt.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:Uf.hoveron,hovertemplate:Xkt(),selected:Uf.selected,unselected:Uf.unselected}});var mz=J((Rjt,Z4e)=>{"use strict";var hC=gt(),$x=fs(),Kkt=bg(),Qkt=wg(),W4e=nw(),eSt=_g(),tSt=uy(),rSt=pg().PTS_LINESONLY,nSt=cC();function iSt(e,t,r,n){function i(s,l){return hC.coerce(e,t,nSt,s,l)}var a=X4e(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a{"use strict";var aSt=gt(),J4e=nn();$4e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var l=o.c2l(t.r);i.rLabel=J4e.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?aSt.rad2deg(t.theta):t.theta;return i.thetaLabel=J4e.tickText(s,u,!0).text,i}});var eCe=J((Ijt,Q4e)=>{"use strict";var K4e=dn(),oSt=oi().BADNUM,sSt=nn(),lSt=Ag(),uSt=nd(),fSt=oh(),cSt=Mg().calcMarkerSize;Q4e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),l=o.makeCalcdata(r,"theta"),u=r._length,f=new Array(u),c=0;c{"use strict";var hSt=lw(),tCe=oi().BADNUM;rCe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=r.radialAxis,u=r.angularAxis,f=0;f{"use strict";var vSt=uw();function dSt(e,t,r,n){var i=vSt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,iCe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function iCe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=e.hi||t.hoverinfo,u=[];function f(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var c=l.split("+");c.indexOf("all")!==-1&&(c=["r","theta","text"]),c.indexOf("r")!==-1&&f(i,n.rLabel),c.indexOf("theta")!==-1&&f(a,n.thetaLabel),c.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("
")}}aCe.exports={hoverPoints:dSt,makeHoverPointText:iCe}});var sCe=J((zjt,oCe)=>{"use strict";oCe.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:gz(),categories:["polar","symbols","showLegend","scatter-like"],attributes:cC(),supplyDefaults:mz().supplyDefaults,colorbar:pc(),formatLabels:yz(),calc:eCe(),plot:nCe(),style:Ef().style,styleOnSelect:Ef().styleOnSelect,hoverPoints:xz().hoverPoints,selectPoints:fw(),meta:{hrName:"scatter_polar",description:["The scatterpolar trace type encompasses line charts, scatter charts, text charts, and bubble charts","in polar coordinates.","The data visualized as scatter point or lines is set in","`r` (radial) and `theta` (angular) coordinates","Text (appearing either on the chart or on hover only) is via `text`.","Bubble charts are achieved by setting `marker.size` and/or `marker.color`","to numerical arrays."].join(" ")}}});var uCe=J((Njt,lCe)=>{"use strict";lCe.exports=sCe()});var bz=J((Ojt,fCe)=>{"use strict";var pSt=Jn().hovertemplateAttrs,Kx=cn().extendFlat,fp=cC(),cp=ov();fCe.exports={r:fp.r,theta:fp.theta,r0:fp.r0,dr:fp.dr,theta0:fp.theta0,dtheta:fp.dtheta,thetaunit:fp.thetaunit,base:Kx({},cp.base,{description:["Sets where the bar base is drawn (in radial axis units).","In *stack* barmode,","traces that set *base* will be excluded","and drawn in *overlay* mode instead."].join(" ")}),offset:Kx({},cp.offset,{description:["Shifts the angular position where the bar is drawn","(in *thetatunit* units)."].join(" ")}),width:Kx({},cp.width,{description:["Sets the bar angular width (in *thetaunit* units)."].join(" ")}),text:Kx({},cp.text,{description:["Sets hover text elements associated with each bar.","If a single string, the same string appears over all bars.","If an array of string, the items are mapped in order to the","this trace's coordinates."].join(" ")}),hovertext:Kx({},cp.hovertext,{description:"Same as `text`."}),marker:gSt(),hoverinfo:fp.hoverinfo,hovertemplate:pSt(),selected:cp.selected,unselected:cp.unselected};function gSt(){var e=Kx({},cp.marker);return delete e.cornerradius,e}});var wz=J((Bjt,cCe)=>{"use strict";cCe.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc",description:["Determines how bars at the same location coordinate","are displayed on the graph.","With *stack*, the bars are stacked on top of one another","With *overlay*, the bars are plotted over one another,","you might need to reduce *opacity* to see multiple bars."].join(" ")},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc",description:["Sets the gap between bars of","adjacent location coordinates.","Values are unitless, they represent fractions of the minimum difference","in bar positions in the data."].join(" ")}}});var dCe=J((Ujt,vCe)=>{"use strict";var hCe=gt(),mSt=mz().handleRThetaDefaults,ySt=Bk(),xSt=bz();vCe.exports=function(t,r,n,i){function a(s,l){return hCe.coerce(t,r,xSt,s,l)}var o=mSt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),ySt(t,r,a,n,i),hCe.coerceSelectionMarkerOpacity(r,a)}});var gCe=J((Hjt,pCe)=>{"use strict";var bSt=gt(),wSt=wz();pCe.exports=function(e,t,r){var n={},i;function a(l,u){return bSt.coerce(e[i]||{},t[i],wSt,l,u)}for(var o=0;o{"use strict";var mCe=nu().hasColorscale,yCe=Uu(),_St=gt().isArrayOrTypedArray,TSt=Sw(),ASt=kg().setGroupPositions,MSt=oh(),kSt=zr().traceIs,SSt=gt().extendFlat;function CSt(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),l=t._length,u=new Array(l),f=o,c=s,h=0;h{"use strict";var bCe=Nr(),vC=dn(),Qx=gt(),LSt=ln(),Tz=nC();wCe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=DSt(r),f=r.layers.frontplot.select("g.barlayer");Qx.makeTraceGroups(f,n,"trace bars").each(function(){var c=bCe.select(this),h=Qx.ensureSingle(c,"g","points"),d=h.selectAll("g.point").data(Qx.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(v){var m=bCe.select(this),b=v.rp0=s.c2p(v.s0),g=v.rp1=s.c2p(v.s1),_=v.thetag0=l.c2g(v.p0),T=v.thetag1=l.c2g(v.p1),w;if(!vC(b)||!vC(g)||!vC(_)||!vC(T)||b===g||_===T)w="M0,0Z";else{var k=s.c2g(v.s1),x=(_+T)/2;v.ct=[a.c2p(k*Math.cos(x)),o.c2p(k*Math.sin(x))],w=u(b,g,_,T)}Qx.ensureSingle(m,"path").attr("d",w)}),LSt.setClipUrl(c,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function DSt(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;Qx.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=Tz.findEnclosingVertexAngles(s,e.vangles)[0],f=Tz.findEnclosingVertexAngles(l,e.vangles)[1],c=[u,(s+l)/2,f];return Tz.pathPolygonAnnulus(n,i,s,l,c,t,r)}:function(n,i,a,o){return Qx.pathAnnulus(n,i,a,o,t,r)}}});var ACe=J((Yjt,TCe)=>{"use strict";var RSt=go(),Az=gt(),PSt=Dy().getTraceColor,ISt=Az.fillText,qSt=xz().makeHoverPointText,FSt=nC().isPtInsidePolygon;TCe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,l=o.angularAxis,u=o.vangles,f=u?FSt:Az.isPtInsideSector,c=t.maxHoverDistance,h=l._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),v=Math.atan2(n,r);s.range[0]>s.range[1]&&(v+=Math.PI);var m=function(T){return f(d,v,[T.rp0,T.rp1],[T.thetag0,T.thetag1],u)?c+Math.min(1,Math.abs(T.thetag1-T.thetag0)/h)-1+(T.rp1-d)/(T.rp1-T.rp0)-1:1/0};if(RSt.getClosest(i,m,t),t.index!==!1){var b=t.index,g=i[b];t.x0=t.x1=g.ct[0],t.y0=t.y1=g.ct[1];var _=Az.extendFlat({},g,{r:g.s,theta:g.p});return ISt(g,a,t),qSt(_,a,o,t),t.hovertemplate=a.hovertemplate,t.color=PSt(a,g),t.xLabelVal=t.yLabelVal=void 0,g.s<0&&(t.idealAlign="left"),[t]}}});var kCe=J((Gjt,MCe)=>{"use strict";MCe.exports={moduleType:"trace",name:"barpolar",basePlotModule:gz(),categories:["polar","bar","showLegend"],attributes:bz(),layoutAttributes:wz(),supplyDefaults:dCe(),supplyLayoutDefaults:gCe(),calc:_z().calc,crossTraceCalc:_z().crossTraceCalc,plot:_Ce(),colorbar:pc(),formatLabels:yz(),style:mc().style,styleOnSelect:mc().styleOnSelect,hoverPoints:ACe(),selectPoints:Ry(),meta:{hrName:"bar_polar",description:["The data visualized by the radial span of the bars is set in `r`"].join(" ")}}});var CCe=J((Wjt,SCe)=>{"use strict";SCe.exports=kCe()});var u3=J(ECe=>{"use strict";ECe.pointsAccessorFunction=function(e,t){for(var r,n,i=0;i{"use strict";var zSt=nn(),eb=gt(),NSt=o0(),OSt=u3().pointsAccessorFunction,oo=oi().BADNUM;tb.moduleType="transform";tb.name="aggregate";var RCe=tb.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this aggregate transform is enabled or disabled."].join(" ")},groups:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc",description:["Sets the grouping target to which the aggregation is applied.","Data points with matching group values will be coalesced into","one point, using the supplied aggregation functions to reduce data","in other data arrays.","If a string, `groups` is assumed to be a reference to a data array","in the parent trace object.","To aggregate by nested variables, use *.* to access them.","For example, set `groups` to *marker.color* to aggregate","about the marker color array.","If an array, `groups` is itself the data array by which we aggregate."].join(" ")},aggregations:{_isLinkedToArray:"aggregation",target:{valType:"string",editType:"calc",description:["A reference to the data array in the parent trace to aggregate.","To aggregate by nested variables, use *.* to access them.","For example, set `groups` to *marker.color* to aggregate","over the marker color array.","The referenced array must already exist, unless `func` is *count*,","and each array may only be referenced once."].join(" ")},func:{valType:"enumerated",values:["count","sum","avg","median","mode","rms","stddev","min","max","first","last","change","range"],dflt:"first",editType:"calc",description:["Sets the aggregation function.","All values from the linked `target`, corresponding to the same value","in the `groups` array, are collected and reduced by this function.","*count* is simply the number of values in the `groups` array, so does","not even require the linked array to exist. *first* (*last*) is just","the first (last) linked value.","Invalid values are ignored, so for example in *avg* they do not","contribute to either the numerator or the denominator.","Any data type (numeric, date, category) may be aggregated with any","function, even though in certain cases it is unlikely to make sense,","for example a sum of dates or average of categories.","*median* will return the average of the two central values if there is","an even count. *mode* will return the first value to reach the maximum","count, in case of a tie.","*change* will return the difference between the first and last linked values.","*range* will return the difference between the min and max linked values."].join(" ")},funcmode:{valType:"enumerated",values:["sample","population"],dflt:"sample",editType:"calc",description:["*stddev* supports two formula variants: *sample* (normalize by N-1)","and *population* (normalize by N)."].join(" ")},enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this aggregation function is enabled or disabled."].join(" ")},editType:"calc"},editType:"calc"},LCe=RCe.aggregations;tb.supplyDefaults=function(e,t){var r={},n;function i(b,g){return eb.coerce(e,r,RCe,b,g)}var a=i("enabled");if(!a)return r;var o=NSt.findArrayAttributes(t),s={};for(n=0;nl&&(l=h,u=c)}}return l?i(u):oo};case"rms":return function(a,o){for(var s=0,l=0,u=0;u{"use strict";ICe.exports=PCe()});var FCe=J(Cm=>{"use strict";var hp=gt(),VSt=zr(),YSt=nn(),GSt=u3().pointsAccessorFunction,Cz=jw(),Mz=Cz.COMPARISON_OPS,kz=Cz.INTERVAL_OPS,Sz=Cz.SET_OPS;Cm.moduleType="transform";Cm.name="filter";Cm.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this filter transform is enabled or disabled."].join(" ")},target:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc",description:["Sets the filter target by which the filter is applied.","If a string, `target` is assumed to be a reference to a data array","in the parent trace object.","To filter about nested variables, use *.* to access them.","For example, set `target` to *marker.color* to filter","about the marker color array.","If an array, `target` is then the data array by which the filter is applied."].join(" ")},operation:{valType:"enumerated",values:[].concat(Mz).concat(kz).concat(Sz),dflt:"=",editType:"calc",description:["Sets the filter operation.","*=* keeps items equal to `value`","*!=* keeps items not equal to `value`","*<* keeps items less than `value`","*<=* keeps items less than or equal to `value`","*>* keeps items greater than `value`","*>=* keeps items greater than or equal to `value`","*[]* keeps items inside `value[0]` to `value[1]` including both bounds","*()* keeps items inside `value[0]` to `value[1]` excluding both bounds","*[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1]","*(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1]","*][* keeps items outside `value[0]` to `value[1]` and equal to both bounds","*)(* keeps items outside `value[0]` to `value[1]`","*](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]`","*)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]`","*{}* keeps items present in a set of values","*}{* keeps items not present in a set of values"].join(" ")},value:{valType:"any",dflt:0,editType:"calc",description:["Sets the value or values by which to filter.","Values are expected to be in the same type as the data linked","to `target`.","When `operation` is set to one of","the comparison values ("+Mz+")","`value` is expected to be a number or a string.","When `operation` is set to one of the interval values","("+kz+")","`value` is expected to be 2-item array where the first item","is the lower bound and the second item is the upper bound.","When `operation`, is set to one of the set values","("+Sz+")","`value` is expected to be an array with as many items as","the desired set elements."].join(" ")},preservegaps:{valType:"boolean",dflt:!1,editType:"calc",description:["Determines whether or not gaps in data arrays produced by the filter operation","are preserved.","Setting this to *true* might be useful when plotting a line chart","with `connectgaps` set to *false*."].join(" ")},editType:"calc"};Cm.supplyDefaults=function(e){var t={};function r(o,s){return hp.coerce(e,t,Cm.attributes,o,s)}var n=r("enabled");if(n){var i=r("target");if(hp.isArrayOrTypedArray(i)&&i.length===0)return t.enabled=!1,t;r("preservegaps"),r("operation"),r("value");var a=VSt.getComponentMethod("calendars","handleDefaults");a(e,t,"valuecalendar",null),a(e,t,"targetcalendar",null)}return t};Cm.calcTransform=function(e,t,r){if(!r.enabled)return;var n=hp.getTargetArray(t,r);if(!n)return;var i=r.target,a=n.length;t._length&&(a=Math.min(a,t._length));var o=r.targetcalendar,s=t._arrayAttrs,l=r.preservegaps;if(typeof i=="string"){var u=hp.nestedProperty(t,i+"calendar").get();u&&(o=u)}var f=YSt.getDataToCoordFunc(e,t,i,n),c=WSt(r,f,o),h={},d={},v=0;function m(k,x){for(var M=0;M":return function(f){return l(f)>u};case">=":return function(f){return l(f)>=u};case"[]":return function(f){var c=l(f);return c>=u[0]&&c<=u[1]};case"()":return function(f){var c=l(f);return c>u[0]&&c=u[0]&&cu[0]&&c<=u[1]};case"][":return function(f){var c=l(f);return c<=u[0]||c>=u[1]};case")(":return function(f){var c=l(f);return cu[1]};case"](":return function(f){var c=l(f);return c<=u[0]||c>u[1]};case")[":return function(f){var c=l(f);return c=u[1]};case"{}":return function(f){return u.indexOf(l(f))!==-1};case"}{":return function(f){return u.indexOf(l(f))===-1}}}});var NCe=J((Kjt,zCe)=>{"use strict";zCe.exports=FCe()});var OCe=J(Ed=>{"use strict";var gu=gt(),XSt=o0(),ZSt=ea(),JSt=u3().pointsAccessorFunction;Ed.moduleType="transform";Ed.name="groupby";Ed.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this group-by transform is enabled or disabled."].join(" ")},groups:{valType:"data_array",dflt:[],editType:"calc",description:["Sets the groups in which the trace data will be split.","For example, with `x` set to *[1, 2, 3, 4]* and","`groups` set to *['a', 'b', 'a', 'b']*,","the groupby transform with split in one trace","with `x` [1, 3] and one trace with `x` [2, 4]."].join(" ")},nameformat:{valType:"string",editType:"calc",description:["Pattern by which grouped traces are named. If only one trace is present,",'defaults to the group name (`"%{group}"`), otherwise defaults to the group name','with trace name (`"%{group} (%{trace})"`). Available escape sequences are `%{group}`, which',"inserts the group name, and `%{trace}`, which inserts the trace name. If grouping","GDP data by country when more than one trace is present, for example, the",'default "%{group} (%{trace})" would return "Monaco (GDP per capita)".'].join(" ")},styles:{_isLinkedToArray:"style",target:{valType:"string",editType:"calc",description:["The group value which receives these styles."].join(" ")},value:{valType:"any",dflt:{},editType:"calc",description:["Sets each group styles.","For example, with `groups` set to *['a', 'b', 'a', 'b']*","and `styles` set to *[{target: 'a', value: { marker: { color: 'red' } }}]","marker points in group *'a'* will be drawn in red."].join(" "),_compareAsJSON:!0},editType:"calc"},editType:"calc"};Ed.supplyDefaults=function(e,t,r){var n,i={};function a(c,h){return gu.coerce(e,i,Ed.attributes,c,h)}var o=a("enabled");if(!o)return i;a("groups"),a("nameformat",r._dataLength>1?"%{group} (%{trace})":"%{group}");var s=e.styles,l=i.styles=[];if(s)for(n=0;n{"use strict";BCe.exports=OCe()});var HCe=J(Em=>{"use strict";var Ez=gt(),KSt=nn(),QSt=u3().pointsAccessorFunction,dC=oi().BADNUM;Em.moduleType="transform";Em.name="sort";Em.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc",description:["Determines whether this sort transform is enabled or disabled."].join(" ")},target:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc",description:["Sets the target by which the sort transform is applied.","If a string, *target* is assumed to be a reference to a data array","in the parent trace object.","To sort about nested variables, use *.* to access them.","For example, set `target` to *marker.size* to sort","about the marker size array.","If an array, *target* is then the data array by which","the sort transform is applied."].join(" ")},order:{valType:"enumerated",values:["ascending","descending"],dflt:"ascending",editType:"calc",description:["Sets the sort transform order."].join(" ")},editType:"calc"};Em.supplyDefaults=function(e){var t={};function r(i,a){return Ez.coerce(e,t,Em.attributes,i,a)}var n=r("enabled");return n&&(r("target"),r("order")),t};Em.calcTransform=function(e,t,r){if(r.enabled){var n=Ez.getTargetArray(t,r);if(n){var i=r.target,a=n.length;t._length&&(a=Math.min(a,t._length));var o=t._arrayAttrs,s=KSt.getDataToCoordFunc(e,t,i,n),l=e5t(r,n,s,a),u=QSt(t.transforms,r),f={},c,h;for(c=0;c{"use strict";jCe.exports=HCe()});var Tl=J((nVt,GCe)=>{"use strict";var YCe=Object.getOwnPropertySymbols,r5t=Object.prototype.hasOwnProperty,n5t=Object.prototype.propertyIsEnumerable;function i5t(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function a5t(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}GCe.exports=a5t()?Object.assign:function(e,t){for(var r,n=i5t(e),i,a=1;a{var gC=Tl();function WCe(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}gC(WCe.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function Lz(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw($n.local.invalidDate||$n.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function pC(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}gC(Lz.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e??this,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw($n.local.invalidDate||$n.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw($n.local.differentCalendars||$n.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+pC(Math.abs(this.year()),4)+"-"+pC(this.month(),2)+"-"+pC(this.day(),2)}});function Dz(){this.shortYearCutoff="+10"}gC(Dz.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,$n.local.invalidDate||$n.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new Lz(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,$n.local.invalidYear||$n.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,$n.local.invalidYear||$n.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+pC(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,$n.local.invalidYear||$n.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,$n.local.invalidMonth||$n.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,$n.local.invalidMonth||$n.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,$n.local.invalidYear||$n.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,$n.local.invalidDate||$n.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,$n.local.invalidDate||$n.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,$n.local.invalidDate||$n.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,$n.local.invalidDate||$n.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(f){for(;oc-1+f.minMonth;)a++,o-=c,c=f.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var l=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,l}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,$n.local.invalidDate||$n.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,$n.local.invalidDate||$n.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var $n=XCe.exports=new WCe;$n.cdate=Lz;$n.baseCalendar=Dz;$n.calendars.gregorian=Rz});var ZCe=J(()=>{var Pz=Tl(),Ps=Al();Pz(Ps.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"});Ps.local=Ps.regionalOptions[""];Pz(Ps.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});Pz(Ps.baseCalendar.prototype,{UNIX_EPOCH:Ps.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:Ps.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw Ps.local.invalidFormat||Ps.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(w,k){for(var x=1;T+x1},f=function(w,k,x,M){var A=""+k;if(u(w,M))for(;A.length1},_=function(E,C){var L=g(E,C),R=[2,3,L?4:2,L?4:2,10,11,20]["oyYJ@!".indexOf(E)+1],I=new RegExp("^-?\\d{1,"+R+"}"),P=t.substring(A).match(I);if(!P)throw(Ps.local.missingNumberAt||Ps.regionalOptions[""].missingNumberAt).replace(/\{0\}/,A);return A+=P[0].length,parseInt(P[0],10)},T=this,w=function(){if(typeof s=="function"){g("m");var E=s.call(T,t.substring(A));return A+=E.length,E}return _("m")},k=function(E,C,L,R){for(var I=g(E,R)?L:C,P=0;P-1){h=1,d=v;for(var y=this.daysInMonth(c,h);d>y;y=this.daysInMonth(c,h))h++,d-=y}return f>-1?this.fromJD(f):this.newDate(c,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch{}s=s.toLowerCase();for(var l=(s.match(/^c/)&&r?r.newDate():null)||a.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,f=u.exec(s);f;)l.add(parseInt(f[1],10),f[2]||"d"),f=u.exec(s);return l};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var JCe=J(()=>{var vp=Al(),o5t=Tl(),Iz=vp.instance();function mC(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}mC.prototype=new vp.baseCalendar;o5t(mC.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(l5t);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(u5t);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(f5t);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw vp.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw vp.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,vp.local.invalidyear),i=pp[n-pp[0]],a=i>>9&4095,o=i>>5&15,s=i&31,l;l=Iz.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=dp[e-dp[0]],n=r>>13,i=n?12:11;if(t>i)throw vp.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,vp.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=h5t(e,a,r,i);return Iz.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=Iz.fromJD(e),r=c5t(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(s5t),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(mC.prototype).add.call(this,e,t,r);if(r==="y"){var l=s.year(),u=s.month(),f=this.isIntercalaryMonth(l,o),c=a&&f?this.toMonthIndex(l,o,!0):this.toMonthIndex(l,o,!1);c!==u&&s.month(c)}return s}});var s5t=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,l5t=/^\d?\d[iI]?/m,u5t=/^闰?十?[一二三四五六七八九]?月/m,f5t=/^闰?十?[一二三四五六七八九]?/m;vp.calendars.chinese=mC;var dp=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],pp=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function c5t(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=pp[i.year-pp[0]],f=i.year<<9|i.month<<5|i.day;a.year=f>=u?i.year:i.year-1,u=pp[a.year-pp[0]];var c=u>>9&4095,h=u>>5&15,d=u&31,v,m=new Date(c,h-1,d),b=new Date(i.year,i.month-1,i.day);v=Math.round((b-m)/(24*3600*1e3));var g=dp[a.year-dp[0]],_;for(_=0;_<13;_++){var T=g&1<<12-_?30:29;if(v>13;return!w||_=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var l=typeof t=="number"&&t>=1&&t<=12;if(!l)throw new Error("Lunar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var f;typeof n=="object"?(f=!1,a=n):(f=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:f}}var c;c=o.day-1;var h=dp[o.year-dp[0]],d=h>>13,v;d&&(o.month>d||o.isIntercalary)?v=o.month:v=o.month-1;for(var m=0;m>9&4095,T=g>>5&15,w=g&31,k=new Date(_,T-1,w+c);return a.year=k.getFullYear(),a.month=1+k.getMonth(),a.day=k.getDate(),a}});var $Ce=J(()=>{var Lm=Al(),v5t=Tl();function qz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}qz.prototype=new Lm.baseCalendar;v5t(qz.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Lm.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Lm.local.invalidYear||Lm.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Lm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,Lm.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});Lm.calendars.coptic=qz});var KCe=J(()=>{var Ld=Al(),d5t=Tl();function Fz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Fz.prototype=new Ld.baseCalendar;d5t(Fz.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ld.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ld.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ld.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Ld.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Ld.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,Ld.local.invalidDate);return{century:p5t[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,Ld.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var p5t={20:"Fruitbat",21:"Anchovy"};Ld.calendars.discworld=Fz});var QCe=J(()=>{var Dm=Al(),g5t=Tl();function zz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}zz.prototype=new Dm.baseCalendar;g5t(zz.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Dm.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Dm.local.invalidYear||Dm.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Dm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,Dm.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});Dm.calendars.ethiopian=zz});var e6e=J(()=>{var gp=Al(),m5t=Tl();function Nz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Nz.prototype=new gp.baseCalendar;m5t(Nz.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,gp.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,yC(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,gp.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,gp.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,gp.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&yC(this.daysInYear(e),10)===5?30:t===9&&yC(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,gp.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,gp.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=ethis.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function yC(e,t){return e-t*Math.floor(e/t)}gp.calendars.hebrew=Nz});var t6e=J(()=>{var f3=Al(),y5t=Tl();function Oz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Oz.prototype=new f3.baseCalendar;y5t(Oz.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,f3.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,f3.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,f3.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});f3.calendars.islamic=Oz});var r6e=J(()=>{var c3=Al(),x5t=Tl();function Bz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Bz.prototype=new c3.baseCalendar;x5t(Bz.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,c3.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,c3.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,c3.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),l=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,l)}});c3.calendars.julian=Bz});var i6e=J(()=>{var Ec=Al(),b5t=Tl();function Hz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Hz.prototype=new Ec.baseCalendar;b5t(Hz.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ec.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ec.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ec.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,Ec.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ec.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,Ec.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Ec.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,Ec.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,Ec.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=Uz(e+8+(18-1)*20,365);return[Math.floor(t/20)+1,Uz(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[n6e(e+20,20),n6e(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,Ec.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function Uz(e,t){return e-t*Math.floor(e/t)}function n6e(e,t){return Uz(e-1,t)+1}Ec.calendars.mayan=Hz});var o6e=J(()=>{var Rm=Al(),w5t=Tl();function jz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}jz.prototype=new Rm.baseCalendar;var a6e=Rm.instance("gregorian");w5t(jz.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Rm.local.invalidYear||Rm.regionalOptions[""].invalidYear);return a6e.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Rm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Rm.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});Rm.calendars.nanakshahi=jz});var s6e=J(()=>{var Pm=Al(),_5t=Tl();function Vz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Vz.prototype=new Pm.baseCalendar;_5t(Vz.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Pm.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]>"u")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Pm.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]>"u"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,Pm.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=Pm.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var l=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(l))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(l,1,1).add(a,"d").toJD()},fromJD:function(e){var t=Pm.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)o++,o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r"u"&&(this.NEPALI_CALENDAR_DATA[r]=t)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}});Pm.calendars.nepali=Vz});var l6e=J(()=>{var rb=Al(),T5t=Tl();function xC(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}xC.prototype=new rb.baseCalendar;T5t(xC.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xE6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xE6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,rb.local.invalidYear);return((t.year()-(t.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,rb.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,rb.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e-(e>=0?474:473),a=474+Yz(i,2820);return r+(t<=7?(t-1)*31:(t-1)*30+6)+Math.floor((a*682-110)/2816)+(a-1)*365+Math.floor(i/2820)*1029983+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=e-this.toJD(475,1,1),r=Math.floor(t/1029983),n=Yz(t,1029983),i=2820;if(n!==1029982){var a=Math.floor(n/366),o=Yz(n,366);i=Math.floor((2134*a+2816*o+2815)/1028522)+a+1}var s=i+2820*r+474;s=s<=0?s-1:s;var l=e-this.toJD(s,1,1)+1,u=l<=186?Math.ceil(l/31):Math.ceil((l-6)/30),f=e-this.toJD(s,u,1)+1;return this.newDate(s,u,f)}});function Yz(e,t){return e-t*Math.floor(e/t)}rb.calendars.persian=xC;rb.calendars.jalali=xC});var u6e=J(()=>{var Im=Al(),A5t=Tl(),bC=Im.instance();function Gz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Gz.prototype=new Im.baseCalendar;A5t(Gz.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Im.local.invalidYear),r=this._t2gYear(t.year());return bC.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Im.local.invalidYear),i=this._t2gYear(n.year());return bC.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Im.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Im.local.invalidDate),i=this._t2gYear(n.year());return bC.toJD(i,n.month(),n.day())},fromJD:function(e){var t=bC.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Im.calendars.taiwan=Gz});var f6e=J(()=>{var qm=Al(),M5t=Tl(),wC=qm.instance();function Wz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Wz.prototype=new qm.baseCalendar;M5t(Wz.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,qm.local.invalidYear),r=this._t2gYear(t.year());return wC.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,qm.local.invalidYear),i=this._t2gYear(n.year());return wC.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,qm.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,qm.local.invalidDate),i=this._t2gYear(n.year());return wC.toJD(i,n.month(),n.day())},fromJD:function(e){var t=wC.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});qm.calendars.thai=Wz});var c6e=J(()=>{var Fm=Al(),k5t=Tl();function Xz(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Xz.prototype=new Fm.baseCalendar;k5t(Xz.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Fm.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Fm.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;an)return mp[i]-mp[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Fm.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+mp[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;nt);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,l=t-mp[r-1]+1;return this.newDate(o,s,l)},isValid:function(e,t,r){var n=Fm.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Fm.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Fm.calendars.ummalqura=Xz;var mp=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var v6e=J((qVt,h6e)=>{"use strict";h6e.exports=Al();ZCe();JCe();$Ce();KCe();QCe();e6e();t6e();r6e();i6e();o6e();s6e();l6e();u6e();f6e();c6e()});var b6e=J((FVt,x6e)=>{"use strict";var p6e=v6e(),h3=gt(),g6e=oi(),S5t=g6e.EPOCHJD,C5t=g6e.ONEDAY,$z={valType:"enumerated",values:h3.sortObjectKeys(p6e.calendars),editType:"calc",dflt:"gregorian"},m6e=function(e,t,r,n){var i={};return i[r]=$z,h3.coerce(e,t,i,r,n)},E5t=function(e,t,r,n){for(var i=0;i{"use strict";w6e.exports=b6e()});var A6e=J((NVt,T6e)=>{"use strict";T6e.exports={moduleType:"locale",name:"af",dictionary:{},format:{days:["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],shortDays:["Son","Maan","Dins","Woens","Don","Vry","Sat"],months:["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember"],shortMonths:["Jan","Feb","Mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],date:"%d/%m/%Y"}}});var k6e=J((OVt,M6e)=>{"use strict";M6e.exports={moduleType:"locale",name:"am",dictionary:{},format:{days:["\u1230\u1295\u12F4\u12ED","\u1218\u1295\u12F4\u12ED","\u1275\u12E9\u1235\u12F4\u12ED","\u12CC\u1295\u1235\u12F4\u12ED","\u1270\u122D\u1230\u12F4\u12ED","\u134D\u122B\u12ED\u12F4\u12ED","\u1233\u1270\u122D\u12F4\u12ED"],shortDays:["\u1230\u1295\u12F4","\u1218\u1295\u12F4","\u1275\u12E9\u1235","\u12CC\u1295\u1235","\u1270\u122D\u1230","\u134D\u122B\u12ED","\u1233\u1270\u122D"],months:["\u1303\u1295\u12CB\u122A","\u1348\u1265\u122D\u12CB\u122A","\u121B\u122D\u127D","\u12A0\u1355\u122A\u120D","\u121C\u12ED","\u1301\u1295","\u1301\u120B\u12ED","\u12A6\u1308\u1235\u1275","\u1234\u1355\u1274\u121D\u1260\u122D","\u12A6\u12AD\u1276\u1260\u122D","\u1296\u126C\u121D\u1260\u122D","\u12F2\u1234\u121D\u1260\u122D"],shortMonths:["\u1303\u1295\u12CB","\u1348\u1265\u122D","\u121B\u122D\u127D","\u12A0\u1355\u122A","\u121C\u12ED","\u1301\u1295","\u1301\u120B\u12ED","\u12A6\u1308\u1235","\u1234\u1355\u1274","\u12A6\u12AD\u1276","\u1296\u126C\u121D","\u12F2\u1234\u121D"],date:"%d/%m/%Y"}}});var C6e=J((BVt,S6e)=>{"use strict";S6e.exports={moduleType:"locale",name:"ar-DZ",dictionary:{},format:{days:["\u0627\u0644\u0623\u062D\u062F","\u0627\u0644\u0627\u062B\u0646\u064A\u0646","\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062E\u0645\u064A\u0633","\u0627\u0644\u062C\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062A"],shortDays:["\u0627\u0644\u0623\u062D\u062F","\u0627\u0644\u0627\u062B\u0646\u064A\u0646","\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062E\u0645\u064A\u0633","\u0627\u0644\u062C\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062A"],months:["\u062C\u0627\u0646\u0641\u064A","\u0641\u064A\u0641\u0631\u064A","\u0645\u0627\u0631\u0633","\u0623\u0641\u0631\u064A\u0644","\u0645\u0627\u064A","\u062C\u0648\u0627\u0646","\u062C\u0648\u064A\u0644\u064A\u0629","\u0623\u0648\u062A","\u0633\u0628\u062A\u0645\u0628\u0631","\u0623\u0643\u062A\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062F\u064A\u0633\u0645\u0628\u0631"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%d/%m/%Y"}}});var L6e=J((UVt,E6e)=>{"use strict";E6e.exports={moduleType:"locale",name:"ar-EG",dictionary:{},format:{days:["\u0627\u0644\u0623\u062D\u062F","\u0627\u0644\u0627\u062B\u0646\u064A\u0646","\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062E\u0645\u064A\u0633","\u0627\u0644\u062C\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062A"],shortDays:["\u0623\u062D\u062F","\u0627\u062B\u0646\u064A\u0646","\u062B\u0644\u0627\u062B\u0627\u0621","\u0623\u0631\u0628\u0639\u0627\u0621","\u062E\u0645\u064A\u0633","\u062C\u0645\u0639\u0629","\u0633\u0628\u062A"],months:["\u064A\u0646\u0627\u064A\u0631","\u0641\u0628\u0631\u0627\u064A\u0631","\u0645\u0627\u0631\u0633","\u0625\u0628\u0631\u064A\u0644","\u0645\u0627\u064A\u0648","\u064A\u0648\u0646\u064A\u0629","\u064A\u0648\u0644\u064A\u0648","\u0623\u063A\u0633\u0637\u0633","\u0633\u0628\u062A\u0645\u0628\u0631","\u0623\u0643\u062A\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062F\u064A\u0633\u0645\u0628\u0631"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%d/%m/%Y"}}});var R6e=J((HVt,D6e)=>{"use strict";D6e.exports={moduleType:"locale",name:"ar",dictionary:{},format:{days:["\u0627\u0644\u0623\u062D\u062F","\u0627\u0644\u0627\u062B\u0646\u064A\u0646","\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062E\u0645\u064A\u0633","\u0627\u0644\u062C\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062A"],shortDays:["\u0627\u0644\u0623\u062D\u062F","\u0627\u0644\u0627\u062B\u0646\u064A\u0646","\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062E\u0645\u064A\u0633","\u0627\u0644\u062C\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062A"],months:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064A\u0633\u0627\u0646","\u0622\u0630\u0627\u0631","\u062D\u0632\u064A\u0631\u0627\u0646","\u062A\u0645\u0648\u0632","\u0622\u0628","\u0623\u064A\u0644\u0648\u0644","\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644","\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%d/%m/%Y"}}});var I6e=J((jVt,P6e)=>{"use strict";P6e.exports={moduleType:"locale",name:"az",dictionary:{},format:{days:["Bazar","Bazar ert\u0259si","\xC7\u0259r\u015F\u0259nb\u0259 ax\u015Fam\u0131","\xC7\u0259r\u015F\u0259nb\u0259","C\xFCm\u0259 ax\u015Fam\u0131","C\xFCm\u0259","\u015E\u0259nb\u0259"],shortDays:["B","Be","\xC7a","\xC7","Ca","C","\u015E"],months:["Yanvar","Fevral","Mart","Aprel","May","\u0130yun","\u0130yul","Avqust","Sentyabr","Oktyabr","Noyabr","Dekabr"],shortMonths:["Yan","Fev","Mar","Apr","May","\u0130yun","\u0130yul","Avq","Sen","Okt","Noy","Dek"],date:"%d.%m.%Y"}}});var F6e=J((VVt,q6e)=>{"use strict";q6e.exports={moduleType:"locale",name:"bg",dictionary:{},format:{days:["\u041D\u0435\u0434\u0435\u043B\u044F","\u041F\u043E\u043D\u0435\u0434\u0435\u043B\u043D\u0438\u043A","\u0412\u0442\u043E\u0440\u043D\u0438\u043A","\u0421\u0440\u044F\u0434\u0430","\u0427\u0435\u0442\u0432\u044A\u0440\u0442\u044A\u043A","\u041F\u0435\u0442\u044A\u043A","\u0421\u044A\u0431\u043E\u0442\u0430"],shortDays:["\u041D\u0435\u0434","\u041F\u043E\u043D","\u0412\u0442\u043E","\u0421\u0440\u044F","\u0427\u0435\u0442","\u041F\u0435\u0442","\u0421\u044A\u0431"],months:["\u042F\u043D\u0443\u0430\u0440\u0438","\u0424\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0438\u043B","\u041C\u0430\u0439","\u042E\u043D\u0438","\u042E\u043B\u0438","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043F\u0442\u0435\u043C\u0432\u0440\u0438","\u041E\u043A\u0442\u043E\u043C\u0432\u0440\u0438","\u041D\u043E\u0435\u043C\u0432\u0440\u0438","\u0414\u0435\u043A\u0435\u043C\u0432\u0440\u0438"],shortMonths:["\u042F\u043D\u0443","\u0424\u0435\u0432","\u041C\u0430\u0440","\u0410\u043F\u0440","\u041C\u0430\u0439","\u042E\u043D\u0438","\u042E\u043B\u0438","\u0410\u0432\u0433","\u0421\u0435\u043F","\u041E\u043A\u0442","\u041D\u043E\u0432","\u0414\u0435\u043A"],date:"%d.%m.%Y"}}});var N6e=J((YVt,z6e)=>{"use strict";z6e.exports={moduleType:"locale",name:"bs",dictionary:{},format:{days:["Nedelja","Ponedeljak","Utorak","Srijeda","\u010Cetvrtak","Petak","Subota"],shortDays:["Ned","Pon","Uto","Sri","\u010Cet","Pet","Sub"],months:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],date:"%d.%m.%Y"}}});var B6e=J((GVt,O6e)=>{"use strict";O6e.exports={moduleType:"locale",name:"ca",dictionary:{},format:{days:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],shortDays:["Dug","Dln","Dmt","Dmc","Djs","Dvn","Dsb"],months:["Gener","Febrer","Mar\xE7","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],shortMonths:["Gen","Feb","Mar","Abr","Mai","Jun","Jul","Ago","Set","Oct","Nov","Des"],date:"%d/%m/%Y"}}});var H6e=J((WVt,U6e)=>{"use strict";U6e.exports={moduleType:"locale",name:"cs",dictionary:{Autoscale:"Auto rozsah","Box Select":"Obd\xE9ln\xEDkov\xFD v\xFDb\u011Br","Click to enter Colorscale title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu barevn\xE9 \u0161k\xE1ly","Click to enter Component A title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu komponenty A","Click to enter Component B title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu komponenty B","Click to enter Component C title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu komponenty C","Click to enter Plot title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu grafu","Click to enter X axis title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu osy X","Click to enter Y axis title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu osy Y","Click to enter radial axis title":"Klikn\u011Bte pro zad\xE1n\xED n\xE1zvu radi\xE1ln\xED osy","Compare data on hover":"Porovnat hodnoty p\u0159i najet\xED my\u0161\xED","Double-click on legend to isolate one trace":"Dvojklikem na legendu izolujete jedinou datovou sadu","Double-click to zoom back out":"Dvojklikem vr\xE1t\xEDte zv\u011Bt\u0161en\xED","Download plot as a png":"Ulo\u017Eit jako PNG","Download plot":"Ulo\u017Eit","Edit in Chart Studio":"Editovat v Chart Studio","IE only supports svg. Changing format to svg.":"IE podporuje pouze SVG form\xE1t. Zm\u011Bn\u011Bno na SVG.","Lasso Select":"Vyb\u011Br lasem","Orbital rotation":"Rotace (orbit\xE1ln\xED)",Pan:"Posunovat","Produced with Plotly.js":"Vytvo\u0159eno pomoc\xED Plotly.js",Reset:"Obnovit nastaven\xED","Reset axes":"Obnovit nastaven\xED os","Reset camera to default":"Obnovit nastaven\xED kamery na v\xFDchoz\xED stav","Reset camera to last save":"Obnovit nastaven\xED kamery na posledn\xED ulo\u017Een\xFD stav","Reset view":"Obnovit nastaven\xED pohledu","Reset views":"Obnovit nastaven\xED pohled\u016F","Show closest data on hover":"Zobrazit najbli\u017E\u0161\xED hodnotu p\u0159i najet\xED my\u0161\xED","Snapshot succeeded":"Sn\xEDmek vytvo\u0159en","Sorry, there was a problem downloading your snapshot!":"Omlouv\xE1me se, ale do\u0161lo k chyb\u011B stahov\xE1n\xED sn\xEDmku!","Taking snapshot - this may take a few seconds":"Vytv\xE1\u0159\xED se sn\xEDmek - m\u016F\u017Ee zabrat p\xE1r vte\u0159in",Zoom:"Zv\u011Bt\u0161en\xED","Zoom in":"Zv\u011Bt\u0161it","Zoom out":"Zmen\u0161it","close:":"zav\u0159\xEDt:",trace:"datov\xE1 sada","lat:":"Lat.:","lon:":"Lon.:","q1:":"q1:","q3:":"q3:","source:":"zdroj:","target:":"c\xEDl:","lower fence:":"doln\xED limit:","upper fence:":"horn\xED limit:","max:":"max.:","mean \xB1 \u03C3:":"pr\u016Fm\u011Br \xB1 \u03C3:","mean:":"pr\u016Fm\u011Br:","median:":"medi\xE1n:","min:":"min.:","new text":"nov\xFD text","Turntable rotation":"Rotace (oto\u010Dn\xFD st\u016Fl)","Toggle Spike Lines":"P\u0159epnout zobrazen\xED vod\xEDc\xEDch \u010Dar","open:":"otev\u0159\xEDt:","high:":"horn\xED:","low:":"doln\xED:","Toggle show closest data on hover":"P\u0159epnout zobrazov\xE1n\xED nejbli\u017E\u0161i hodnoty p\u0159i najet\xED my\u0161\xED","incoming flow count:":"po\u010Det dat na vstupu:","outgoing flow count:":"po\u010Det dat na v\xFDstupu:","kde:":"kde:"},format:{days:["ned\u011Ble","pond\u011Bl\xED","\xFAter\xFD","st\u0159eda","\u010Dtvrtek","p\xE1tek","sobota"],shortDays:["ne","po","\xFAt","st","\u010Dt","p\xE1","so"],months:["leden","\xFAnor","b\u0159ezen","duben","kv\u011Bten","\u010Derven","\u010Dervenec","srpen","z\xE1\u0159\xED","\u0159\xEDjen","listopad","prosinec"],shortMonths:["led","\xFAno","b\u0159e","dub","kv\u011B","\u010Der","\u010Dvc","srp","z\xE1\u0159","\u0159\xEDj","lis","pro"],date:"%d.%m.%Y",decimal:",",thousands:" "}}});var V6e=J((XVt,j6e)=>{"use strict";j6e.exports={moduleType:"locale",name:"cy",dictionary:{Autoscale:"Graddfa awtomatig","Box Select":"Dewiswch \xE2 blwch","Click to enter Colorscale title":"Cliciwch i nodi teitl Graddfa Liw","Click to enter Component A title":"Cliciwch i nodi teitl Cydran A","Click to enter Component B title":"Cliciwch i nodi teitl Cydran B","Click to enter Plot title":"Cliciwch i nodi teitl y Plot","Click to enter Component C title":"Cliciwch i nodi teitl Cydran C","Click to enter X axis title":"Cliciwch i nodi teitl echelin X","Click to enter Y axis title":"Cliciwch i nodi teitl echelin Y","Click to enter radial axis title":"Cliciwch i nodi teitl echelin reiddiol","Compare data on hover":"Cymharwch ddata wrth hofran","Double-click on legend to isolate one trace":"Dwbl-gliciwch ar yr allwedd i neilltuo un llinell","Double-click to zoom back out":"Dwbl-gliciwch i chwyddo'n \xF4l","Download plot":"Lawrlwythwch blot","Download plot as a png":"Lawrlwythwch y plot fel png","Edit in Chart Studio":"Golygu yn Chart Studio","IE only supports svg. Changing format to svg.":"Dim ond svg mae IE yn ei gefnogi. Newid fformat i svg.","Lasso Select":"Dewiswch \xE2 las\u0175","Orbital rotation":"Cylchdroi orbital",Pan:"Pan","Produced with Plotly.js":"Cynhyrchwyd gyda Plotly.js",Reset:"Ailosod","Reset axes":"Ailosod echelinau","Reset camera to default":"Ailosod camera i'r rhagosodiad","Reset camera to last save":"Ailosod camera i'r cadw diwethaf","Reset view":"Ailosodwch y golwg","Reset views":"Ailosod olygfeydd","Show closest data on hover":"Dangos y data agosaf wrth hofran","Snapshot succeeded":"Llwyddodd y Ciplun","Sorry, there was a problem downloading your snapshot!":"Mae'n ddrwg gennym, roedd problem wrth lawrlwytho eich ciplun!","Taking snapshot - this may take a few seconds":"Tynnu ciplun - gallai hyn gymryd ychydig o eiliadau","Toggle Spike Lines":"Toglo llinellau pigog","Toggle show closest data on hover":"Toglo dangos y data agosaf wrth hofran","Turntable rotation":"Cylchdroi trofwrdd",Zoom:"Chwyddo","Zoom in":"Closio","Zoom out":"Cilio","close:":"cau:","high:":"uchel:","incoming flow count:":"cyfrif llif sy'n dod i mewn:","kde:":"kde:","lat:":"lledred:","lon:":"hydred","low:":"isel:","lower fence:":"ffens isaf:","max:":"uchafbwynt:","mean \xB1 \u03C3:":"cymedr \xB1 \u03C3:","mean:":"cymedr:","median:":"canolrif:","min:":"isafbwynt:","new text":"testun newydd","open:":"agor:","outgoing flow count:":"cyfrif llif sy'n mynd allan:","q1:":"q1:","q3:":"q3:","source:":"ffynhonnell:","target:":"targed:",trace:"olin","upper fence:":"ffens uchaf:"},format:{days:["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"],shortDays:["Sul","Llun","Maw","Mer","Iau","Gwen","Sad"],months:["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"],shortMonths:["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Awst","Medi","Hyd","Tach","Rhag"],date:"%d/%m/%Y"}}});var G6e=J((ZVt,Y6e)=>{"use strict";Y6e.exports={moduleType:"locale",name:"da",dictionary:{},format:{days:["S\xF8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\xF8rdag"],shortDays:["S\xF8n","Man","Tir","Ons","Tor","Fre","L\xF8r"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],date:"%d-%m-%Y"}}});var X6e=J((JVt,W6e)=>{"use strict";W6e.exports={moduleType:"locale",name:"de-CH",dictionary:{},format:{days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","M\xE4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","M\xE4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],date:"%d.%m.%Y"}}});var J6e=J(($Vt,Z6e)=>{"use strict";Z6e.exports={moduleType:"locale",name:"de",dictionary:{Autoscale:"Automatische Skalierung","Box Select":"Rechteckauswahl","Click to enter Colorscale title":"Klicken, um den Farbskalatitel einzugeben","Click to enter Component A title":"Klicken, um den Titel der Komponente A einzugeben","Click to enter Component B title":"Klicken, um den Titel der Komponente B einzugeben","Click to enter Component C title":"Klicken, um den Titel der Komponente C einzugeben","Click to enter Plot title":"Klicken, um den Titel des Graphen einzugeben","Click to enter X axis title":"Klicken, um den Titel der X-Achse einzugeben","Click to enter Y axis title":"Klicken, um den Titel der Y-Achse einzugeben","Compare data on hover":"\xDCber die Daten fahren, um sie zu vergleichen","Double-click on legend to isolate one trace":"Daten isolieren durch Doppelklick in der Legende","Double-click to zoom back out":"Herauszoomen durch Doppelklick","Download plot as a png":"Graphen als PNG herunterladen","Download plot":"Graphen herunterladen","Edit in Chart Studio":"Im Chart Studio bearbeiten","IE only supports svg. Changing format to svg.":"IE unterst\xFCtzt nur SVG-Dateien. Format wird zu SVG gewechselt.","Lasso Select":"Lassoauswahl","Orbital rotation":"Orbitalrotation",Pan:"Verschieben","Produced with Plotly.js":"Erstellt mit Plotly.js",Reset:"Zur\xFCcksetzen","Reset axes":"Achsen zur\xFCcksetzen","Reset camera to default":"Kamera auf Standard zur\xFCcksetzen","Reset camera to last save":"Kamera auf letzte Speicherung zur\xFCcksetzen","Reset view":"Ansicht zur\xFCcksetzen","Reset views":"Ansichten zur\xFCcksetzen","Show closest data on hover":"Zeige n\xE4heste Daten beim \xDCberfahren","Snapshot succeeded":"Snapshot erfolgreich","Sorry, there was a problem downloading your snapshot!":"Es gab ein Problem beim Herunterladen des Snapshots","Taking snapshot - this may take a few seconds":"Erstelle einen Snapshot - dies kann einige Sekunden dauern",Zoom:"Zoom","Zoom in":"Hineinzoomen","Zoom out":"Herauszoomen","close:":"Schluss:",trace:"Datenspur","lat:":"Lat.:","lon:":"Lon.:","q1:":"q1:","q3:":"q3:","source:":"Quelle:","target:":"Ziel:","lower fence:":"Untere Schranke:","upper fence:":"Obere Schranke:","max:":"Max.:","mean \xB1 \u03C3:":"Mittelwert \xB1 \u03C3:","mean:":"Mittelwert:","median:":"Median:","min:":"Min.:","Turntable rotation":"Drehscheibenorbit","Toggle Spike Lines":"Bezugslinien an-/abschalten","open:":"Er\xF6ffnung:","high:":"H\xF6chstkurs:","low:":"Tiefstkurs:","Toggle show closest data on hover":"Anzeige der n\xE4hesten Daten an-/abschalten","incoming flow count:":"Anzahl eingehender Verbindungen:","outgoing flow count:":"Anzahl ausgehender Verbindungen:","kde:":"Dichte:"},format:{days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","M\xE4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","M\xE4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],date:"%d.%m.%Y",decimal:",",thousands:"."}}});var K6e=J((KVt,$6e)=>{"use strict";$6e.exports={moduleType:"locale",name:"el",dictionary:{},format:{days:["\u039A\u03C5\u03C1\u03B9\u03B1\u03BA\u03AE","\u0394\u03B5\u03C5\u03C4\u03AD\u03C1\u03B1","\u03A4\u03C1\u03AF\u03C4\u03B7","\u03A4\u03B5\u03C4\u03AC\u03C1\u03C4\u03B7","\u03A0\u03AD\u03BC\u03C0\u03C4\u03B7","\u03A0\u03B1\u03C1\u03B1\u03C3\u03BA\u03B5\u03C5\u03AE","\u03A3\u03AC\u03B2\u03B2\u03B1\u03C4\u03BF"],shortDays:["\u039A\u03C5\u03C1","\u0394\u03B5\u03C5","\u03A4\u03C1\u03B9","\u03A4\u03B5\u03C4","\u03A0\u03B5\u03BC","\u03A0\u03B1\u03C1","\u03A3\u03B1\u03B2"],months:["\u0399\u03B1\u03BD\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2","\u03A6\u03B5\u03B2\u03C1\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2","\u039C\u03AC\u03C1\u03C4\u03B9\u03BF\u03C2","\u0391\u03C0\u03C1\u03AF\u03BB\u03B9\u03BF\u03C2","\u039C\u03AC\u03B9\u03BF\u03C2","\u0399\u03BF\u03CD\u03BD\u03B9\u03BF\u03C2","\u0399\u03BF\u03CD\u03BB\u03B9\u03BF\u03C2","\u0391\u03CD\u03B3\u03BF\u03C5\u03C3\u03C4\u03BF\u03C2","\u03A3\u03B5\u03C0\u03C4\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2","\u039F\u03BA\u03C4\u03CE\u03B2\u03C1\u03B9\u03BF\u03C2","\u039D\u03BF\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2","\u0394\u03B5\u03BA\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2"],shortMonths:["\u0399\u03B1\u03BD","\u03A6\u03B5\u03B2","\u039C\u03B1\u03C1","\u0391\u03C0\u03C1","\u039C\u03B1\u03B9","\u0399\u03BF\u03C5\u03BD","\u0399\u03BF\u03C5\u03BB","\u0391\u03C5\u03B3","\u03A3\u03B5\u03C0","\u039F\u03BA\u03C4","\u039D\u03BF\u03B5","\u0394\u03B5\u03BA"],date:"%d/%m/%Y"}}});var eEe=J((QVt,Q6e)=>{"use strict";Q6e.exports={moduleType:"locale",name:"eo",dictionary:{},format:{days:["Diman\u0109o","Lundo","Mardo","Merkredo","\u0134a\u016Ddo","Vendredo","Sabato"],shortDays:["Dim","Lun","Mar","Mer","\u0134a\u016D","Ven","Sab"],months:["Januaro","Februaro","Marto","Aprilo","Majo","Junio","Julio","A\u016Dgusto","Septembro","Oktobro","Novembro","Decembro"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","A\u016Dg","Sep","Okt","Nov","Dec"],date:"%d/%m/%Y"}}});var rEe=J((eYt,tEe)=>{"use strict";tEe.exports={moduleType:"locale",name:"es-AR",dictionary:{},format:{days:["Domingo","Lunes","Martes","Mi\xE9rcoles","Jueves","Viernes","S\xE1bado"],shortDays:["Dom","Lun","Mar","Mi\xE9","Juv","Vie","S\xE1b"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],shortMonths:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],date:"%d/%m/%Y"}}});var iEe=J((tYt,nEe)=>{"use strict";nEe.exports={moduleType:"locale",name:"es-PE",dictionary:{},format:{days:["Domingo","Lunes","Martes","Mi\xE9rcoles","Jueves","Viernes","S\xE1bado"],shortDays:["Dom","Lun","Mar","Mi\xE9","Jue","Vie","Sab"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],shortMonths:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],date:"%d/%m/%Y",decimal:".",thousands:",",currency:["S/",""]}}});var oEe=J((rYt,aEe)=>{"use strict";aEe.exports={moduleType:"locale",name:"es",dictionary:{Autoscale:"Autoescalar","Box Select":"Seleccionar Caja","Click to enter Colorscale title":"Introducir el t\xEDtulo de la Escala de Color","Click to enter Component A title":"Introducir el t\xEDtulo del Componente A","Click to enter Component B title":"Introducir el t\xEDtulo del Componente B","Click to enter Component C title":"Introducir el t\xEDtulo del Componente C","Click to enter Plot title":"Introducir el t\xEDtulo de la Gr\xE1fica","Click to enter Plot subtitle":"Introducir el subt\xEDtulo de la Gr\xE1fica","Click to enter X axis title":"Introducir el t\xEDtulo del eje X","Click to enter Y axis title":"Introducir el t\xEDtulo del eje Y","Click to enter radial axis title":"Introducir el t\xEDtulo del eje radial","Compare data on hover":"Comparar datos al pasar por encima","Double-click on legend to isolate one trace":"Haga doble-clic en la leyenda para aislar una traza","Double-click to zoom back out":"Haga doble-clic para restaurar la escala","Download plot as a png":"Descargar gr\xE1fica como png","Download plot":"Descargar gr\xE1fica","Edit in Chart Studio":"Editar en Chart Studio","IE only supports svg. Changing format to svg.":"IE solo soporta svg. Cambiando formato a svg.","Lasso Select":"Seleccionar con lazo","Orbital rotation":"Rotaci\xF3n esf\xE9rica",Pan:"Modo Panor\xE1mica","Produced with Plotly.js":"Hecho con Plotly.js",Reset:"Reiniciar","Reset axes":"Reiniciar ejes","Reset camera to default":"Restaurar c\xE1mara predeterminada","Reset camera to last save":"Restaurar anterior c\xE1mara","Reset view":"Restaurar vista","Reset views":"Restaurar vistas","Show closest data on hover":"Mostrar el dato m\xE1s cercano al pasar por encima","Snapshot succeeded":"La captura de la instant\xE1nea finaliz\xF3 correctamente","Sorry, there was a problem downloading your snapshot!":"\xA1La descarga de la instant\xE1nea fall\xF3!","Taking snapshot - this may take a few seconds":"Capturando una instant\xE1nea - podr\xEDa tardar unos segundos","Toggle Spike Lines":"Mostrar/Ocultar Gu\xEDas","Toggle show closest data on hover":"Activar/Desactivar mostrar el dato m\xE1s cercano al pasar por encima","Turntable rotation":"Rotaci\xF3n plana",Zoom:"Modo Ampliar/Reducir","Zoom in":"Ampliar","Zoom out":"Reducir","close:":"cierre:","high:":"alza:","incoming flow count:":"flujo de entrada:","kde:":"edp:","lat:":"lat:","lon:":"lon:","low:":"baja:","lower fence:":"l\xEDmite inferior:","max:":"m\xE1x:","mean \xB1 \u03C3:":"media \xB1 \u03C3:","mean:":"media:","median:":"mediana:","min:":"m\xEDn:","new text":"nuevo texto","open:":"apertura:","outgoing flow count:":"flujo de salida:","q1:":"q1:","q3:":"q3:","source:":"fuente:","target:":"destino:",trace:"traza","upper fence:":"l\xEDmite superior:"},format:{days:["Domingo","Lunes","Martes","Mi\xE9rcoles","Jueves","Viernes","S\xE1bado"],shortDays:["Dom","Lun","Mar","Mi\xE9","Jue","Vie","S\xE1b"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],shortMonths:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],date:"%d/%m/%Y",decimal:",",thousands:" "}}});var lEe=J((nYt,sEe)=>{"use strict";sEe.exports={moduleType:"locale",name:"et",dictionary:{},format:{days:["P\xFChap\xE4ev","Esmasp\xE4ev","Teisip\xE4ev","Kolmap\xE4ev","Neljap\xE4ev","Reede","Laup\xE4ev"],shortDays:["P\xFChap","Esmasp","Teisip","Kolmap","Neljap","Reede","Laup"],months:["Jaanuar","Veebruar","M\xE4rts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],shortMonths:["Jaan","Veebr","M\xE4rts","Apr","Mai","Juuni","Juuli","Aug","Sept","Okt","Nov","Dets"],date:"%d.%m.%Y"}}});var fEe=J((iYt,uEe)=>{"use strict";uEe.exports={moduleType:"locale",name:"eu",dictionary:{},format:{days:["Igandea","Astelehena","Asteartea","Asteazkena","Osteguna","Ostirala","Larunbata"],shortDays:["Iga","Ast","Ast","Ast","Ost","Ost","Lar"],months:["Urtarrila","Otsaila","Martxoa","Apirila","Maiatza","Ekaina","Uztaila","Abuztua","Iraila","Urria","Azaroa","Abendua"],shortMonths:["Urt","Ots","Mar","Api","Mai","Eka","Uzt","Abu","Ira","Urr","Aza","Abe"],date:"%Y/%m/%d"}}});var hEe=J((aYt,cEe)=>{"use strict";cEe.exports={moduleType:"locale",name:"fa",dictionary:{},format:{days:["\u064A\u06A9\u0634\u0646\u0628\u0647","\u062F\u0648\u0634\u0646\u0628\u0647","\u0633\u0647\u200C\u0634\u0646\u0628\u0647","\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647","\u067E\u0646\u062C\u0634\u0646\u0628\u0647","\u062C\u0645\u0639\u0647","\u0634\u0646\u0628\u0647"],shortDays:["\u064A","\u062F","\u0633","\u0686","\u067E","\u062C","\u0634"],months:["\u0641\u0631\u0648\u0631\u062F\u064A\u0646","\u0627\u0631\u062F\u064A\u0628\u0647\u0634\u062A","\u062E\u0631\u062F\u0627\u062F","\u062A\u064A\u0631","\u0645\u0631\u062F\u0627\u062F","\u0634\u0647\u0631\u064A\u0648\u0631","\u0645\u0647\u0631","\u0622\u0628\u0627\u0646","\u0622\u0630\u0631","\u062F\u064A","\u0628\u0647\u0645\u0646","\u0627\u0633\u0641\u0646\u062F"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%Y/%m/%d"}}});var dEe=J((oYt,vEe)=>{"use strict";vEe.exports={moduleType:"locale",name:"fi",dictionary:{Autoscale:"Autoskaalaa","Box Select":"Laatikkovalinta","Click to enter Colorscale title":"Klikkaa antaaksesi v\xE4riskaalan otsikko","Click to enter Component A title":"Klikkaa antaaksesi komponentin A otsikko","Click to enter Component B title":"Klikkaa antaaksesi komponentin B otsikko","Click to enter Component C title":"Klikkaa antaaksesi komponentin C otsikko","Click to enter Plot title":"Klikkaa antaaksesi kuvion otsikko","Click to enter X axis title":"Klikkaa antaaksesi x-akselin otsikko","Click to enter Y axis title":"Klikkaa antaaksesi y-akselin otsikko","Click to enter radial axis title":"Klikkaa antaaksesi radiaalisen akselin otsikko","Compare data on hover":"Vertaa dataa kursorilla","Double-click on legend to isolate one trace":"Kaksoisklikkaa selitett\xE4 erist\xE4\xE4ksesi yksi sarja","Double-click to zoom back out":"Kaksoisklikkaa zoomataksesi ulos","Download plot":"Lataa kuvio","Download plot as a png":"Lataa kuvio png-muodossa","Edit in Chart Studio":"Muokkaa Chart Studiossa","IE only supports svg. Changing format to svg.":"Formaatiksi vaihdetaan IE:n tukema svg.","Lasso Select":"Lassovalinta","Orbital rotation":"Orbitaalikierto",Pan:"Panorointi","Produced with Plotly.js":"Tuotettu Plotly.jsll\xE4",Reset:"Palauta oletusasetukset","Reset axes":"Palauta akselien oletusasetukset","Reset camera to default":"Palauta kameran oletusasetukset","Reset camera to last save":"Palauta kameran viimeksi tallennetut asetukset","Reset view":"Palauta n\xE4kym\xE4n oletusasetukset","Reset views":"Palauta n\xE4kymien oletusasetukset","Show closest data on hover":"N\xE4yt\xE4 kursoria l\xE4hin data","Snapshot succeeded":"Tilannekuvan ottaminen onnistui","Sorry, there was a problem downloading your snapshot!":"Pahoittelut, tilannekuvan lataaminen ep\xE4onnistui!","Taking snapshot - this may take a few seconds":"Otetaan tilannekuvaa - odota hetki","Toggle Spike Lines":"N\xE4yt\xE4 huiput","Toggle show closest data on hover":"N\xE4yt\xE4 kursoria l\xE4hin data","Turntable rotation":"Tasokierto",Zoom:"Zoomaus","Zoom in":"Zoomaa sis\xE4\xE4n","Zoom out":"Zoomaa ulos","close:":"loppu:","high:":"korkein:","incoming flow count:":"saapuva virtaus:","kde:":"ydinestimointi:","lat:":"lat.:","lon:":"lon.:","low:":"matalin:","lower fence:":"alempi raja:","max:":"maks.:","mean \xB1 \u03C3:":"keskiarvo \xB1 \u03C3:","mean:":"keskiarvo:","median:":"mediaani:","min:":"min.:","new text":"uusi teksti","open:":"alku:","outgoing flow count:":"l\xE4htev\xE4 virtaus:","q1:":"q1:","q3:":"q3:","source:":"l\xE4hde:","target:":"kohde:",trace:"sarja","upper fence:":"ylempi raja:"},format:{days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],shortDays:["su","ma","ti","ke","to","pe","la"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kes\xE4kuu","hein\xE4kuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],shortMonths:["tammi","helmi","maalis","huhti","touko","kes\xE4","hein\xE4","elo","syys","loka","marras","joulu"],date:"%d.%m.%Y"}}});var gEe=J((sYt,pEe)=>{"use strict";pEe.exports={moduleType:"locale",name:"fo",dictionary:{},format:{days:["Sunnudagur","M\xE1nadagur","T\xFDsdagur","Mikudagur","H\xF3sdagur","Fr\xEDggjadagur","Leyardagur"],shortDays:["Sun","M\xE1n","T\xFDs","Mik","H\xF3s","Fr\xED","Ley"],months:["Januar","Februar","Mars","Apr\xEDl","Mei","Juni","Juli","August","September","Oktober","November","Desember"],shortMonths:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],date:"%d-%m-%Y"}}});var yEe=J((lYt,mEe)=>{"use strict";mEe.exports={moduleType:"locale",name:"fr-CH",dictionary:{},format:{days:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],shortDays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],months:["Janvier","F\xE9vrier","Mars","Avril","Mai","Juin","Juillet","Ao\xFBt","Septembre","Octobre","Novembre","D\xE9cembre"],shortMonths:["Jan","F\xE9v","Mar","Avr","Mai","Jun","Jul","Ao\xFB","Sep","Oct","Nov","D\xE9c"],date:"%d.%m.%Y"}}});var bEe=J((uYt,xEe)=>{"use strict";xEe.exports={moduleType:"locale",name:"fr",dictionary:{Autoscale:"\xC9chelle automatique","Box Select":"S\xE9lection rectangulaire","Click to enter Colorscale title":"Ajouter un titre \xE0 l'\xE9chelle de couleurs","Click to enter Component A title":"Ajouter un titre \xE0 la composante A","Click to enter Component B title":"Ajouter un titre \xE0 la composante B","Click to enter Component C title":"Ajouter un titre \xE0 la composante C","Click to enter Plot title":"Ajouter un titre au graphique","Click to enter Plot subtitle":"Ajouter un sous-titre au graphique","Click to enter X axis title":"Ajouter un titre \xE0 l'axe des x","Click to enter Y axis title":"Ajouter un titre \xE0 l'axe des y","Click to enter radial axis title":"Ajouter un titre \xE0 l'axe radial","Compare data on hover":"Comparaison entre donn\xE9es en survol","Double-click on legend to isolate one trace":"Double-cliquer sur la l\xE9gende pour isoler une s\xE9rie","Double-click to zoom back out":"Double-cliquer pour d\xE9zoomer","Download plot as a png":"T\xE9l\xE9charger le graphique en fichier PNG","Download plot":"T\xE9l\xE9charger le graphique","Edit in Chart Studio":"\xC9diter le graphique sur Chart Studio","IE only supports svg. Changing format to svg.":"IE ne permet que les conversions en SVG. Conversion en SVG en cours.","Lasso Select":"S\xE9lection lasso","Orbital rotation":"Rotation orbitale",Pan:"Translation","Produced with Plotly.js":"G\xE9n\xE9r\xE9 avec Plotly.js",Reset:"R\xE9initialiser","Reset axes":"R\xE9initialiser les axes","Reset camera to default":"R\xE9gler la cam\xE9ra \xE0 sa valeur d\xE9faut","Reset camera to last save":"R\xE9gler la cam\xE9ra \xE0 sa valeur sauvegard\xE9e","Reset view":"R\xE9initialiser","Reset views":"R\xE9initialiser","Show closest data on hover":"Donn\xE9es les plus proches en survol","Snapshot succeeded":"Conversion r\xE9ussie","Sorry, there was a problem downloading your snapshot!":"D\xE9sol\xE9, un probl\xE8me est survenu lors du t\xE9l\xE9chargement de votre graphique","Taking snapshot - this may take a few seconds":"Conversion en cours, ceci peut prendre quelques secondes",Zoom:"Zoom","Zoom in":"Zoom int\xE9rieur","Zoom out":"Zoom ext\xE9rieur","close:":"fermeture :",trace:"s\xE9rie","lat:":"lat. :","lon:":"lon. :","q1:":"q1 :","q3:":"q3 :","source:":"source :","target:":"embouchure :","lower fence:":"cl\xF4ture inf\xE9rieure :","upper fence:":"cl\xF4ture sup\xE9rieure :","max:":"max. :","mean \xB1 \u03C3:":"moyenne \xB1 \u03C3 :","mean:":"moyenne :","median:":"m\xE9diane :","min:":"min. :","new text":"nouveau texte","Turntable rotation":"Rotation planaire","Toggle Spike Lines":"Activer/d\xE9sactiver les pics","open:":"ouverture :","high:":"haut :","low:":"bas :","Toggle show closest data on hover":"Activer/d\xE9sactiver le survol","incoming flow count:":"flux entrant :","outgoing flow count:":"flux sortant :","kde:":"est. par noyau :"},format:{days:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],shortDays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],months:["Janvier","F\xE9vrier","Mars","Avril","Mai","Juin","Juillet","Ao\xFBt","Septembre","Octobre","Novembre","D\xE9cembre"],shortMonths:["Jan","F\xE9v","Mar","Avr","Mai","Jun","Jul","Ao\xFB","Sep","Oct","Nov","D\xE9c"],date:"%d/%m/%Y",decimal:",",thousands:" ",year:"%Y",month:"%b %Y",dayMonth:"%-d %b",dayMonthYear:"%-d %b %Y"}}});var _Ee=J((fYt,wEe)=>{"use strict";wEe.exports={moduleType:"locale",name:"gl",dictionary:{},format:{days:["Domingo","Luns","Martes","M\xE9rcores","Xoves","Venres","S\xE1bado"],shortDays:["Dom","Lun","Mar","M\xE9r","Xov","Ven","S\xE1b"],months:["Xaneiro","Febreiro","Marzo","Abril","Maio","Xu\xF1o","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"],shortMonths:["Xan","Feb","Mar","Abr","Mai","Xu\xF1","Xul","Ago","Set","Out","Nov","Dec"],date:"%d/%m/%Y"}}});var AEe=J((cYt,TEe)=>{"use strict";TEe.exports={moduleType:"locale",name:"gu",dictionary:{},format:{days:["\u0AB0\u0AB5\u0ABF\u0AB5\u0ABE\u0AB0","\u0AB8\u0ACB\u0AAE\u0AB5\u0ABE\u0AB0","\u0AAE\u0A82\u0A97\u0AB3\u0AB5\u0ABE\u0AB0","\u0AAC\u0AC1\u0AA7\u0AB5\u0ABE\u0AB0","\u0A97\u0AC1\u0AB0\u0AC1\u0AB5\u0ABE\u0AB0","\u0AB6\u0AC1\u0A95\u0ACD\u0AB0\u0AB5\u0ABE\u0AB0","\u0AB6\u0AA8\u0ABF\u0AB5\u0ABE\u0AB0"],shortDays:["\u0AB0\u0AB5\u0ABF","\u0AB8\u0ACB\u0AAE","\u0AAE\u0A82\u0A97\u0AB3","\u0AAC\u0AC1\u0AA7","\u0A97\u0AC1\u0AB0\u0AC1","\u0AB6\u0AC1\u0A95\u0ACD\u0AB0","\u0AB6\u0AA8\u0ABF"],months:["\u0A9C\u0ABE\u0AA8\u0ACD\u0AAF\u0AC1\u0A86\u0AB0\u0AC0","\u0AAB\u0AC7\u0AAC\u0ACD\u0AB0\u0AC1\u0A86\u0AB0\u0AC0","\u0AAE\u0ABE\u0AB0\u0ACD\u0A9A","\u0A8F\u0AAA\u0ACD\u0AB0\u0ABF\u0AB2","\u0AAE\u0AC7","\u0A9C\u0AC2\u0AA8","\u0A9C\u0AC1\u0AB2\u0ABE\u0A88","\u0A91\u0A97\u0AB8\u0ACD\u0A9F","\u0AB8\u0AAA\u0ACD\u0A9F\u0AC7\u0AAE\u0ACD\u0AAC\u0AB0","\u0A91\u0A95\u0ACD\u0A9F\u0ACB\u0AAC\u0AB0","\u0AA8\u0AB5\u0AC7\u0AAE\u0ACD\u0AAC\u0AB0","\u0AA1\u0ABF\u0AB8\u0AC7\u0AAE\u0ACD\u0AAC\u0AB0"],shortMonths:["\u0A9C\u0ABE\u0AA8\u0ACD\u0AAF\u0AC1","\u0AAB\u0AC7\u0AAC\u0ACD\u0AB0\u0AC1","\u0AAE\u0ABE\u0AB0\u0ACD\u0A9A","\u0A8F\u0AAA\u0ACD\u0AB0\u0ABF\u0AB2","\u0AAE\u0AC7","\u0A9C\u0AC2\u0AA8","\u0A9C\u0AC1\u0AB2\u0ABE\u0A88","\u0A91\u0A97\u0AB8\u0ACD\u0A9F","\u0AB8\u0AAA\u0ACD\u0A9F\u0AC7","\u0A91\u0A95\u0ACD\u0A9F\u0ACB","\u0AA8\u0AB5\u0AC7","\u0AA1\u0ABF\u0AB8\u0AC7"],date:"%d-%b-%Y"}}});var kEe=J((hYt,MEe)=>{"use strict";MEe.exports={moduleType:"locale",name:"he",dictionary:{},format:{days:["\u05E8\u05D0\u05E9\u05D5\u05DF","\u05E9\u05E0\u05D9","\u05E9\u05DC\u05D9\u05E9\u05D9","\u05E8\u05D1\u05D9\u05E2\u05D9","\u05D7\u05DE\u05D9\u05E9\u05D9","\u05E9\u05D9\u05E9\u05D9","\u05E9\u05D1\u05EA"],shortDays:["\u05D0'","\u05D1'","\u05D2'","\u05D3'","\u05D4'","\u05D5'","\u05E9\u05D1\u05EA"],months:["\u05D9\u05E0\u05D5\u05D0\u05E8","\u05E4\u05D1\u05E8\u05D5\u05D0\u05E8","\u05DE\u05E8\u05E5","\u05D0\u05E4\u05E8\u05D9\u05DC","\u05DE\u05D0\u05D9","\u05D9\u05D5\u05E0\u05D9","\u05D9\u05D5\u05DC\u05D9","\u05D0\u05D5\u05D2\u05D5\u05E1\u05D8","\u05E1\u05E4\u05D8\u05DE\u05D1\u05E8","\u05D0\u05D5\u05E7\u05D8\u05D5\u05D1\u05E8","\u05E0\u05D5\u05D1\u05DE\u05D1\u05E8","\u05D3\u05E6\u05DE\u05D1\u05E8"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%d/%m/%Y"}}});var CEe=J((vYt,SEe)=>{"use strict";SEe.exports={moduleType:"locale",name:"hi-IN",dictionary:{},format:{days:["\u0930\u0935\u093F\u0935\u093E\u0930","\u0938\u094B\u092E\u0935\u093E\u0930","\u092E\u0902\u0917\u0932\u0935\u093E\u0930","\u092C\u0941\u0927\u0935\u093E\u0930","\u0917\u0941\u0930\u0941\u0935\u093E\u0930","\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930","\u0936\u0928\u093F\u0935\u093E\u0930"],shortDays:["\u0930\u0935\u093F","\u0938\u094B\u092E","\u092E\u0902\u0917\u0932","\u092C\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094D\u0930","\u0936\u0928\u093F"],months:["\u091C\u0928\u0935\u0930\u0940"," \u092B\u0930\u0935\u0930\u0940","\u092E\u093E\u0930\u094D\u091A","\u0905\u092A\u094D\u0930\u0948\u0932","\u092E\u0908","\u091C\u0942\u0928","\u091C\u0941\u0932\u093E\u0908","\u0905\u0917\u0938\u094D\u0924","\u0938\u093F\u0924\u092E\u094D\u092C\u0930","\u0905\u0915\u094D\u091F\u0942\u092C\u0930","\u0928\u0935\u092E\u094D\u092C\u0930","\u0926\u093F\u0938\u092E\u094D\u092C\u0930"],shortMonths:["\u091C\u0928","\u092B\u0930","\u092E\u093E\u0930\u094D\u091A","\u0905\u092A\u094D\u0930\u0948","\u092E\u0908","\u091C\u0942\u0928","\u091C\u0941\u0932\u093E\u0908","\u0905\u0917","\u0938\u093F\u0924","\u0905\u0915\u094D\u091F\u0942","\u0928\u0935","\u0926\u093F\u0938"],date:"%d/%m/%Y"}}});var LEe=J((dYt,EEe)=>{"use strict";EEe.exports={moduleType:"locale",name:"hr",dictionary:{Autoscale:"Automatsko skaliranje","Box Select":"Pravokutni odabir","Click to enter Colorscale title":"Kliknite za unos Colorscale naziva","Click to enter Component A title":"Kliknite za unos naziva Komponente A","Click to enter Component B title":"Kliknite za unos naziva Komponente B","Click to enter Component C title":"Kliknite za unos naziva Komponente C","Click to enter Plot title":"Kliknite za unos naslova grafikona","Click to enter X axis title":"Kliknite za unos naziva X osi","Click to enter Y axis title":"Kliknite za unos naziva Y osi","Click to enter radial axis title":"Kliknite za unos naziva radijalne osi","Compare data on hover":"Usporedi podatke pri prijelazu mi\u0161em","Double-click on legend to isolate one trace":"Dvaput kliknite kako biste izolirali jednu oznaku","Double-click to zoom back out":"Dvaput kliknite kako biste vratili originalnu razinu zumiranja","Download plot as a png":"Preuzmite grafi\u010Dki prikaz kao .png","Download plot":"Preuzmite grafi\u010Dki prikaz","Edit in Chart Studio":"Uredite pomo\u0107u funkcionalnosti Chart Studio","IE only supports svg. Changing format to svg.":"IE podr\u017Eava samo svg. Format se mijenja u svg.","Lasso Select":"Laso odabir","Orbital rotation":"Rotacija oko osi",Pan:"Pomicanje","Produced with Plotly.js":"Napravljeno u paketu Plotly.js",Reset:"Resetirajte","Reset axes":"Resetirajte osi","Reset camera to default":"Resetirajte kameru na zadane vrijednosti","Reset camera to last save":"Resetirajte kameru na zadnje snimljene postavke","Reset view":"Resetirajte pogled","Reset views":"Resetirajte poglede","Show closest data on hover":"Prika\u017Ei najbli\u017Ee podatke pri zadr\u017Eavanju mi\u0161em","Snapshot succeeded":"Preuzimanje slike uspje\u0161no","Sorry, there was a problem downloading your snapshot!":"Pojavila se gre\u0161ka prilikom preuzimanja slike!","Taking snapshot - this may take a few seconds":"Preuzimanje slike - ovo mo\u017Ee potrajati nekoliko sekundi","Toggle Spike Lines":"Postavljanje pomo\u0107nih linija","Toggle show closest data on hover":"Postavljanje prikaza najbli\u017Eih podataka pri zadr\u017Eavanju mi\u0161em","Turntable rotation":"Turntable rotiranje",Zoom:"Zumiranje","Zoom in":"Pove\u0107aj zumiranje","Zoom out":"Smanji zumiranje","close:":"zatvori:","high:":"visoko:","incoming flow count:":"broj dolaze\u0107eg flowa:","kde:":"kde:","lat:":"lat:","lon:":"lon:","low:":"nisko:","lower fence:":"donja granica:","max:":"max:","mean:":"prosjek","median:":"medijan:","min:":"min:","new text":"novi tekst","open:":"otvori:","outgoing flow count:":"broj odlaze\u0107eg flow-a:","q1:":"q1:","q3:":"q3:","source:":"izvor:","target:":"cilj:",trace:"oznaka","upper fence:":"gornja granica:"},format:{days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","\u010Cetvrtak","Petak","Subota"],shortDays:["Ned","Pon","Uto","Sri","\u010Cet","Pet","Sub"],months:["Sije\u010Danj","Velja\u010Da","O\u017Eujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],shortMonths:["Sij","Velj","O\u017Eu","Tra","Svi","Lip","Srp","Kol","Ruj","Lis","Stu","Pro"],date:"%d.%m.%Y.",decimal:",",thousands:""}}});var REe=J((pYt,DEe)=>{"use strict";DEe.exports={moduleType:"locale",name:"hu",dictionary:{},format:{days:["Vas\xE1rnap","H\xE9tf\xF6","Kedd","Szerda","Cs\xFCt\xF6rt\xF6k","P\xE9ntek","Szombat"],shortDays:["Vas","H\xE9t","Ked","Sze","Cs\xFC","P\xE9n","Szo"],months:["Janu\xE1r","Febru\xE1r","M\xE1rcius","\xC1prilis","M\xE1jus","J\xFAnius","J\xFAlius","Augusztus","Szeptember","Okt\xF3ber","November","December"],shortMonths:["Jan","Feb","M\xE1r","\xC1pr","M\xE1j","J\xFAn","J\xFAl","Aug","Szep","Okt","Nov","Dec"],date:"%Y-%m-%d"}}});var IEe=J((gYt,PEe)=>{"use strict";PEe.exports={moduleType:"locale",name:"hy",dictionary:{},format:{days:["\u056F\u056B\u0580\u0561\u056F\u056B","\u0565\u056F\u0578\u0582\u0577\u0561\u0562\u0569\u056B","\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056B","\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056B","\u0570\u056B\u0576\u0563\u0577\u0561\u0562\u0569\u056B","\u0578\u0582\u0580\u0562\u0561\u0569","\u0577\u0561\u0562\u0561\u0569"],shortDays:["\u056F\u056B\u0580","\u0565\u0580\u056F","\u0565\u0580\u0584","\u0579\u0580\u0584","\u0570\u0576\u0563","\u0578\u0582\u0580\u0562","\u0577\u0562\u0569"],months:["\u0540\u0578\u0582\u0576\u057E\u0561\u0580","\u0553\u0565\u057F\u0580\u057E\u0561\u0580","\u0544\u0561\u0580\u057F","\u0531\u057A\u0580\u056B\u056C","\u0544\u0561\u0575\u056B\u057D","\u0540\u0578\u0582\u0576\u056B\u057D","\u0540\u0578\u0582\u056C\u056B\u057D","\u0555\u0563\u0578\u057D\u057F\u0578\u057D","\u054D\u0565\u057A\u057F\u0565\u0574\u0562\u0565\u0580","\u0540\u0578\u056F\u057F\u0565\u0574\u0562\u0565\u0580","\u0546\u0578\u0575\u0565\u0574\u0562\u0565\u0580","\u0534\u0565\u056F\u057F\u0565\u0574\u0562\u0565\u0580"],shortMonths:["\u0540\u0578\u0582\u0576\u057E","\u0553\u0565\u057F\u0580","\u0544\u0561\u0580\u057F","\u0531\u057A\u0580","\u0544\u0561\u0575\u056B\u057D","\u0540\u0578\u0582\u0576\u056B\u057D","\u0540\u0578\u0582\u056C","\u0555\u0563\u057D","\u054D\u0565\u057A","\u0540\u0578\u056F","\u0546\u0578\u0575","\u0534\u0565\u056F"],date:"%d.%m.%Y"}}});var FEe=J((mYt,qEe)=>{"use strict";qEe.exports={moduleType:"locale",name:"id",dictionary:{},format:{days:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],shortDays:["Min","Sen","Sel","Rab","kam","Jum","Sab"],months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember"],shortMonths:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agus","Sep","Okt","Nop","Des"],date:"%d/%m/%Y"}}});var NEe=J((yYt,zEe)=>{"use strict";zEe.exports={moduleType:"locale",name:"is",dictionary:{},format:{days:["Sunnudagur","M\xE1nudagur","\xDEri\xF0judagur","Mi\xF0vikudagur","Fimmtudagur","F\xF6studagur","Laugardagur"],shortDays:["Sun","M\xE1n","\xDEri","Mi\xF0","Fim","F\xF6s","Lau"],months:["Jan\xFAar","Febr\xFAar","Mars","Apr\xEDl","Ma\xED","J\xFAn\xED","J\xFAl\xED","\xC1g\xFAst","September","Okt\xF3ber","N\xF3vember","Desember"],shortMonths:["Jan","Feb","Mar","Apr","Ma\xED","J\xFAn","J\xFAl","\xC1g\xFA","Sep","Okt","N\xF3v","Des"],date:"%d/%m/%Y"}}});var BEe=J((xYt,OEe)=>{"use strict";OEe.exports={moduleType:"locale",name:"it",dictionary:{Autoscale:"Scala automaticamente","Box Select":"Selezione box","Click to enter Colorscale title":"Clicca per inserire un titolo alla scala di colori","Click to enter Component A title":"Clicca per inserire un titolo al componente A","Click to enter Component B title":"Clicca per inserire un titolo al componente B","Click to enter Component C title":"Clicca per inserire un titolo al componente C","Click to enter Plot title":"Clicca per inserire un titolo al grafico","Click to enter X axis title":"Clicca per inserire un titolo all'asse X","Click to enter Y axis title":"Clicca per inserire un titolo all'asse Y","Click to enter radial axis title":"Clicca per inserire un titolo per l' asse radiale","Compare data on hover":"Paragona i dati al passaggio del mouse","Double-click on legend to isolate one trace":"Doppio click per isolare i dati di una traccia","Double-click to zoom back out":"Doppio click per tornare allo zoom iniziale","Download plot as a png":"Scarica il grafico come immagine png","Download plot":"Scarica il grafico","Edit in Chart Studio":"Modifica in Chart Studio","IE only supports svg. Changing format to svg.":"IE supporta solo svg. Modifica formato in svg.","Lasso Select":"Selezione lazo","Orbital rotation":"Rotazione orbitale",Pan:"Sposta","Produced with Plotly.js":"Creato con Plotly.js",Reset:"Reset","Reset axes":"Resetta gli assi","Reset camera to default":"Reimposta la camera ai valori predefiniti","Reset camera to last save":"Reimposta la camera all' ultimo salvataggio","Reset view":"Reimposta la vista","Reset views":"Reimposta le viste","Show closest data on hover":"Mostra i dati pi\xF9 vicini al passaggio del mouse","Snapshot succeeded":"Screenshot creato con successo","Sorry, there was a problem downloading your snapshot!":"Si \xE8 verificato un errore durante la creazione dello screenshot","Taking snapshot - this may take a few seconds":"Creazione screenshot - potrebbe richiedere qualche secondo",Zoom:"Zoom","Zoom in":"Ingrandisci","Zoom out":"Rimpicciolisci","close:":"chiudi:",trace:"traccia","lat:":"lat.:","lon:":"lon.:","q1:":"q1:","q3:":"q3:","source:":"sorgente:","target:":"target:","max:":"max.:","mean \xB1 \u03C3:":"media \xB1 \u03C3:","mean:":"media:","median:":"mediana:","min:":"min.:","new text:":"Nuovo testo:","upper fence:":"limite superiore:","lower fence:":"limite inferiore:","Turntable rotation":"Rotazione piattaforma","Toggle Spike Lines":"Abilita linee di identificazione","open:":"apri:","high:":"alto:","kde:":"kde:","low:":"basso:","incoming flow count:":"Flusso in entrata:","outgoing flow count:":"Flusso in uscita:","Toggle show closest data on hover":"Abilita mostra i dati pi\xF9 vicini al passaggio del mouse"},format:{days:["Domenica","Luned\xEC","Marted\xEC","Mercoled\xEC","Gioved\xEC","Venerd\xEC","Sabato"],shortDays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],shortMonths:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],date:"%d/%m/%Y",decimal:",",thousands:"."}}});var HEe=J((bYt,UEe)=>{"use strict";UEe.exports={moduleType:"locale",name:"ja",dictionary:{Autoscale:"\u81EA\u52D5\u30BA\u30FC\u30E0","Box Select":"\u77E9\u5F62\u9078\u629E","Click to enter Colorscale title":"\u8272\u30B9\u30B1\u30FC\u30EB\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter Component A title":"\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8A\u306E\u30BF\u30A4\u30C8\u30EB\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter Component B title":"\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8B\u306E\u30BF\u30A4\u30C8\u30EB\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter Component C title":"\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8C\u306E\u30BF\u30A4\u30C8\u30EB\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter Plot title":"\u30D7\u30ED\u30C3\u30C8\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter X axis title":"X\u8EF8\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Click to enter Y axis title":"Y\u8EF8\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","Compare data on hover":"\u30DB\u30D0\u30FC\u4E2D\u306E\u30C7\u30FC\u30BF\u3092\u6BD4\u8F03","Double-click on legend to isolate one trace":"\u51E1\u4F8B\u3092\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u3057\u30661\u3064\u306E\u30C8\u30EC\u30FC\u30B9\u3092\u7121\u52B9\u5316\u3057\u307E\u3059","Double-click to zoom back out":"\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u3067\u30BA\u30FC\u30E0\u3092\u623B\u3057\u307E\u3059","Download plot as a png":"PNG\u30D5\u30A1\u30A4\u30EB\u3067\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9","Download plot":"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9","Edit in Chart Studio":"Chart Studio\u3067\u7DE8\u96C6","IE only supports svg. Changing format to svg.":"IE\u306FSVG\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002SVG\u306B\u5909\u63DB\u3057\u307E\u3059\u3002","Lasso Select":"\u6295\u3052\u7E04\u9078\u629E","Orbital rotation":"\u8ECC\u9053\u56DE\u8EE2",Pan:"\u62E1\u5927","Produced with Plotly.js":"Plotly.js\u306B\u3088\u308A\u4F5C\u6210",Reset:"\u30EA\u30BB\u30C3\u30C8","Reset axes":"\u8EF8\u3092\u30EA\u30BB\u30C3\u30C8","Reset camera to default":"\u30AB\u30E1\u30E9\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u623B\u3059","Reset camera to last save":"\u30AB\u30E1\u30E9\u3092\u6700\u5F8C\u306E\u4FDD\u5B58\u72B6\u614B\u306B\u623B\u3059","Reset view":"\u30D3\u30E5\u30FC\u3092\u30EA\u30BB\u30C3\u30C8","Reset views":"\u30D3\u30E5\u30FC\u3092\u30EA\u30BB\u30C3\u30C8","Show closest data on hover":"\u30DB\u30D0\u30FC\u6642\u306B\u4E00\u756A\u8FD1\u3044\u30C7\u30FC\u30BF\u3092\u8868\u793A","Snapshot succeeded":"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306B\u6210\u529F","Sorry, there was a problem downloading your snapshot!":"\u3059\u307F\u307E\u305B\u3093\u3001\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3067\u30A8\u30E9\u30FC\u3067\u3059!","Taking snapshot - this may take a few seconds":"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u64AE\u5F71",Zoom:"\u30BA\u30FC\u30E0","Zoom in":"\u62E1\u5927","Zoom out":"\u7E2E\u5C0F","close:":"\u9589\u3058\u308B:",trace:"\u30C8\u30EC\u30FC\u30B9:","lat:":"\u7DEF\u5EA6:","lon:":"\u7D4C\u5EA6:","q1:":"\u7B2C\u4E00\u56DB\u5206\u4F4D\u6570:","q3:":"\u7B2C\u4E09\u56DB\u5206\u4F4D\u6570:","source:":"\u30BD\u30FC\u30B9:","target:":"\u30BF\u30FC\u30B2\u30C3\u30C8:","lower fence:":"\u30D5\u30A7\u30F3\u30B9\u4E0B\u9650:","upper fence:":"\u30D5\u30A7\u30F3\u30B9\u4E0A\u9650:","max:":"\u6700\u5927:","mean \xB1 \u03C3:":"\u5E73\u5747 \xB1 \u03C3:","mean:":"\u5E73\u5747:","median:":"\u4E2D\u592E\u5024:","min:":"\u6700\u5C0F:","Turntable rotation":"\u8EF8\u56DE\u8EE2:","Toggle Spike Lines":"\u30B9\u30D1\u30A4\u30AF\u30E9\u30A4\u30F3\u306E\u30AA\u30F3\u30AA\u30D5","open:":"\u958B\u304F:","high:":"\u9AD8:","low:":"\u4F4E:","Toggle show closest data on hover":"\u30DB\u30D0\u30FC\u6642\u306B\u4E00\u756A\u8FD1\u3044\u30C7\u30FC\u30BF\u3092\u8868\u793A\u306E\u30AA\u30F3\u30AA\u30D5","incoming flow count:":"\u6D41\u5165\u30D5\u30ED\u30FC\u30AB\u30A6\u30F3\u30C8:","outgoing flow count:":"\u6D41\u51FA\u30D5\u30ED\u30FC\u30AB\u30A6\u30F3\u30C8:","kde:":"kde:","Click to enter radial axis title":"\u653E\u5C04\u8EF8\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B\u3059\u308B\u306B\u306F\u30AF\u30EA\u30C3\u30AF","new text":"\u65B0\u898F\u30C6\u30AD\u30B9\u30C8"},format:{days:["\u65E5\u66DC\u65E5","\u6708\u66DC\u65E5","\u706B\u66DC\u65E5","\u6C34\u66DC\u65E5","\u6728\u66DC\u65E5","\u91D1\u66DC\u65E5","\u571F\u66DC\u65E5"],shortDays:["\u65E5","\u6708","\u706B","\u6C34","\u6728","\u91D1","\u571F"],months:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],shortMonths:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],date:"%Y/%m/%d"}}});var VEe=J((wYt,jEe)=>{"use strict";jEe.exports={moduleType:"locale",name:"ka",dictionary:{},format:{days:["\u10D9\u10D5\u10D8\u10E0\u10D0","\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8","\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8","\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8","\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8","\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10D8","\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8"],shortDays:["\u10D9\u10D5","\u10DD\u10E0\u10E8","\u10E1\u10D0\u10DB","\u10DD\u10D7\u10EE","\u10EE\u10E3\u10D7","\u10DE\u10D0\u10E0","\u10E8\u10D0\u10D1"],months:["\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10D8","\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10D8","\u10DB\u10D0\u10E0\u10E2\u10D8","\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8","\u10DB\u10D0\u10D8\u10E1\u10D8","\u10D8\u10D5\u10DC\u10D8\u10E1\u10D8","\u10D8\u10D5\u10DA\u10D8\u10E1\u10D8","\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10DD","\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8","\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10D8","\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8","\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8"],shortMonths:["\u10D8\u10D0\u10DC","\u10D7\u10D4\u10D1","\u10DB\u10D0\u10E0","\u10D0\u10DE\u10E0","\u10DB\u10D0\u10D8\u10E1\u10D8","\u10D8\u10D5\u10DC","\u10D8\u10D5\u10DA","\u10D0\u10D2\u10D5","\u10E1\u10D4\u10E5","\u10DD\u10E5\u10E2","\u10DC\u10DD\u10D4","\u10D3\u10D4\u10D9"],date:"%d/%m/%Y"}}});var GEe=J((_Yt,YEe)=>{"use strict";YEe.exports={moduleType:"locale",name:"km",dictionary:{},format:{days:["\u1790\u17D2\u1784\u17C3\u200B\u17A2\u17B6\u1791\u17B7\u178F\u17D2\u1799","\u1790\u17D2\u1784\u17C3\u200B\u1785\u1793\u17D2\u1791","\u1790\u17D2\u1784\u17C3\u200B\u17A2\u1784\u17D2\u1782\u17B6\u179A","\u1790\u17D2\u1784\u17C3\u200B\u1796\u17BB\u1792","\u1790\u17D2\u1784\u17C3\u200B\u1796\u17D2\u179A\u17A0\u179F\u17D2\u1794\u178F\u17D2\u178F\u17B7\u17CD","\u1790\u17D2\u1784\u17C3\u200B\u179F\u17BB\u1780\u17D2\u179A","\u1790\u17D2\u1784\u17C3\u200B\u179F\u17C5\u179A\u17CD"],shortDays:["\u17A2\u17B6","\u1785\u1793\u17D2\u1791","\u17A2\u1784\u17D2\u1782","\u1796\u17BB\u1792","\u1796\u17D2\u179A\u17A0","\u179F\u17BB","\u179F\u17C5\u179A\u17CD"],months:["\u1781\u17C2\u200B\u1798\u1780\u179A\u17B6","\u1781\u17C2\u200B\u1780\u17BB\u1798\u17D2\u1797\u17C8","\u1781\u17C2\u200B\u1798\u17B7\u1793\u17B6","\u1781\u17C2\u200B\u1798\u17C1\u179F\u17B6","\u1781\u17C2\u200B\u17A7\u179F\u1797\u17B6","\u1781\u17C2\u200B\u1798\u17B7\u1790\u17BB\u1793\u17B6","\u1781\u17C2\u200B\u1780\u1780\u17D2\u1780\u178A\u17B6","\u1781\u17C2\u200B\u179F\u17B8\u17A0\u17B6","\u1781\u17C2\u200B\u1780\u1789\u17D2\u1789\u17B6","\u1781\u17C2\u200B\u178F\u17BB\u179B\u17B6","\u1781\u17C2\u200B\u179C\u17B7\u1785\u17D2\u1786\u17B7\u1780\u17B6","\u1781\u17C2\u200B\u1792\u17D2\u1793\u17BC"],shortMonths:["\u1798\u1780","\u1780\u17BB","\u1798\u17B7\u1793\u17B6","\u1798\u17C1","\u17A7\u179F","\u1798\u17B7\u1790\u17BB","\u1780\u1780\u17D2\u1780","\u179F\u17B8","\u1780\u1789\u17D2\u1789\u17B6","\u178F\u17BB\u179B\u17B6","\u179C\u17B7\u1785\u17D2\u1786\u17B7","\u1792\u17D2\u1793\u17BC"],date:"%d/%m/%Y"}}});var XEe=J((TYt,WEe)=>{"use strict";WEe.exports={moduleType:"locale",name:"ko",dictionary:{Autoscale:"\uC790\uB3D9 \uD06C\uAE30\uC9C0\uC815","Box Select":"\uBC15\uC2A4 \uC120\uD0DD","Click to enter Colorscale title":"Colorscale \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter Component A title":"A\uB370\uC774\uD130\uC758 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter Component B title":"B\uB370\uC774\uD130\uC758 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter Component C title":"C\uB370\uC774\uD130\uC758 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter Plot title":"\uCC28\uD2B8 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter X axis title":"X\uCD95 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter Y axis title":"Y\uCD95 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Click to enter radial axis title":"\uC6D0\uD615 \uCD95 \uC81C\uBAA9\uC744 \uC9C0\uC815\uD558\uB824\uBA74 \uD074\uB9AD\uD558\uC138\uC694","Compare data on hover":"\uB9C8\uC6B0\uC2A4\uB97C \uC62C\uB9AC\uBA74 \uB370\uC774\uD130\uC640 \uBE44\uAD50\uD569\uB2C8\uB2E4","Double-click on legend to isolate one trace":"\uBC94\uB840\uB97C \uB354\uBE14 \uD074\uB9AD\uD558\uC5EC \uD558\uB098\uC758 \uD2B8\uB808\uC774\uC2A4\uB97C \uBD84\uB9AC\uD569\uB2C8\uB2E4","Double-click to zoom back out":"\uB354\uBE14 \uD074\uB9AD\uD558\uC5EC \uC90C\uC744 \uD574\uC81C\uD569\uB2C8\uB2E4","Download plot as a png":".png \uC774\uBBF8\uC9C0 \uD30C\uC77C\uB85C \uCC28\uD2B8\uB97C \uB2E4\uC6B4\uB85C\uB4DC \uD569\uB2C8\uB2E4","Download plot":"\uCC28\uD2B8\uB97C \uB2E4\uC6B4\uB85C\uB4DC \uD569\uB2C8\uB2E4","Edit in Chart Studio":"Chart Studio\uB97C \uC218\uC815\uD569\uB2C8\uB2E4","IE only supports svg. Changing format to svg.":"IE\uB294 svg\uB9CC\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4. \uD3EC\uB9F7\uC744 svg\uB85C \uBCC0\uACBD\uD558\uC138\uC694","Lasso Select":"\uC62C\uAC00\uBBF8 \uC120\uD0DD","Orbital rotation":"\uADA4\uB3C4 \uC218\uC815",Pan:"\uC774\uB3D9","Produced with Plotly.js":"Plotly.js \uC81C\uACF5",Reset:"\uCD08\uAE30\uD654","Reset axes":"\uCD95 \uCD08\uAE30\uD654","Reset camera to default":"camera\uB97C \uAE30\uBCF8\uAC12\uC73C\uB85C \uCD08\uAE30\uD654","Reset camera to last save":"camera\uB97C \uB9C8\uC9C0\uB9C9\uC73C\uB85C \uC800\uC7A5\uD55C \uAC12\uC73C\uB85C \uCD08\uAE30\uD654","Reset view":"view \uCD08\uAE30\uD654","Reset views":"views \uCD08\uAE30\uD654","Show closest data on hover":"\uB9C8\uC6B0\uC2A4\uB97C \uC62C\uB9AC\uBA74 \uADFC\uC811\uD55C \uB370\uC774\uD130\uB97C \uBCF4\uC774\uAE30","Snapshot succeeded":"Snapshot \uC131\uACF5","Sorry, there was a problem downloading your snapshot!":"\uC8C4\uC1A1\uD569\uB2C8\uB2E4, snapshot\uC744 \uB2E4\uC6B4\uB85C\uB4DC \uC911 \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!","Taking snapshot - this may take a few seconds":"snapshot \uCC0D\uAE30 - \uC218 \uCD08\uAC00 \uAC78\uB9B4 \uC218 \uC788\uC2B5\uB2C8\uB2E4","Toggle Spike Lines":"\uC2A4\uC704\uCE58\uB85C Lines\uC744 \uACE0\uC815\uD569\uB2C8\uB2E4","Toggle show closest data on hover":"\uC2A4\uC704\uCE58\uB85C \uB9C8\uC6B0\uC2A4\uB97C \uC62C\uB838\uC744 \uB54C \uAC00\uC7A5 \uAC00\uAE4C\uC6B4 \uB370\uC774\uD130\uB97C \uBCF4\uC5EC\uC90D\uB2C8\uB2E4","Turntable rotation":"Turntable \uD68C\uC804",Zoom:"\uD655\uB300(\uC90C)","Zoom in":"\uD655\uB300(\uC90C \uC778)","Zoom out":"\uCD95\uC18C(\uC90C \uC544\uC6C3)",close:"\uB2EB\uAE30",high:"\uB192\uC74C",low:"\uB0AE\uC74C",max:"\uCD5C\uB313\uAC12","mean \xB1 \u03C3":"\uD3C9\uADE0 \xB1 \u03C3",mean:"\uD3C9\uADE0",median:"\uC911\uAC04 \uAC12",min:"\uCD5C\uC19F\uAC12","new text":"\uC0C8\uB85C\uC6B4 \uD14D\uC2A4\uD2B8",open:"\uC5F4\uAE30",q1:"q1",q3:"q3",source:"\uC18C\uC2A4",target:"\uD0C0\uAC9F"},format:{days:["\uC77C\uC694\uC77C","\uC6D4\uC694\uC77C","\uD654\uC694\uC77C","\uC218\uC694\uC77C","\uBAA9\uC694\uC77C","\uAE08\uC694\uC77C","\uD1A0\uC694\uC77C"],shortDays:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],months:["1\uC6D4","2\uC6D4","3\uC6D4","4\uC6D4","5\uC6D4","6\uC6D4","7\uC6D4","8\uC6D4","9\uC6D4","10\uC6D4","11\uC6D4","12\uC6D4"],shortMonths:["1\uC6D4","2\uC6D4","3\uC6D4","4\uC6D4","5\uC6D4","6\uC6D4","7\uC6D4","8\uC6D4","9\uC6D4","10\uC6D4","11\uC6D4","12\uC6D4"],date:"%Y-%m-%d"}}});var JEe=J((AYt,ZEe)=>{"use strict";ZEe.exports={moduleType:"locale",name:"lt",dictionary:{},format:{days:["sekmadienis","pirmadienis","antradienis","tre\u010Diadienis","ketvirtadienis","penktadienis","\u0161e\u0161tadienis"],shortDays:["sek","pir","ant","tre","ket","pen","\u0161e\u0161"],months:["Sausis","Vasaris","Kovas","Balandis","Gegu\u017E\u0117","Bir\u017Eelis","Liepa","Rugpj\u016Btis","Rugs\u0117jis","Spalis","Lapkritis","Gruodis"],shortMonths:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],date:"%Y-%m-%d"}}});var KEe=J((MYt,$Ee)=>{"use strict";$Ee.exports={moduleType:"locale",name:"lv",dictionary:{},format:{days:["sv\u0113tdiena","pirmdiena","otrdiena","tre\u0161diena","ceturtdiena","piektdiena","sestdiena"],shortDays:["svt","prm","otr","tre","ctr","pkt","sst"],months:["Janv\u0101ris","Febru\u0101ris","Marts","Apr\u012Blis","Maijs","J\u016Bnijs","J\u016Blijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],shortMonths:["Jan","Feb","Mar","Apr","Mai","J\u016Bn","J\u016Bl","Aug","Sep","Okt","Nov","Dec"],date:"%d-%m-%Y"}}});var eLe=J((kYt,QEe)=>{"use strict";QEe.exports={moduleType:"locale",name:"me-ME",dictionary:{},format:{days:["Ne\u0111elja","Pone\u0111eljak","Utorak","Srijeda","\u010Cetvrtak","Petak","Subota"],shortDays:["Ne\u0111","Pon","Uto","Sri","\u010Cet","Pet","Sub"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],date:"%d/%m/%Y"}}});var rLe=J((SYt,tLe)=>{"use strict";tLe.exports={moduleType:"locale",name:"me",dictionary:{},format:{days:["\u041D\u0435\u0452\u0435\u0459\u0430","\u041F\u043E\u043D\u0435\u0452\u0435\u0459\u0430\u043A","\u0423\u0442\u043E\u0440\u0430\u043A","\u0421\u0440\u0438\u0458\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0440\u0442\u0430\u043A","\u041F\u0435\u0442\u0430\u043A","\u0421\u0443\u0431\u043E\u0442\u0430"],shortDays:["\u041D\u0435\u0452","\u041F\u043E\u043D","\u0423\u0442\u043E","\u0421\u0440\u0438","\u0427\u0435\u0442","\u041F\u0435\u0442","\u0421\u0443\u0431"],months:["\u0408\u0430\u043D\u0443\u0430\u0440","\u0424\u0435\u0431\u0440\u0443\u0430\u0440","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0438\u043B","\u041C\u0430\u0458","\u0408\u0443\u043D","\u0408\u0443\u043B","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043F\u0442\u0435\u043C\u0431\u0430\u0440","\u041E\u043A\u0442\u043E\u0431\u0430\u0440","\u041D\u043E\u0432\u0435\u043C\u0431\u0430\u0440","\u0414\u0435\u0446\u0435\u043C\u0431\u0430\u0440"],shortMonths:["\u0408\u0430\u043D","\u0424\u0435\u0431","\u041C\u0430\u0440","\u0410\u043F\u0440","\u041C\u0430\u0458","\u0408\u0443\u043D","\u0408\u0443\u043B","\u0410\u0432\u0433","\u0421\u0435\u043F","\u041E\u043A\u0442","\u041D\u043E\u0432","\u0414\u0435\u0446"],date:"%d/%m/%Y"}}});var iLe=J((CYt,nLe)=>{"use strict";nLe.exports={moduleType:"locale",name:"mk",dictionary:{},format:{days:["\u041D\u0435\u0434\u0435\u043B\u0430","\u041F\u043E\u043D\u0435\u0434\u0435\u043B\u043D\u0438\u043A","\u0412\u0442\u043E\u0440\u043D\u0438\u043A","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0440\u0442\u043E\u043A","\u041F\u0435\u0442\u043E\u043A","\u0421\u0430\u0431\u043E\u0442\u0430"],shortDays:["\u041D\u0435\u0434","\u041F\u043E\u043D","\u0412\u0442\u043E","\u0421\u0440\u0435","\u0427\u0435\u0442","\u041F\u0435\u0442","\u0421\u0430\u0431"],months:["\u0408\u0430\u043D\u0443\u0430\u0440\u0438","\u0424\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0438\u043B","\u041C\u0430\u0458","\u0408\u0443\u043D\u0438","\u0408\u0443\u043B\u0438","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043F\u0442\u0435\u043C\u0432\u0440\u0438","\u041E\u043A\u0442\u043E\u043C\u0432\u0440\u0438","\u041D\u043E\u0435\u043C\u0432\u0440\u0438","\u0414\u0435\u043A\u0435\u043C\u0432\u0440\u0438"],shortMonths:["\u0408\u0430\u043D","\u0424\u0435\u0432","\u041C\u0430\u0440","\u0410\u043F\u0440","\u041C\u0430\u0458","\u0408\u0443\u043D","\u0408\u0443\u043B","\u0410\u0432\u0433","\u0421\u0435\u043F","\u041E\u043A\u0442","\u041D\u043E\u0432","\u0414\u0435\u043A"],date:"%d/%m/%Y"}}});var oLe=J((EYt,aLe)=>{"use strict";aLe.exports={moduleType:"locale",name:"ml",dictionary:{},format:{days:["\u0D1E\u0D3E\u0D2F\u0D30\u0D4D\u200D","\u0D24\u0D3F\u0D19\u0D4D\u0D15\u0D33\u0D4D\u200D","\u0D1A\u0D4A\u0D35\u0D4D\u0D35","\u0D2C\u0D41\u0D27\u0D28\u0D4D\u200D","\u0D35\u0D4D\u0D2F\u0D3E\u0D34\u0D02","\u0D35\u0D46\u0D33\u0D4D\u0D33\u0D3F","\u0D36\u0D28\u0D3F"],shortDays:["\u0D1E\u0D3E\u0D2F","\u0D24\u0D3F\u0D19\u0D4D\u0D15","\u0D1A\u0D4A\u0D35\u0D4D\u0D35","\u0D2C\u0D41\u0D27","\u0D35\u0D4D\u0D2F\u0D3E\u0D34\u0D02","\u0D35\u0D46\u0D33\u0D4D\u0D33\u0D3F","\u0D36\u0D28\u0D3F"],months:["\u0D1C\u0D28\u0D41\u0D35\u0D30\u0D3F","\u0D2B\u0D46\u0D2C\u0D4D\u0D30\u0D41\u0D35\u0D30\u0D3F","\u0D2E\u0D3E\u0D30\u0D4D\u200D\u0D1A\u0D4D\u0D1A\u0D4D","\u0D0F\u0D2A\u0D4D\u0D30\u0D3F\u0D32\u0D4D\u200D","\u0D2E\u0D47\u0D2F\u0D4D","\u0D1C\u0D42\u0D23\u0D4D\u200D","\u0D1C\u0D42\u0D32\u0D48","\u0D06\u0D17\u0D38\u0D4D\u0D31\u0D4D\u0D31\u0D4D","\u0D38\u0D46\u0D2A\u0D4D\u0D31\u0D4D\u0D31\u0D02\u0D2C\u0D30\u0D4D\u200D","\u0D12\u0D15\u0D4D\u0D1F\u0D4B\u0D2C\u0D30\u0D4D\u200D","\u0D28\u0D35\u0D02\u0D2C\u0D30\u0D4D\u200D","\u0D21\u0D3F\u0D38\u0D02\u0D2C\u0D30\u0D4D\u200D"],shortMonths:["\u0D1C\u0D28\u0D41","\u0D2B\u0D46\u0D2C\u0D4D","\u0D2E\u0D3E\u0D30\u0D4D\u200D","\u0D0F\u0D2A\u0D4D\u0D30\u0D3F","\u0D2E\u0D47\u0D2F\u0D4D","\u0D1C\u0D42\u0D23\u0D4D\u200D","\u0D1C\u0D42\u0D32\u0D3E","\u0D06\u0D17","\u0D38\u0D46\u0D2A\u0D4D","\u0D12\u0D15\u0D4D\u0D1F\u0D4B","\u0D28\u0D35\u0D02","\u0D21\u0D3F\u0D38"],date:"%d/%m/%Y"}}});var lLe=J((LYt,sLe)=>{"use strict";sLe.exports={moduleType:"locale",name:"ms",dictionary:{},format:{days:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],shortDays:["Aha","Isn","Sel","Rab","Kha","Jum","Sab"],months:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],shortMonths:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],date:"%d/%m/%Y"}}});var fLe=J((DYt,uLe)=>{"use strict";uLe.exports={moduleType:"locale",name:"mt",dictionary:{},format:{days:["Il-\u0126add","It-Tnejn","It-Tlieta","L-Erbg\u0127a","Il-\u0126amis","Il-\u0120img\u0127a","Is-Sibt"],shortDays:["\u0126ad","Tne","Tli","Erb","\u0126am","\u0120im","Sib"],months:["Jannar","Frar","Marzu","April","Mejju","\u0120unju","Lulju","Awissu","Settembru","Ottubru","Novembru","Di\u010Bembru"],shortMonths:["Jan","Fra","Mar","Apr","Mej","\u0120un","Lul","Awi","Set","Ott","Nov","Di\u010B"],date:"%d/%m/%Y"}}});var hLe=J((RYt,cLe)=>{"use strict";cLe.exports={moduleType:"locale",name:"nl-BE",dictionary:{},format:{days:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],shortDays:["zon","maa","din","woe","don","vri","zat"],months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],shortMonths:["jan","feb","maa","apr","mei","jun","jul","aug","sep","okt","nov","dec"],date:"%d/%m/%Y"}}});var dLe=J((PYt,vLe)=>{"use strict";vLe.exports={moduleType:"locale",name:"nl",dictionary:{Autoscale:"Automatische schaal","Click to enter Colorscale title":"Klik om kleurenschaal titel in te vullen","Click to enter Component A title":"Klik om Component A titel in te vullen","Click to enter Component B title":"Klik om Component B titel in te vullen","Click to enter Component C title":"Klik om Component C titel in te vullen","Click to enter Plot title":"Klik om Plot titel in te vullen","Click to enter X axis title":"Klik om x-as titel in te vullen","Click to enter Y axis title":"Klik om y-as titel in te vullen","Click to enter radial axis title":"Klik om radiaal-as titel in te vullen","Double-click to zoom back out":"Zoom uit door te dubbel klikken","Download plot as a png":"Dowload de plot als een png-bestand","Download plot":"Download de plot","Draw circle":"Teken cirkel","Draw closed freeform":"Teken gesloten vorm","Draw line":"Teken lijn","Draw open freeform":"Teken open vorm","Draw rectangle":"Teken rechthoek","Edit in Chart Studio":"In Chart Studio wijzigen","Erase active shape":"Wis huidige vorm","IE only supports svg. Changing format to svg.":"IE ondersteunt alleen svg bestanden. Formaat gewijzigd naar svg.","Lasso Select":"Lasso selectie","Produced with Plotly.js":"Gemaakt met Plotly.js",Zoom:"Inzoomen","max:":"maximum:","mean \xB1 \u03C3:":"gemiddelde \xB1 \u03C3:","mean:":"gemiddelde:","min:":"minimum:","new text":"nieuwe tekst","open:":"openen:","high:":"hoog:","low:":"laag:","source:":"bron:","target:":"doel:"},format:{days:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],shortDays:["zon","maa","din","woe","don","vri","zat"],months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],shortMonths:["jan","feb","maa","apr","mei","jun","jul","aug","sep","okt","nov","dec"],date:"%d-%m-%Y",decimal:",",thousands:".",year:"%Y",month:"%b %Y",dayMonth:"%-d %b",dayMonthYear:"%-d %b %Y"}}});var gLe=J((IYt,pLe)=>{"use strict";pLe.exports={moduleType:"locale",name:"no",dictionary:{Autoscale:"Autoskalere","Box Select":"Velg rektangel","Click to enter Colorscale title":"Klikk for \xE5 oppgi tittel p\xE5 fargeskala","Click to enter Component A title":"Klikk for \xE5 oppgi tittel p\xE5 komponent A","Click to enter Component B title":"Klikk for \xE5 oppgi tittel p\xE5 komponent B","Click to enter Component C title":"Klikk for \xE5 oppgi tittel p\xE5 komponent C","Click to enter Plot title":"Klikk for \xE5 oppgi tittel p\xE5 plot","Click to enter X axis title":"Klikk for \xE5 oppgi tittel p\xE5 x-akse","Click to enter Y axis title":"Klikk for \xE5 oppgi tittel p\xE5 y-akse","Click to enter radial axis title":"Klikk for \xE5 oppgi tittel p\xE5 radiell akse","Compare data on hover":"Sammenligne data n\xE5r musepekeren holdes \xE5ver","Double-click on legend to isolate one trace":"Dobbelklikk p\xE5 p\xE5 forklaringen for \xE5 vise bare en serie","Double-click to zoom back out":"Dobbelklikk for \xE5 zoome ut igjen","Download plot":"Last ned plot","Download plot as a png":"Last ned plot som png","Edit in Chart Studio":"Editer i Chart Studio","IE only supports svg. Changing format to svg.":"IE st\xF8tter bare svg. Bytt format til svg.","Lasso Select":"Velg lasso","Orbital rotation":"Orbital rotasjon",Pan:"Panne","Produced with Plotly":"Laget med Plotly",Reset:"Nullstille","Reset akses":"Nullstille akser","Reset camera to default":"Nullstille kamera til standard","Reset camera to last save":"Nullstille kamera til siste lagret","Reset view":"Nullstille visning","Reset views":"Nullstille visninger","Show closest data on hover":"Vis n\xE6rmeste verdi n\xE5r musepekeren holdes over","Snapshot succeeded":"Bilde Laget","Sorry, there was a problem downloading your snapshot!":"Beklager, noe gikk galt under nedlasting av bildet","Taking snapshot - this may take a few seconds":"Oppretter bilde - dette kan ta noen sekunder","Toggle Spike Lines":"Aktiver / deaktiver topplinjer","Toggle show closest data on hover":"Aktiver / deaktiver n\xE6rmeste verdi n\xE5r musepekeren holdes over","Turntable rotation":"Flat rotation",Zoom:"Zoom","Zoom in":"Zoom inn","Zoom out":"Zoom ut","close:":"steng:","concentration:":"konsentrasjon:","high:":"h\xF8y:","incoming flow count:":"innkommende str\xF8mningssammendrag:","kde:":"kde:","lat:":"lat:","lon:":"lon:","low:":"lav:","lower fence:":"lavere grense","max:":"maks:","mean \xB1 \u03C3:":"gjennomsnitt \xB1 \u03C3:","mean:":"gjennomsnitt:","median:":"median:","min:":"min:","new text":"ny text","open:":"\xE5pen:","outgoing flow count:":"utg\xE5ende str\xF8mningssammendrag:","q1:":"q1:","q3:":"q3:","source:":"kilde:","target:":"m\xE5l:",trace:"serie","upper fence:":"\xF8vre grense:"},format:{days:["S\xF8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\xF8rdag"],shortDays:["S\xF8n","Man","Tir","Ons","Tor","Fre","L\xF8r"],months:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],shortMonths:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"],date:"%d.%m.%Y",decimal:",",thousands:" "}}});var yLe=J((qYt,mLe)=>{"use strict";mLe.exports={moduleType:"locale",name:"pa",dictionary:{},format:{days:["\u0A10\u0A24\u0A35\u0A3E\u0A30","\u0A38\u0A4B\u0A2E\u0A35\u0A3E\u0A30","\u0A2E\u0A70\u0A17\u0A32\u0A35\u0A3E\u0A30","\u0A2C\u0A41\u0A71\u0A27\u0A35\u0A3E\u0A30","\u0A35\u0A40\u0A30\u0A35\u0A3E\u0A30","\u0A38\u0A3C\u0A41\u0A71\u0A15\u0A30\u0A35\u0A3E\u0A30","\u0A38\u0A3C\u0A28\u0A3F\u0A71\u0A1A\u0A30\u0A35\u0A3E\u0A30"],shortDays:["\u0A10\u0A24","\u0A38\u0A4B\u0A2E","\u0A2E\u0A70\u0A17\u0A32","\u0A2C\u0A41\u0A71\u0A27","\u0A35\u0A40\u0A30","\u0A38\u0A3C\u0A41\u0A71\u0A15\u0A30","\u0A38\u0A3C\u0A28\u0A3F\u0A71\u0A1A\u0A30"],months:["\u0A1C\u0A28\u0A35\u0A30\u0A40","\u0A2B\u0A3C\u0A30\u0A35\u0A30\u0A40","\u0A2E\u0A3E\u0A30\u0A1A","\u0A05\u0A2A\u0A4D\u0A30\u0A48\u0A32","\u0A2E\u0A08","\u0A1C\u0A42\u0A28","\u0A1C\u0A41\u0A32\u0A3E\u0A08","\u0A05\u0A17\u0A38\u0A24","\u0A38\u0A24\u0A70\u0A2C\u0A30","\u0A05\u0A15\u0A24\u0A42\u0A2C\u0A30","\u0A28\u0A35\u0A70\u0A2C\u0A30","\u0A26\u0A38\u0A70\u0A2C\u0A30"],shortMonths:["\u0A1C\u0A28","\u0A2B\u0A3C\u0A30","\u0A2E\u0A3E\u0A30","\u0A05\u0A2A\u0A4D\u0A30\u0A48","\u0A2E\u0A08","\u0A1C\u0A42\u0A28","\u0A1C\u0A41\u0A32\u0A3E","\u0A05\u0A17","\u0A38\u0A24\u0A70","\u0A05\u0A15","\u0A28\u0A35\u0A70","\u0A26\u0A38\u0A70"],date:"%d-%m-%Y"}}});var bLe=J((FYt,xLe)=>{"use strict";xLe.exports={moduleType:"locale",name:"pl",dictionary:{},format:{days:["Niedziela","Poniedzia\u0142ek","Wtorek","\u015Aroda","Czwartek","Pi\u0105tek","Sobota"],shortDays:["Nie","Pn","Wt","\u015Ar","Czw","Pt","So"],months:["Stycze\u0144","Luty","Marzec","Kwiecie\u0144","Maj","Czerwiec","Lipiec","Sierpie\u0144","Wrzesie\u0144","Pa\u017Adziernik","Listopad","Grudzie\u0144"],shortMonths:["Sty","Lu","Mar","Kw","Maj","Cze","Lip","Sie","Wrz","Pa","Lis","Gru"],date:"%Y-%m-%d"}}});var _Le=J((zYt,wLe)=>{"use strict";wLe.exports={moduleType:"locale",name:"pt-BR",dictionary:{Autoscale:"Escala autom\xE1tica","Box Select":"Sele\xE7\xE3o retangular","Click to enter Colorscale title":"Clique para editar o t\xEDtulo da escala de cor","Click to enter Component A title":"Clique para editar o t\xEDtulo do Componente A","Click to enter Component B title":"Clique para editar o t\xEDtulo do Componente B","Click to enter Component C title":"Clique para editar o t\xEDtulo do Componente C","Click to enter Plot title":"Clique para editar o t\xEDtulo do Gr\xE1fico","Click to enter X axis title":"Clique para editar o t\xEDtulo do eixo X","Click to enter Y axis title":"Clique para editar o t\xEDtulo do eixo Y","Click to enter radial axis title":"Clique para editar o t\xEDtulo do eixo radial","Compare data on hover":"Comparar dados ao pairar","Double-click on legend to isolate one trace":"Duplo clique na legenda para isolar uma s\xE9rie","Double-click to zoom back out":"Duplo clique para reverter zoom","Download plot as a png":"Fazer download do gr\xE1fico como imagem (png)","Download plot":"Fazer download do gr\xE1fico","Edit in Chart Studio":"Editar no Chart Studio","IE only supports svg. Changing format to svg.":"IE suporta apenas svg. Alterando formato para svg","Lasso Select":"Sele\xE7\xE3o de la\xE7o","Orbital rotation":"Rota\xE7\xE3o orbital",Pan:"Mover","Produced with Plotly.js":"Criado com o Plotly.js",Reset:"Restaurar","Reset axes":"Restaurar eixos","Reset camera to default":"Restaurar c\xE2mera para padr\xE3o","Reset camera to last save":"Restaurar c\xE2mera para \xFAltima salva","Reset view":"Restaurar vis\xE3o","Reset views":"Restaurar vis\xF5es","Show closest data on hover":"Exibir dado mais pr\xF3ximo ao pairar","Snapshot succeeded":"Captura instant\xE2nea completa","Sorry, there was a problem downloading your snapshot!":"Desculpe, houve um problema no download de sua captura instant\xE2nea!","Taking snapshot - this may take a few seconds":"Efetuando captura instant\xE2nea - isso pode levar alguns instantes","Toggle Spike Lines":"Habilitar/desabilitar triangula\xE7\xE3o de linhas","Toggle show closest data on hover":"Habilitar/desabilitar exibi\xE7\xE3o de dado mais pr\xF3ximo ao pairar","Turntable rotation":"Rota\xE7\xE3o de mesa",Zoom:"Zoom","Zoom in":"Ampliar zoom","Zoom out":"Reduzir zoom",close:"fechamento",high:"alta","incoming flow count":"contagem de fluxo de entrada",kde:"kde",lat:"latitude",lon:"longitude",low:"baixa","lower fence":"limite inferior",max:"m\xE1ximo","mean \xB1 \u03C3":"m\xE9dia \xB1 \u03C3",mean:"m\xE9dia",median:"mediana",min:"m\xEDnimo","new text":"novo texto",open:"abertura","outgoing flow count":"contagem de fluxo de sa\xEDda",q1:"q1",q3:"q3",source:"origem",target:"destino",trace:"s\xE9rie","upper fence":"limite superior"},format:{days:["Domingo","Segunda-feira","Ter\xE7a-feira","Quarta-feira","Quinta-feira","Sexta-feira","S\xE1bado"],shortDays:["Dom","Seg","Ter","Qua","Qui","Sex","S\xE1b"],months:["Janeiro","Fevereiro","Mar\xE7o","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],shortMonths:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],date:"%d/%m/%Y",decimal:",",thousands:"."}}});var ALe=J((NYt,TLe)=>{"use strict";TLe.exports={moduleType:"locale",name:"pt-PT",dictionary:{Autoscale:"Escala autom\xE1tica","Box Select":"Sele\xE7\xE3o retangular","Click to enter Colorscale title":"Clique para editar o t\xEDtulo da escala de cor","Click to enter Component A title":"Clique para editar o t\xEDtulo do Componente A","Click to enter Component B title":"Clique para editar o t\xEDtulo do Componente B","Click to enter Component C title":"Clique para editar o t\xEDtulo do Componente C","Click to enter Plot title":"Clique para editar o t\xEDtulo do Gr\xE1fico","Click to enter X axis title":"Clique para editar o t\xEDtulo do eixo X","Click to enter Y axis title":"Clique para editar o t\xEDtulo do eixo Y","Click to enter radial axis title":"Clique para editar o t\xEDtulo do eixo radial","Compare data on hover":"Comparar dados ao pairar","Double-click on legend to isolate one trace":"Duplo clique na legenda para isolar uma s\xE9rie","Double-click to zoom back out":"Duplo clique para reverter amplia\xE7\xE3o","Download plot as a png":"Baixar gr\xE1fico como imagem (png)","Download plot":"Baixar gr\xE1fico","Edit in Chart Studio":"Editar no Chart Studio","IE only supports svg. Changing format to svg.":"IE suporta apenas svg. Alterando formato para svg","Lasso Select":"Sele\xE7\xE3o de la\xE7o","Orbital rotation":"Rota\xE7\xE3o orbital",Pan:"Mover","Produced with Plotly.js":"Criado com Plotly.js",Reset:"Restaurar","Reset axes":"Restaurar eixos","Reset camera to default":"Restaurar c\xE2mera para padr\xE3o","Reset camera to last save":"Restaurar c\xE2mera para \xFAltima grava\xE7\xE3o","Reset view":"Restaurar vista","Reset views":"Restaurar vistas","Show closest data on hover":"Exibir dado mais pr\xF3ximo ao pairar","Snapshot succeeded":"Captura instant\xE2nea com sucesso","Sorry, there was a problem downloading your snapshot!":"Desculpe, houve um problema no download de sua captura instant\xE2nea!","Taking snapshot - this may take a few seconds":"Efetuando captura instant\xE2nea - isso pode demorar alguns segundos","Toggle Spike Lines":"Habilitar/desabilitar triangula\xE7\xE3o de linhas","Toggle show closest data on hover":"Habilitar/desabilitar exibi\xE7\xE3o de dado mais pr\xF3ximo ao pairar","Turntable rotation":"Rodar",Zoom:"Ampliar","Zoom in":"Aumentar Amplia\xE7\xE3o","Zoom out":"Reduzir Amplia\xE7\xE3o",close:"fechar",high:"alta","incoming flow count":"contagem de fluxo de entrada",kde:"kde",lat:"latitude",lon:"longitude",low:"baixa","lower fence":"limite inferior",max:"m\xE1ximo","mean \xB1 \u03C3":"m\xE9dia \xB1 \u03C3",mean:"m\xE9dia",median:"mediana",min:"m\xEDnimo","new text":"novo texto",open:"abrir","outgoing flow count":"contagem de fluxo de sa\xEDda",q1:"q1",q3:"q3",source:"origem",target:"destino",trace:"s\xE9rie","upper fence":"limite superior"},format:{days:["domingo","segunda-feira","ter\xE7a-feira","quarta-feira","quinta-feira","sexta-feira","s\xE1bado"],shortDays:["Dom","Seg","Ter","Qua","Qui","Sex","S\xE1b"],months:["Janeiro","Fevereiro","Mar\xE7o","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],shortMonths:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],date:"%d/%m/%Y"}}});var kLe=J((OYt,MLe)=>{"use strict";MLe.exports={moduleType:"locale",name:"rm",dictionary:{},format:{days:["Dumengia","Glindesdi","Mardi","Mesemna","Gievgia","Venderdi","Sonda"],shortDays:["Dum","Gli","Mar","Mes","Gie","Ven","Som"],months:["Schaner","Favrer","Mars","Avrigl","Matg","Zercladur","Fanadur","Avust","Settember","October","November","December"],shortMonths:["Scha","Fev","Mar","Avr","Matg","Zer","Fan","Avu","Sett","Oct","Nov","Dec"],date:"%d/%m/%Y"}}});var CLe=J((BYt,SLe)=>{"use strict";SLe.exports={moduleType:"locale",name:"ro",dictionary:{},format:{days:["Duminic\u0103","Luni","Marti","Miercuri","Joi","Vineri","S\xE2mb\u0103t\u0103"],shortDays:["Dum","Lun","Mar","Mie","Joi","Vin","S\xE2m"],months:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],shortMonths:["Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Noi","Dec"],date:"%d.%m.%Y"}}});var LLe=J((UYt,ELe)=>{"use strict";ELe.exports={moduleType:"locale",name:"ru",dictionary:{Autoscale:"\u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0435 \u0448\u043A\u0430\u043B\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435","Box Select":"\u0412\u044B\u0434\u0435\u043B\u0435\u043D\u0438\u0435 \u043F\u0440\u044F\u043C\u043E\u0443\u0433\u043E\u043B\u044C\u043D\u043E\u0439 \u043E\u0431\u043B\u0430\u0441\u0442\u0438","Click to enter Colorscale title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u0446\u0432\u0435\u0442\u043E\u0432\u043E\u0439 \u0448\u043A\u0430\u043B\u044B","Click to enter Component A title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430 A","Click to enter Component B title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430 B","Click to enter Component C title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430 C","Click to enter Plot title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u0433\u0440\u0430\u0444\u0438\u043A\u0430","Click to enter X axis title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043E\u0441\u0438 X","Click to enter Y axis title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043E\u0441\u0438 Y","Click to enter radial axis title":"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0432\u0432\u043E\u0434\u0430 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F \u043F\u043E\u043B\u044F\u0440\u043D\u043E\u0439 \u043E\u0441\u0438","Compare data on hover":"\u041F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u0438\u0438 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0432\u0441\u0435 \u0434\u0430\u043D\u043D\u044B\u0435","Double-click on legend to isolate one trace":"\u0414\u0432\u0430\u0436\u0434\u044B \u0449\u0451\u043B\u043A\u043D\u0438\u0442\u0435 \u043F\u043E \u043B\u0435\u0433\u0435\u043D\u0434\u0435 \u0434\u043B\u044F \u0432\u044B\u0434\u0435\u043B\u0435\u043D\u0438\u044F \u043E\u0442\u0434\u0435\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445","Double-click to zoom back out":"\u0414\u043B\u044F \u0441\u0431\u0440\u043E\u0441\u0430 \u043C\u0430\u0441\u0448\u0442\u0430\u0431\u0430 \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044E \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E \u0434\u0432\u0430\u0436\u0434\u044B \u0449\u0451\u043B\u043A\u043D\u0438\u0442\u0435 \u043C\u044B\u0448\u044C\u044E","Download plot":"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0433\u0440\u0430\u0444\u0438\u043A","Download plot as a png":"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 PNG","Edit in Chart Studio":"\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432 Chart Studio","IE only supports svg. Changing format to svg.":"IE \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0442\u043E\u043B\u044C\u043A\u043E svg. \u0424\u043E\u0440\u043C\u0430\u0442 \u0441\u043C\u0435\u043D\u044F\u0435\u0442\u0441\u044F \u043D\u0430 svg.","Lasso Select":"\u041B\u0430\u0441\u0441\u043E","Orbital rotation":"\u041E\u0440\u0431\u0438\u0442\u0430\u043B\u044C\u043D\u043E\u0435 \u0434\u0432\u0438\u0436\u0435\u043D\u0438\u0435",Pan:"\u0421\u0434\u0432\u0438\u0433","Produced with Plotly.js":"\u0421\u043E\u0437\u0434\u0430\u043D\u043E \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E Plotly.js",Reset:"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E","Reset axes":"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u043E\u0441\u0435\u0439 \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E","Reset camera to default":"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u043A\u0430\u043C\u0435\u0440\u044B \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E","Reset camera to last save":"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043A\u0430\u043C\u0435\u0440\u0443 \u043A \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0435\u043C\u0443 \u0441\u043E\u0445\u0440\u0430\u043D\u0451\u043D\u043D\u043E\u043C\u0443 \u0441\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u044E","Reset view":"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E","Reset views":"\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F \u043A \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E","Show closest data on hover":"\u041F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u0438\u0438 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0431\u043B\u0438\u0436\u0430\u0439\u0448\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435","Snapshot succeeded":"\u0421\u043D\u0438\u043C\u043E\u043A \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0441\u043E\u0437\u0434\u0430\u043D","Sorry, there was a problem downloading your snapshot!":"\u041A \u0441\u043E\u0436\u0430\u043B\u0435\u043D\u0438\u044E, \u0432\u043E\u0437\u043D\u0438\u043A\u043B\u0430 \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u0430 \u043F\u0440\u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u0438 \u0441\u043D\u0438\u043C\u043A\u0430","Taking snapshot - this may take a few seconds":"\u0414\u0435\u043B\u0430\u0435\u0442\u0441\u044F \u0441\u043D\u0438\u043C\u043E\u043A - \u044D\u0442\u043E \u043C\u043E\u0436\u0435\u0442 \u0437\u0430\u043D\u044F\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434","Toggle Spike Lines":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C/\u0432\u044B\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u043B\u0438\u043D\u0438\u0439 \u043F\u0440\u043E\u0435\u043A\u0446\u0438\u0439 \u0442\u043E\u0447\u0435\u043A","Toggle show closest data on hover":"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C/\u0432\u044B\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043F\u043E\u043A\u0430\u0437 \u0431\u043B\u0438\u0436\u0430\u0439\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445 \u043F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u0438\u0438","Turntable rotation":"\u0412\u0440\u0430\u0449\u0435\u043D\u0438\u0435 \u043D\u0430 \u043F\u043E\u0432\u043E\u0440\u043E\u0442\u043D\u043E\u043C \u0441\u0442\u043E\u043B\u0435",Zoom:"\u0417\u0443\u043C","Zoom in":"\u0423\u0432\u0435\u043B\u0438\u0447\u0438\u0442\u044C","Zoom out":"\u0423\u043C\u0435\u043D\u044C\u0448\u0438\u0442\u044C","close:":"\u0417\u0430\u043A\u0440\u044B\u0442\u0438\u0435:","concentration:":"\u041A\u043E\u043D\u0446\u0435\u043D\u0442\u0440\u0430\u0446\u0438\u044F:","high:":"\u041C\u0430\u043A\u0441\u0438\u043C\u0443\u043C:","incoming flow count:":"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0432\u0445\u043E\u0434\u044F\u0449\u0438\u0445 \u0441\u0432\u044F\u0437\u0435\u0439:","kde:":"\u042F\u0434\u0435\u0440\u043D\u0430\u044F \u043E\u0446\u0435\u043D\u043A\u0430 \u043F\u043B\u043E\u0442\u043D\u043E\u0441\u0442\u0438:","lat:":"\u0428\u0438\u0440\u043E\u0442\u0430:","lon:":"\u0414\u043E\u043B\u0433\u043E\u0442\u0430:","low:":"\u041C\u0438\u043D\u0438\u043C\u0443\u043C:","lower fence:":"\u041D\u0438\u0436\u043D\u044F\u044F \u0433\u0440\u0430\u043D\u0438\u0446\u0430:","max:":"\u041C\u0430\u043A\u0441.:","mean \xB1 \u03C3:":"\u0421\u0440\u0435\u0434\u043D\u0435\u0435 \xB1 \u03C3:","mean:":"\u0421\u0440\u0435\u0434\u043D\u0435\u0435:","median:":"\u041C\u0435\u0434\u0438\u0430\u043D\u0430:","min:":"\u041C\u0438\u043D.:","new text":"\u041D\u043E\u0432\u044B\u0439 \u0442\u0435\u043A\u0441\u0442","open:":"\u041E\u0442\u043A\u0440\u044B\u0442\u0438\u0435:","outgoing flow count:":"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0438\u0441\u0445\u043E\u0434\u044F\u0449\u0438\u0445 \u0441\u0432\u044F\u0437\u0435\u0439:","q1:":"q1:","q3:":"q3:","source:":"\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A:","target:":"\u0426\u0435\u043B\u044C:",trace:"\u0420\u044F\u0434","upper fence:":"\u0412\u0435\u0440\u0445\u043D\u044F\u044F \u0433\u0440\u0430\u043D\u0438\u0446\u0430:"},format:{days:["\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435","\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A","\u0432\u0442\u043E\u0440\u043D\u0438\u043A","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043F\u044F\u0442\u043D\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043E\u0442\u0430"],shortDays:["\u0432\u0441","\u043F\u043D","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043F\u0442","\u0441\u0431"],months:["\u042F\u043D\u0432\u0430\u0440\u044C","\u0424\u0435\u0432\u0440\u0430\u043B\u044C","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0435\u043B\u044C","\u041C\u0430\u0439","\u0418\u044E\u043D\u044C","\u0418\u044E\u043B\u044C","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044C","\u041E\u043A\u0442\u044F\u0431\u0440\u044C","\u041D\u043E\u044F\u0431\u0440\u044C","\u0414\u0435\u043A\u0430\u0431\u0440\u044C"],shortMonths:["\u042F\u043D\u0432.","\u0424\u0435\u0432\u0440.","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440.","\u041C\u0430\u0439","\u0418\u044E\u043D\u044C","\u0418\u044E\u043B\u044C","\u0410\u0432\u0433.","\u0421\u0435\u043D\u0442.","\u041E\u043A\u0442.","\u041D\u043E\u044F","\u0414\u0435\u043A."],date:"%d.%m.%Y",decimal:",",thousands:" "}}});var RLe=J((HYt,DLe)=>{"use strict";DLe.exports={moduleType:"locale",name:"si",dictionary:{Autoscale:"\u0DC3\u0DCA\u0DC0\u0DBA\u0D82 \u0DB4\u0DBB\u0DD2\u0DB8\u0DCF\u0DAB\u0DB1\u0DBA","Box Select":"\u0D9A\u0DDC\u0DA7\u0DD4\u0DC0 \u0DC0\u0DBB\u0DAB\u0DBA","Click to enter Colorscale title":"\u0DC0\u0DBB\u0DCA\u0DAB\u0DB4\u0DBB\u0DD2\u0DB8\u0DCF\u0DAB\u0DB1 \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter Component A title":"\u0DC3\u0D82\u0DBB\u0DA0\u0D9A\u0DBA\u0DDA \u0D85 \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter Component B title":"\u0DC3\u0D82\u0DBB\u0DA0\u0D9A\u0DBA\u0DDA \u0D86 \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter Component C title":"\u0DC3\u0D82\u0DBB\u0DA0\u0D9A\u0DBA\u0DDA \u0D87 \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter Plot title":"\u0D9A\u0DDC\u0DA7\u0DD4\u0DC0\u0DD9\u0DC4\u0DD2 \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter X axis title":"\u0DAD\u0DD2\u0DBB\u0DC3\u0DCA \u0D85\u0D9A\u0DCA\u200D\u0DC2\u0DBA\u0DDA \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter Y axis title":"\u0DC3\u0DD2\u0DBB\u0DC3\u0DCA \u0D85\u0D9A\u0DCA\u200D\u0DC2\u0DBA\u0DDA \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Click to enter radial axis title":"\u0D85\u0DBB\u0DD3\u0DBA \u0D85\u0D9A\u0DCA\u200D\u0DC2\u0DBA\u0DDA \u0DC3\u0DD2\u0DBB\u0DD0\u0DC3\u0DD2\u0DBA \u0D87\u0DAD\u0DD4\u0DBD\u0DCA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Compare data on hover":"\u0DC3\u0DD4\u0DB1\u0D82\u0D9C\u0DD4 \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DDA\u0DAF\u0DD3 \u0DAF\u0DAD\u0DCA\u0DAD \u0DC3\u0DC3\u0DB3\u0DB1\u0DCA\u0DB1","Double-click on legend to isolate one trace":"Double-click on legend to isolate one trace","Double-click to zoom back out":"\u0D86\u0DB4\u0DC3\u0DD4 \u0D9A\u0DD4\u0DA9\u0DCF\u0DBD\u0DB1\u0DBA \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DA7 \u0DAF\u0DD9\u0DC0\u0DBB\u0D9A\u0DCA \u0D94\u0DB6\u0DB1\u0DCA\u0DB1","Download plot":"\u0D9A\u0DDC\u0DA7\u0DD4\u0DC0 \u0DB6\u0DCF\u0D9C\u0DB1\u0DCA\u0DB1","Download plot as a png":"\u0D9A\u0DDC\u0DA7\u0DD4\u0DC0 \u0DB4\u0DD3\u0D91\u0DB1\u0DCA\u0DA2\u0DD3 \u0DBD\u0DD9\u0DC3 \u0DB6\u0DCF\u0D9C\u0DB1\u0DCA\u0DB1","Draw circle":"\u0D9A\u0DC0\u0DBA\u0D9A\u0DCA \u0D85\u0DB3\u0DD2\u0DB1\u0DCA\u0DB1","Draw closed freeform":"\u0DC3\u0D82\u0DC0\u0DD8\u0DAD \u0DBD\u0DD9\u0DC3 \u0DB1\u0DD2\u0DAF\u0DC4\u0DC3\u0DDA \u0D85\u0DB3\u0DD2\u0DB1\u0DCA\u0DB1","Draw line":"\u0DBB\u0DDA\u0D9B\u0DCF\u0DC0\u0D9A\u0DCA \u0D85\u0DB3\u0DD2\u0DB1\u0DCA\u0DB1","Draw open freeform":"\u0DC0\u0DD2\u0DC0\u0DD8\u0DAD \u0DBD\u0DD9\u0DC3 \u0DB1\u0DD2\u0DAF\u0DC4\u0DC3\u0DDA \u0D85\u0DB3\u0DD2\u0DB1\u0DCA\u0DB1","Draw rectangle":"\u0DC3\u0DD8\u0DA2\u0DD4\u0D9A\u0DDD\u0DAB\u0DBA\u0D9A\u0DCA \u0D85\u0DB3\u0DD2\u0DB1\u0DCA\u0DB1","Edit in Chart Studio":"\u0DB4\u0DCA\u200D\u0DBB\u0DC3\u0DCA\u0DAD\u0DCF\u0DBB \u0DA0\u0DD2\u0DAD\u0DCA\u200D\u0DBB\u0DCF\u0D9C\u0DCF\u0DBB\u0DBA\u0DD9\u0DC4\u0DD2 \u0DC3\u0D82\u0DC3\u0DCA\u0D9A\u0DBB\u0DAB\u0DBA","Erase active shape":"\u0DC3\u0D9A\u0DCA\u200D\u0DBB\u0DD2\u0DBA \u0DC4\u0DD0\u0DA9\u0DBA \u0DB8\u0D9A\u0DB1\u0DCA\u0DB1","IE only supports svg. Changing format to svg.":"\u0D89.\u0D91. \u0D91\u0DC3\u0DCA\u0DC0\u0DD3\u0DA2\u0DD3 \u0DC3\u0DB3\u0DC4\u0DCF \u0DB4\u0DB8\u0DAB\u0D9A\u0DCA \u0DC3\u0DC4\u0DCF\u0DBA \u0DAF\u0D9A\u0DCA\u0DC0\u0DBA\u0DD2. \u0D86\u0D9A\u0DD8\u0DAD\u0DD2\u0DBA \u0D91\u0DBA\u0DA7 \u0DC0\u0DD9\u0DB1\u0DC3\u0DCA \u0DC0\u0DD9\u0DB8\u0DD2\u0DB1\u0DCA","Lasso Select":"\u0DB8\u0DCF\u0DBA\u0DD2\u0DB8 \u0DC0\u0DBB\u0DAB\u0DBA","Orbital rotation":"\u0D9A\u0DCF\u0D9A\u0DCA\u200D\u0DC2\u0DD2\u0D9A \u0D9A\u0DBB\u0D9A\u0DD0\u0DC0\u0DD3\u0DB8",Pan:"\u0DA0\u0DBD\u0D9A\u0DBA","Produced with Plotly":"\u0DB4\u0DCA\u0DBD\u0DDC\u0DA7\u0DCA\u0DBD\u0DD2 \u0DC3\u0DB8\u0D9F \u0D8B\u0DB4\u0DAF\u0DC0\u0DB1 \u0DBD\u0DAF\u0DD2",Reset:"\u0DBA\u0DC5\u0DD2 \u0DC3\u0D9A\u0DC3\u0DB1\u0DCA\u0DB1","Reset axes":"\u0D85\u0D9A\u0DCA\u200D\u0DC2 \u0DBA\u0DC5\u0DD2 \u0DC3\u0D9A\u0DC3\u0DB1\u0DCA\u0DB1","Reset camera to default":"Reset camera to default","Reset camera to last save":"Reset camera to last save","Reset view":"\u0DAF\u0DD0\u0D9A\u0DCA\u0DB8 \u0DBA\u0DC5\u0DD2 \u0DC3\u0D9A\u0DC3\u0DB1\u0DCA\u0DB1","Reset views":"\u0DAF\u0DD0\u0D9A\u0DCA\u0DB8\u0DCA \u0DBA\u0DC5\u0DD2 \u0DC3\u0D9A\u0DC3\u0DB1\u0DCA\u0DB1","Show closest data on hover":"\u0DC3\u0DD4\u0DB1\u0D82\u0D9C\u0DD4 \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DDA\u0DAF\u0DD3 \u0D86\u0DC3\u0DB1\u0DCA\u0DB1\u0DB8 \u0DAF\u0DAD\u0DCA\u0DAD \u0DB4\u0DD9\u0DB1\u0DCA\u0DC0\u0DB1\u0DCA\u0DB1","Snapshot succeeded":"\u0DA1\u0DCF\u0DBA\u0DCF\u0DBB\u0DD6\u0DB4\u0DBA \u0DC3\u0DCF\u0DBB\u0DCA\u0DAE\u0D9A\u0DBA\u0DD2","Sorry, there was a problem downloading your snapshot!":"\u0DC3\u0DB8\u0DCF\u0DC0\u0DB1\u0DCA\u0DB1, \u0D94\u0DB6\u0D9C\u0DDA \u0DA1\u0DCF\u0DBA\u0DCF\u0DBB\u0DD6\u0DB4\u0DBA \u0DB6\u0DCF\u0D9C\u0DD0\u0DB1\u0DD3\u0DB8\u0DDA \u0D9C\u0DD0\u0DA7\u0DBD\u0DD4\u0DC0\u0D9A\u0DCA \u0D87\u0DAD!","Taking snapshot - this may take a few seconds":"\u0DA1\u0DCF\u0DBA\u0DCF\u0DBB\u0DD6\u0DB4\u0DBA \u0D9C\u0DD0\u0DB1\u0DD9\u0DB8\u0DD2\u0DB1\u0DCA - \u0DB8\u0DD9\u0DBA\u0DA7 \u0DAD\u0DAD\u0DCA. \u0D9A\u0DD2\u0DC4\u0DD2\u0DB4\u0DBA\u0D9A\u0DCA \u0D9C\u0DAD\u0DC0\u0DD2\u0DBA \u0DC4\u0DD0\u0D9A\u0DD2\u0DBA","Toggle Spike Lines":"Toggle Spike Lines","Toggle show closest data on hover":"Toggle show closest data on hover","Turntable rotation":"\u0DB6\u0DB8\u0DBB \u0D9A\u0DBB\u0D9A\u0DD0\u0DC0\u0DD3\u0DB8",Zoom:"\u0DC0\u0DD2\u0DC1\u0DCF\u0DBD \u0D9A\u0DBB\u0DB1\u0DCA\u0DB1","Zoom in":"\u0DC0\u0DD2\u0DC1\u0DCF\u0DBD\u0DB1\u0DBA","Zoom out":"\u0D9A\u0DD4\u0DA9\u0DCF\u0DBD\u0DB1\u0DBA","close:":"\u0DC0\u0DC3\u0DB1\u0DCA\u0DB1:","concentration:":"\u0DC3\u0D82\u0D9A\u0DDA\u0DB1\u0DCA\u0DAF\u0DCA\u200D\u0DBB\u0DAB\u0DBA:","high:":"high:","incoming flow count:":"\u0D87\u0DAD\u0DD4\u0DC5\u0DA7\u0D91\u0DB1 \u0DB4\u0DCA\u200D\u0DBB\u0DC0\u0DCF\u0DC4\u0DBA \u0D9C\u0DAB\u0DB1\u0DBA:","kde:":"kde:","lat:":"lat:","lon:":"lon:","low:":"low:","lower fence:":"lower fence:","max:":"\u0D8B\u0DB4\u0DBB\u0DD2\u0DB8:","mean \xB1 \u03C3:":"\u0DB8\u0DB0\u0DCA\u200D\u0DBA\u0DB1\u0DCA\u200D\u0DBA \xB1 \u03C3:","mean:":"\u0DB8\u0DB0\u0DCA\u200D\u0DBA\u0DB1\u0DCA\u200D\u0DBA:","median:":"\u0DB8\u0DB0\u0DCA\u200D\u0DBA\u0DC3\u0DAE\u0DBA:","min:":"\u0D85\u0DC0\u0DB8:","new text":"\u0DB1\u0DC0 \u0DB4\u0DCF\u0DA8\u0DBA","open:":"\u0DC0\u0DD2\u0DC0\u0DD8\u0DAD:","outgoing flow count:":"\u0DB4\u0DD2\u0DA7\u0DAD\u0DA7\u0DBA\u0DB1 \u0DB4\u0DCA\u200D\u0DBB\u0DC0\u0DCF\u0DC4\u0DBA \u0D9C\u0DAB\u0DB1\u0DBA:","q1:":"q1:","q3:":"q3:","source:":"\u0DB8\u0DD6\u0DBD\u0DCF\u0DC1\u0DCA\u200D\u0DBB\u0DBA:","target:":"\u0D89\u0DBD\u0D9A\u0DCA\u0D9A\u0DBA:",trace:"trace","upper fence:":"upper fence:"},format:{days:["\u0D89\u0DBB\u0DD2\u0DAF\u0DCF","\u0DC3\u0DB3\u0DD4\u0DAF\u0DCF","\u0D85\u0D9F\u0DC4\u0DBB\u0DD4\u0DC0\u0DCF\u0DAF\u0DCF","\u0DB6\u0DAF\u0DCF\u0DAF\u0DCF","\u0DB6\u0DCA\u200D\u0DBB\u0DC4\u0DC3\u0DCA\u0DB4\u0DAD\u0DD2\u0DB1\u0DCA\u0DAF\u0DCF","\u0DC3\u0DD2\u0D9A\u0DD4\u0DBB\u0DCF\u0DAF\u0DCF","\u0DC3\u0DD9\u0DB1\u0DC3\u0DD4\u0DBB\u0DCF\u0DAF\u0DCF"],shortDays:["\u0D89\u0DBB\u0DD2\u0DAF\u0DCF","\u0DC3\u0DB3\u0DD4\u0DAF\u0DCF","\u0D85\u0D9F\u0DC4","\u0DB6\u0DAF\u0DCF\u0DAF\u0DCF","\u0DB6\u0DCA\u200D\u0DBB\u0DC4\u0DC3\u0DCA","\u0DC3\u0DD2\u0D9A\u0DD4","\u0DC3\u0DD9\u0DB1"],months:["\u0DAF\u0DD4\u0DBB\u0DD4\u0DAD\u0DD4","\u0DB1\u0DC0\u0DB8\u0DCA","\u0DB8\u0DD0\u0DAF\u0DD2\u0DB1\u0DCA","\u0DB6\u0D9A\u0DCA","\u0DC0\u0DD9\u0DC3\u0D9A\u0DCA","\u0DB4\u0DDC\u0DC3\u0DDC\u0DB1\u0DCA","\u0D87\u0DC3\u0DC5","\u0DB1\u0DD2\u0D9A\u0DD2\u0DAB\u0DD2","\u0DB6\u0DD2\u0DB1\u0DBB","\u0DC0\u0DB4\u0DCA","\u0D89\u0DBD\u0DCA","\u0D8B\u0DB3\u0DD4\u0DC0\u0DB4\u0DCA"],shortMonths:["\u0DAF\u0DD4\u0DBB\u0DD4\u0DAD\u0DD4","\u0DB1\u0DC0\u0DB8\u0DCA","\u0DB8\u0DD0\u0DAF\u0DD2\u0DB1\u0DCA","\u0DB6\u0D9A\u0DCA","\u0DC0\u0DD9\u0DC3\u0D9A\u0DCA","\u0DB4\u0DDC\u0DC3\u0DDC\u0DB1\u0DCA","\u0D87\u0DC3\u0DC5","\u0DB1\u0DD2\u0D9A\u0DD2\u0DAB\u0DD2","\u0DB6\u0DD2\u0DB1\u0DBB","\u0DC0\u0DB4\u0DCA","\u0D89\u0DBD\u0DCA","\u0D8B\u0DB3\u0DD4"],date:"%d-%m-%Y"}}});var ILe=J((jYt,PLe)=>{"use strict";PLe.exports={moduleType:"locale",name:"sk",dictionary:{Autoscale:"Auto rozsah","Box Select":"Obd\u013A\u017Enikov\xFD v\xFDber","Click to enter Colorscale title":"Kliknite pre zadanie n\xE1zvu farebnej \u0161k\xE1ly","Click to enter Component A title":"Kliknite pre zadanie n\xE1zvu komponentu A","Click to enter Component B title":"Kliknite pre zadanie n\xE1zvu komponentu B","Click to enter Component C title":"Kliknite pre zadanie n\xE1zvu komponentu C","Click to enter Plot title":"Kliknite pre zadanie n\xE1zvu grafu","Click to enter X axis title":"Kliknite pre zadanie n\xE1zvu osi X","Click to enter Y axis title":"Kliknite pre zadanie n\xE1zvu osi Y","Click to enter radial axis title":"Kliknite pre zadanie n\xE1zvu radi\xE1lnej osi","Compare data on hover":"Porovna\u0165 hodnoty pri prejden\xED my\u0161ou","Double-click on legend to isolate one trace":"Dvojklikom na legendu izolujete jednu d\xE1tov\xFA sadu","Double-click to zoom back out":"Dvojklikom vr\xE1tite zv\xE4\u010D\u0161enie","Download plot as a png":"Ulo\u017Ei\u0165 ako PNG","Download plot":"Ulo\u017Ei\u0165","Edit in Chart Studio":"Editova\u0165 v Chart Studio","IE only supports svg. Changing format to svg.":"IE podporuje iba SVG form\xE1t. Zmenen\xE9 na SVG.","Lasso Select":"V\xFDber lasom","Orbital rotation":"Rot\xE1cia (orbit\xE1lna)",Pan:"Pos\xFAvanie","Produced with Plotly.js":"Vytvoren\xE9 pomocou Plotly.js",Reset:"Obnovi\u0165 nastavenie","Reset axes":"Obnovi\u0165 nastavenie os\xED","Reset camera to default":"Obnovi\u0165 nastavenie kamery do predvolen\xE9ho stavu","Reset camera to last save":"Obnovi\u0165 nastavenie kamery do posledn\xE9ho ulo\u017Een\xE9ho stavu","Reset view":"Obnovi\u0165 nastavenie poh\u013Eadu","Reset views":"Obnovi\u0165 nastavenie poh\u013Eadov","Show closest data on hover":"Zobrazi\u0165 najbli\u017E\u0161iu hodnotu p\u0159i prejden\xED my\u0161ou","Snapshot succeeded":"Obr\xE1zok vytvoren\xFD","Sorry, there was a problem downloading your snapshot!":"Ospravedl\u0148ujeme sa, do\u0161lo k chybe pri s\u0165ahovan\xED obr\xE1zka!","Taking snapshot - this may take a few seconds":"Sn\xEDmanie - m\xF4\u017Ee trva\u0165 nieko\u013Eko sek\xFAnd",Zoom:"Zv\xE4\u010D\u0161enie","Zoom in":"Zv\xE4\u010D\u0161i\u0165","Zoom out":"Zmen\u0161i\u0165","close:":"zavrie\u0165:",trace:"d\xE1tov\xE1 sada","lat:":"Lat.:","lon:":"Lon.:","q1:":"q1:","q3:":"q3:","source:":"zdroj:","target:":"cie\u013E:","lower fence:":"spodn\xE1 hranica:","upper fence:":"vrchn\xE1 hranica:","max:":"max.:","mean \xB1 \u03C3:":"priemer \xB1 \u03C3:","mean:":"priemer:","median:":"medi\xE1n:","min:":"min.:","new text":"nov\xFD text","Turntable rotation":"Rot\xE1cia (oto\u010Dn\xFD stol\xEDk)","Toggle Spike Lines":"Prepn\xFA\u0165 zobrazenie vodiacich \u010Diar","open:":"otvori\u0165:","high:":"horn\xE1:","low:":"doln\xE1:","Toggle show closest data on hover":"Prepn\xFA\u0165 zobrazovanie najbli\u017E\u0161ej hodnoty pri prejden\xED my\u0161ou","incoming flow count:":"po\u010Det \xFAdajov na vstupe:","outgoing flow count:":"po\u010Det \xFAdajov na v\xFDstupe:","kde:":"kde:"},format:{days:["Nede\u013Ea","Pondelok","Utorok","Streda","\u0160tvrtok","Piatok","Sobota"],shortDays:["Ned","Pon","Uto","Str","\u0160tv","Pia","Sob"],months:["Janu\xE1r","Febru\xE1r","Marec","Apr\xEDl","M\xE1j","J\xFAn","J\xFAl","August","September","Okt\xF3ber","November","December"],shortMonths:["Jan","Feb","Mar","Apr","M\xE1j","J\xFAn","J\xFAl","Aug","Sep","Okt","Nov","Dec"],date:"%d.%m.%Y",decimal:",",thousands:" "}}});var FLe=J((VYt,qLe)=>{"use strict";qLe.exports={moduleType:"locale",name:"sl",dictionary:{},format:{days:["Nedelja","Ponedeljek","Torek","Sreda","\u010Cetrtek","Petek","Sobota"],shortDays:["Ned","Pon","Tor","Sre","\u010Cet","Pet","Sob"],months:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],date:"%d.%m.%Y"}}});var NLe=J((YYt,zLe)=>{"use strict";zLe.exports={moduleType:"locale",name:"sq",dictionary:{},format:{days:["E Diel","E H\xEBn\xEB","E Mart\xEB","E M\xEBrkur\xEB","E Enjte","E Premte","E Shtune"],shortDays:["Di","H\xEB","Ma","M\xEB","En","Pr","Sh"],months:["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","N\xEBntor","Dhjetor"],shortMonths:["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gus","Sht","Tet","N\xEBn","Dhj"],date:"%d.%m.%Y"}}});var BLe=J((GYt,OLe)=>{"use strict";OLe.exports={moduleType:"locale",name:"sr-SR",dictionary:{},format:{days:["Nedelja","Ponedeljak","Utorak","Sreda","\u010Cetvrtak","Petak","Subota"],shortDays:["Ned","Pon","Uto","Sre","\u010Cet","Pet","Sub"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],date:"%d/%m/%Y"}}});var HLe=J((WYt,ULe)=>{"use strict";ULe.exports={moduleType:"locale",name:"sr",dictionary:{},format:{days:["\u041D\u0435\u0434\u0435\u0459\u0430","\u041F\u043E\u043D\u0435\u0434\u0435\u0459\u0430\u043A","\u0423\u0442\u043E\u0440\u0430\u043A","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0440\u0442\u0430\u043A","\u041F\u0435\u0442\u0430\u043A","\u0421\u0443\u0431\u043E\u0442\u0430"],shortDays:["\u041D\u0435\u0434","\u041F\u043E\u043D","\u0423\u0442\u043E","\u0421\u0440\u0435","\u0427\u0435\u0442","\u041F\u0435\u0442","\u0421\u0443\u0431"],months:["\u0408\u0430\u043D\u0443\u0430\u0440","\u0424\u0435\u0431\u0440\u0443\u0430\u0440","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0438\u043B","\u041C\u0430\u0458","\u0408\u0443\u043D","\u0408\u0443\u043B","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043F\u0442\u0435\u043C\u0431\u0430\u0440","\u041E\u043A\u0442\u043E\u0431\u0430\u0440","\u041D\u043E\u0432\u0435\u043C\u0431\u0430\u0440","\u0414\u0435\u0446\u0435\u043C\u0431\u0430\u0440"],shortMonths:["\u0408\u0430\u043D","\u0424\u0435\u0431","\u041C\u0430\u0440","\u0410\u043F\u0440","\u041C\u0430\u0458","\u0408\u0443\u043D","\u0408\u0443\u043B","\u0410\u0432\u0433","\u0421\u0435\u043F","\u041E\u043A\u0442","\u041D\u043E\u0432","\u0414\u0435\u0446"],date:"%d/%m/%Y"}}});var VLe=J((XYt,jLe)=>{"use strict";jLe.exports={moduleType:"locale",name:"sv",dictionary:{Autoscale:"Autoskala","Box Select":"V\xE4lj rektangel","Click to enter Colorscale title":"Klicka f\xF6r att ange titel p\xE5 f\xE4rgskala","Click to enter Component A title":"Klicka f\xF6r att ange titel p\xE5 komponent A","Click to enter Component B title":"Klicka f\xF6r att ange titel p\xE5 komponent B","Click to enter Component C title":"Klicka f\xF6r att ange titel p\xE5 komponent C","Click to enter Plot title":"Klicka f\xF6r att ange titel p\xE5 diagram","Click to enter X axis title":"Klicka f\xF6r att ange titel p\xE5 x-axel","Click to enter Y axis title":"Klicka f\xF6r att ange titel p\xE5 y-axel","Click to enter radial axis title":"Klicka f\xF6r att ange titel p\xE5 radiell axel","Compare data on hover":"J\xE4mf\xF6r data n\xE4r muspekaren h\xE5lls \xF6ver","Double-click on legend to isolate one trace":"Dubbelklicka p\xE5 f\xF6rklaringen f\xF6r att visa endast en serie","Double-click to zoom back out":"Dubbelklicka f\xF6r att zooma ut igen","Download plot":"Ladda ner diagram","Download plot as a png":"Ladda ner diagram som png","Edit in Chart Studio":"Editera i Chart Studio","IE only supports svg. Changing format to svg.":"IE st\xF6der enbart svg. Byter format till svg.","Lasso Select":"V\xE4lj lasso","Orbital rotation":"Orbital rotation",Pan:"Panorera","Produced with Plotly.js":"Skapad med Plotly.js",Reset:"\xC5terst\xE4ll","Reset axes":"\xC5terst\xE4ll axlar","Reset camera to default":"\xC5terst\xE4ll kamera till standard","Reset camera to last save":"\xC5terst\xE4ll kamera till senast sparad","Reset view":"\xC5terst\xE4ll vy","Reset views":"\xC5terst\xE4ll vyer","Show closest data on hover":"Visa n\xE4rmaste v\xE4rde n\xE4r muspekaren h\xE5lls \xF6ver","Snapshot succeeded":"Bild skapad","Sorry, there was a problem downloading your snapshot!":"Tyv\xE4rr gick n\xE5got fel vid nedladdning av bild","Taking snapshot - this may take a few seconds":"Skapar bild - detta kan ta n\xE5gra sekunder","Toggle Spike Lines":"Aktivera/Inaktivera topplinjer","Toggle show closest data on hover":"Aktivera/Inaktivera visa n\xE4rmaste v\xE4rde n\xE4r muspekaren h\xE5lls \xF6ver","Turntable rotation":"Platt rotation",Zoom:"Zooma","Zoom in":"Zooma in","Zoom out":"Zooma ut","close:":"st\xE4ngning:","concentration:":"koncentration:","high:":"h\xF6g:","incoming flow count:":"inkommande fl\xF6de summering:","kde:":"kde:","lat:":"lat:","lon:":"lon:","low:":"l\xE5g:","lower fence:":"undre gr\xE4ns:","max:":"max:","mean \xB1 \u03C3:":"medel \xB1 \u03C3:","mean:":"medel:","median:":"median:","min:":"min:","new text":"ny text","open:":"\xF6ppning:","outgoing flow count:":"utg\xE5ende fl\xF6de summering:","q1:":"q1:","q3:":"q3:","source:":"k\xE4lla:","target:":"m\xE5l:",trace:"serie","upper fence:":"\xF6vre gr\xE4ns:"},format:{days:["S\xF6ndag","M\xE5ndag","Tisdag","Onsdag","Torsdag","Fredag","L\xF6rdag"],shortDays:["S\xF6n","M\xE5n","Tis","Ons","Tor","Fre","L\xF6r"],months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],shortMonths:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],date:"%Y-%m-%d"}}});var GLe=J((ZYt,YLe)=>{"use strict";YLe.exports={moduleType:"locale",name:"sw",dictionary:{Autoscale:"Kigezo - otomatiki","Box Select":"Teua kisanduku","Click to enter Colorscale title":"Bonyeza kuandika kichwa cha Colorscale","Click to enter Component A title":"Bonyeza kuandika kichwa cha sehemu A","Click to enter Component B title":"Bonyeza kuandika kichwa cha sehemu B","Click to enter Component C title":"Bonyeza kuandika kichwa cha sehemu C","Click to enter Plot title":"Bonyeza kuandika kichwa cha Plot","Click to enter X axis title":"Bonyeza kuandika kichwa cha mhimili wa X","Click to enter Y axis title":"Bonyeza kuandika kichwa cha mhimili wa Y","Click to enter radial axis title":"Bonyeza kuandika kichwa cha mhimili wa radial","Compare data on hover":"Linganisha data kwa kuelea kielekezi","Double-click on legend to isolate one trace":"Bonyeza mara mbili juu ya hadithi ili kutenganisha moja kwa moja","Double-click to zoom back out":"Bonyeza mara mbili ili kuvuta nje","Download plot as a png":"Pakua mpango kama png","Download plot":"Pakua mpango","Edit in Chart Studio":"Hariri katika Chart studio","IE only supports svg. Changing format to svg.":"IE inatumia tu svg. Tunabadilisha muundo kuwa svg.","Lasso Select":"Kuteua lasso","Orbital rotation":"Mzunguko wa mazao",Pan:"Tandaza","Produced with Plotly.js":"Ilitengenezwa na Plotly.js",Reset:"Weka upya","Reset axes":"Weka upya axes","Reset camera to default":"Rudisha kamera kwenye uhifadhi wa default","Reset camera to last save":"Rudisha kamera kwenye uhifadhi wa mwisho","Reset view":"Weka upya mtazamo","Reset views":"Weka upya maoni","Show closest data on hover":"Onyesha data iliyo karibu zaidi kielekezi kinapoelea","Snapshot succeeded":"Snapshot ilifanikiwa","Sorry, there was a problem downloading your snapshot!":"Samahani, kulikuwa na shida kupakua picha yako!","Taking snapshot - this may take a few seconds":"Kuchukua snapshot - hii inaweza kuchukua sekunde chache","Toggle Spike Lines":"Badilisha Mistari ya Spike","Toggle show closest data on hover":"Badilisha mabadiliko ya karibu zaidi kwenye hover","Turntable rotation":"Zunguka kwa mhimili wa Z",Zoom:"Vuta","Zoom in":"Vuta nje","Zoom out":"Vuta ndani","close:":"funga:","high:":"juu:","incoming flow count:":"hesabu ya mtiririko unaokuja:","kde:":"kde:","lat:":"lat:","lon:":"lon:","low:":"chini:","lower fence:":"fensi ya chini:","max:":"upeo:","mean \xB1 \u03C3:":"maana \xB1 \u03C3:","mean:":"maana:","median:":"wastani:","min:":"kidogo:","new text":"nakala mpya","open:":"fungua:","outgoing flow count:":"hesabu ya mtiririko unaotoka:","q1:":"q1:","q3:":"q3:","source:":"chanzo:","target:":"lengo:",trace:"fuatilia","upper fence:":"Fensi ya juu:"},format:{days:["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Desemba"],shortMonths:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Des"],date:"%d/%m/%Y",decimal:".",thousands:","}}});var XLe=J((JYt,WLe)=>{"use strict";WLe.exports={moduleType:"locale",name:"ta",dictionary:{},format:{days:["\u0B9E\u0BBE\u0BAF\u0BBF\u0BB1\u0BCD\u0BB1\u0BC1\u0B95\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0BA4\u0BBF\u0B99\u0BCD\u0B95\u0B9F\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0B9A\u0BC6\u0BB5\u0BCD\u0BB5\u0BBE\u0BAF\u0BCD\u0B95\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0BAA\u0BC1\u0BA4\u0BA9\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0BB5\u0BBF\u0BAF\u0BBE\u0BB4\u0B95\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0BB5\u0BC6\u0BB3\u0BCD\u0BB3\u0BBF\u0B95\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8","\u0B9A\u0BA9\u0BBF\u0B95\u0BCD\u0B95\u0BBF\u0BB4\u0BAE\u0BC8"],shortDays:["\u0B9E\u0BBE\u0BAF\u0BBF\u0BB1\u0BC1","\u0BA4\u0BBF\u0B99\u0BCD\u0B95\u0BB3\u0BCD","\u0B9A\u0BC6\u0BB5\u0BCD\u0BB5\u0BBE\u0BAF\u0BCD","\u0BAA\u0BC1\u0BA4\u0BA9\u0BCD","\u0BB5\u0BBF\u0BAF\u0BBE\u0BB4\u0BA9\u0BCD","\u0BB5\u0BC6\u0BB3\u0BCD\u0BB3\u0BBF","\u0B9A\u0BA9\u0BBF"],months:["\u0BA4\u0BC8","\u0BAE\u0BBE\u0B9A\u0BBF","\u0BAA\u0B99\u0BCD\u0B95\u0BC1\u0BA9\u0BBF","\u0B9A\u0BBF\u0BA4\u0BCD\u0BA4\u0BBF\u0BB0\u0BC8","\u0BB5\u0BC8\u0B95\u0BBE\u0B9A\u0BBF","\u0B86\u0BA9\u0BBF","\u0B86\u0B9F\u0BBF","\u0B86\u0BB5\u0BA3\u0BBF","\u0BAA\u0BC1\u0BB0\u0B9F\u0BCD\u0B9F\u0BBE\u0B9A\u0BBF","\u0B90\u0BAA\u0BCD\u0BAA\u0B9A\u0BBF","\u0B95\u0BBE\u0BB0\u0BCD\u0BA4\u0BCD\u0BA4\u0BBF\u0B95\u0BC8","\u0BAE\u0BBE\u0BB0\u0BCD\u0B95\u0BB4\u0BBF"],shortMonths:["\u0BA4\u0BC8","\u0BAE\u0BBE\u0B9A\u0BBF","\u0BAA\u0B99\u0BCD","\u0B9A\u0BBF\u0BA4\u0BCD","\u0BB5\u0BC8\u0B95\u0BBE","\u0B86\u0BA9\u0BBF","\u0B86\u0B9F\u0BBF","\u0B86\u0BB5","\u0BAA\u0BC1\u0BB0","\u0B90\u0BAA\u0BCD","\u0B95\u0BBE\u0BB0\u0BCD","\u0BAE\u0BBE\u0BB0\u0BCD"],date:"%d/%m/%Y"}}});var JLe=J(($Yt,ZLe)=>{"use strict";ZLe.exports={moduleType:"locale",name:"th",dictionary:{},format:{days:["\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C","\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C","\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23","\u0E1E\u0E38\u0E18","\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35","\u0E28\u0E38\u0E01\u0E23\u0E4C","\u0E40\u0E2A\u0E32\u0E23\u0E4C"],shortDays:["\u0E2D\u0E32.","\u0E08.","\u0E2D.","\u0E1E.","\u0E1E\u0E24.","\u0E28.","\u0E2A."],months:["\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21","\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C","\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21","\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19","\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21","\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19","\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21","\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21","\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19","\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21","\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19","\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21"],shortMonths:["\u0E21.\u0E04.","\u0E01.\u0E1E.","\u0E21\u0E35.\u0E04.","\u0E40\u0E21.\u0E22.","\u0E1E.\u0E04.","\u0E21\u0E34.\u0E22.","\u0E01.\u0E04.","\u0E2A.\u0E04.","\u0E01.\u0E22.","\u0E15.\u0E04.","\u0E1E.\u0E22.","\u0E18.\u0E04."],date:"%d/%m/%Y"}}});var KLe=J((KYt,$Le)=>{"use strict";$Le.exports={moduleType:"locale",name:"tr",dictionary:{},format:{days:["Pazar","Pazartesi","Sal\u0131","\xC7ar\u015Famba","Per\u015Fembe","Cuma","Cumartesi"],shortDays:["Pz","Pt","Sa","\xC7a","Pe","Cu","Ct"],months:["Ocak","\u015Eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011Fustos","Eyl\xFCl","Ekim","Kas\u0131m","Aral\u0131k"],shortMonths:["Oca","\u015Eub","Mar","Nis","May","Haz","Tem","A\u011Fu","Eyl","Eki","Kas","Ara"],date:"%d.%m.%Y"}}});var eDe=J((QYt,QLe)=>{"use strict";QLe.exports={moduleType:"locale",name:"tt",dictionary:{},format:{days:["\u044F\u043A\u0448\u04D9\u043C\u0431\u0435","\u0434\u04AF\u0448\u04D9\u043C\u0431\u0435","\u0441\u0438\u0448\u04D9\u043C\u0431\u0435","\u0447\u04D9\u0440\u0448\u04D9\u043C\u0431\u0435","\u043F\u04D9\u043D\u0497\u0435\u0448\u04D9\u043C\u0431\u0435","\u0497\u043E\u043C\u0433\u0430","\u0448\u0438\u043C\u0431\u04D9"],shortDays:["\u044F\u043A\u0448","\u0434\u04AF\u0448","\u0441\u0438\u0448","\u0447\u04D9\u0440","\u043F\u04D9\u043D","\u0497\u043E\u043C","\u0448\u0438\u043C"],months:["\u0413\u044B\u043D\u0432\u0430\u0440","\u0424\u0435\u0432\u0440\u0430\u043B\u044C","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0435\u043B\u044C","\u041C\u0430\u0439","\u0418\u044E\u043D\u044C","\u0418\u044E\u043B\u044C","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044C","\u041E\u043A\u0442\u044F\u0431\u0440\u044C","\u041D\u043E\u044F\u0431\u0440\u044C","\u0414\u0435\u043A\u0430\u0431\u0440\u044C"],shortMonths:["\u0413\u044B\u0439\u043D","\u0424\u0435\u0432","\u041C\u0430\u0440","\u0410\u043F\u0440","\u041C\u0430\u0439","\u0418\u044E\u043D","\u0418\u044E\u043B","\u0410\u0432\u0433","\u0421\u0435\u043D","\u041E\u043A\u0442","\u041D\u043E\u044F","\u0414\u0435\u043A"],date:"%d.%m.%Y"}}});var rDe=J((eGt,tDe)=>{"use strict";tDe.exports={moduleType:"locale",name:"uk",dictionary:{Autoscale:"\u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u043D\u0435 \u0448\u043A\u0430\u043B\u044E\u0432\u0430\u043D\u043D\u044F","Box Select":"\u0412\u0438\u0434\u0456\u043B\u0435\u043D\u043D\u044F \u043F\u0440\u044F\u043C\u043E\u043A\u0443\u0442\u043D\u043E\u0457 \u043E\u0431\u043B\u0430\u0441\u0442\u0456","Click to enter Colorscale title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u0448\u043A\u0430\u043B\u0438 \u043A\u043E\u043B\u044C\u043E\u0440\u0443","Click to enter Component A title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443 A","Click to enter Component B title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443 B","Click to enter Component C title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443 C","Click to enter Plot title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u0433\u0440\u0430\u0444\u0456\u043A\u0430","Click to enter X axis title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043E\u0441\u0456 X","Click to enter Y axis title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043E\u0441\u0456 Y","Click to enter radial axis title":"\u041D\u0430\u0442\u0438\u0441\u043D\u0456\u0442\u044C \u0434\u043B\u044F \u0432\u0432\u0435\u0434\u0435\u043D\u043D\u044F \u043D\u0430\u0437\u0432\u0438 \u043F\u043E\u043B\u044F\u0440\u043D\u043E\u0457 \u043E\u0441\u0456","Compare data on hover":"\u041F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u043D\u0456 \u043F\u043E\u043A\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u0432\u0441\u0456 \u0434\u0430\u043D\u0456","Double-click on legend to isolate one trace":"\u0414\u0432\u0456\u0447\u0456 \u043A\u043B\u0430\u0446\u043D\u0456\u0442\u044C \u043F\u043E \u043B\u0435\u0433\u0435\u043D\u0434\u0456 \u0434\u043B\u044F \u0432\u0438\u0434\u0456\u043B\u0435\u043D\u043D\u044F \u043E\u043A\u0440\u0435\u043C\u0438\u0445 \u0434\u0430\u043D\u0438\u0445","Double-click to zoom back out":"\u0414\u043B\u044F \u0432\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043D\u044F \u043C\u0430\u0441\u0448\u0442\u0430\u0431\u0443 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C \u0434\u0432\u0456\u0447\u0456 \u043A\u043B\u0430\u0446\u043D\u0456\u0442\u044C \u043C\u0438\u0448\u0435\u044E","Download plot":"\u0417\u0431\u0435\u0440\u0435\u0433\u0442\u0438 \u0433\u0440\u0430\u0444\u0456\u043A","Download plot as a png":"\u0417\u0431\u0435\u0440\u0435\u0433\u0442\u0438 \u0443 \u0444\u043E\u0440\u043C\u0430\u0442\u0456 PNG","Edit in Chart Studio":"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0443 Chart Studio","IE only supports svg. Changing format to svg.":"IE \u043F\u0456\u0434\u0442\u0440\u0438\u043C\u0443\u0454 \u043B\u0438\u0448\u0435 svg. \u0424\u043E\u0440\u043C\u0430\u0442 \u0437\u043C\u0456\u043D\u044E\u0454\u0442\u044C\u0441\u044F \u043D\u0430 svg.","Lasso Select":"\u041B\u0430\u0441\u043E","Orbital rotation":"\u0420\u0443\u0445 \u043F\u043E \u043E\u0440\u0431\u0456\u0442\u0456",Pan:"\u0417\u0441\u0443\u0432","Produced with Plotly.js":"\u0421\u0442\u0432\u043E\u0440\u0435\u043D\u043E \u0437\u0430 \u0434\u043E\u043F\u043E\u043C\u043E\u0433\u043E\u044E Plotly.js",Reset:"\u0412\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0438 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C","Reset axes":"\u0412\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0438 \u043E\u0441\u044F\u043C \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C","Reset camera to default":"\u0412\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0438 \u043A\u0430\u043C\u0435\u0440\u0456 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C","Reset camera to last save":"\u041F\u043E\u0432\u0435\u0440\u043D\u0443\u0442\u0438 \u043A\u0430\u043C\u0435\u0440\u0443 \u0432 \u043E\u0441\u0442\u0430\u043D\u043D\u0456\u0439 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043D\u0438\u0439 \u0441\u0442\u0430\u043D","Reset view":"\u0412\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0438 \u0432\u0456\u0434\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u043D\u044E \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C","Reset views":"\u0412\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0438 \u0432\u0456\u0434\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u043D\u044F\u043C \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0437\u0430 \u0437\u0430\u043C\u043E\u0432\u0447\u0443\u0432\u0430\u043D\u043D\u044F\u043C","Show closest data on hover":"\u041F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u043D\u0456 \u043F\u043E\u043A\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043D\u0430\u0439\u0431\u043B\u0438\u0436\u0447\u0456 \u0434\u0430\u043D\u0456","Snapshot succeeded":"\u0417\u043D\u0456\u043C\u043E\u043A \u0443\u0441\u043F\u0456\u0448\u043D\u043E \u0441\u0442\u0432\u043E\u0440\u0435\u043D\u0438\u0439","Sorry, there was a problem downloading your snapshot!":"\u041D\u0430 \u0436\u0430\u043B\u044C, \u0432\u0438\u043D\u0438\u043A\u043B\u0430 \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u0430 \u043F\u0440\u0438 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043D\u043D\u0456 \u0437\u043D\u0456\u043C\u043A\u0443","Taking snapshot - this may take a few seconds":"\u0421\u0442\u0432\u043E\u0440\u044E\u0454\u0442\u044C\u0441\u044F \u0437\u043D\u0456\u043C\u043E\u043A - \u0446\u0435 \u043C\u043E\u0436\u0435 \u0437\u0430\u0439\u043D\u044F\u0442\u0438 \u043A\u0456\u043B\u044C\u043A\u0430 \u0441\u0435\u043A\u0443\u043D\u0434","Toggle Spike Lines":"\u0423\u0432\u0456\u043C\u043A\u043D\u0443\u0442\u0438/\u0432\u0438\u043C\u043A\u043D\u0443\u0442\u0438 \u0432\u0456\u0434\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u043D\u044F \u043B\u0456\u043D\u0456\u0439 \u043F\u0440\u043E\u0435\u043A\u0446\u0456\u0439 \u0442\u043E\u0447\u043E\u043A","Toggle show closest data on hover":"\u0423\u0432\u0456\u043C\u043A\u043D\u0443\u0442\u0438/\u0432\u0438\u043C\u043A\u043D\u0443\u0442\u0438 \u0432\u0456\u0434\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u043D\u044F \u043D\u0430\u0439\u0431\u043B\u0438\u0436\u0447\u0438\u0445 \u0434\u0430\u043D\u0438\u0445 \u043F\u0440\u0438 \u043D\u0430\u0432\u0435\u0434\u0435\u043D\u043D\u0456","Turntable rotation":"\u041E\u0431\u0435\u0440\u0442\u0430\u043D\u043D\u044F \u043D\u0430 \u043F\u043E\u0432\u043E\u0440\u043E\u0442\u043D\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0456",Zoom:"\u0417\u0443\u043C","Zoom in":"\u0417\u0431\u0456\u043B\u044C\u0448\u0438\u0442\u0438","Zoom out":"\u0417\u043C\u0435\u043D\u0448\u0438\u0442\u0438","close:":"\u0417\u0430\u043A\u0440\u0438\u0442\u0442\u044F:","concentration:":"\u041A\u043E\u043D\u0446\u0435\u043D\u0442\u0440\u0430\u0446\u0456\u044F:","high:":"\u041C\u0430\u043A\u0441\u0438\u043C\u0443\u043C:","incoming flow count:":"\u041A\u0456\u043B\u044C\u043A\u0456\u0441\u0442\u044C \u0432\u0445\u0456\u0434\u043D\u0438\u0445 \u0437\u0432'\u044F\u0437\u043A\u0456\u0432:","kde:":"\u042F\u0434\u0440\u043E\u0432\u0430 \u043E\u0446\u0456\u043D\u043A\u0430 \u0433\u0443\u0441\u0442\u0438\u043D\u0438 \u0440\u043E\u0437\u043F\u043E\u0434\u0456\u043B\u0443:","lat:":"\u0428\u0438\u0440\u043E\u0442\u0430:","lon:":"\u0414\u043E\u0432\u0433\u043E\u0442\u0430:","low:":"\u041C\u0456\u043D\u0456\u043C\u0443\u043C:","lower fence:":"\u041D\u0438\u0436\u043D\u044F \u0433\u0440\u0430\u043D\u0438\u0446\u044F:","max:":"\u041C\u0430\u043A\u0441.:","mean \xB1 \u03C3:":"\u0421\u0435\u0440\u0435\u0434\u043D\u0454 \xB1 \u03C3:","mean:":"\u0421\u0435\u0440\u0435\u0434\u043D\u0454:","median:":"\u041C\u0435\u0434\u0456\u0430\u043D\u0430:","min:":"\u041C\u0456\u043D.:","new text":"\u041D\u043E\u0432\u0438\u0439 \u0442\u0435\u043A\u0441\u0442","open:":"\u0412\u0456\u0434\u043A\u0440\u0438\u0442\u0442\u044F:","outgoing flow count:":"\u041A\u0456\u043B\u044C\u043A\u0456\u0441\u0442\u044C \u0432\u0438\u0445\u0456\u0434\u043D\u0438\u0445 \u0437\u0432'\u044F\u0437\u043A\u0456\u0432:","q1:":"q1:","q3:":"q3:","source:":"\u0414\u0436\u0435\u0440\u0435\u043B\u043E:","target:":"\u0426\u0456\u043B\u044C:",trace:"\u0420\u044F\u0434","upper fence:":"\u0412\u0435\u0440\u0445\u043D\u044F \u0433\u0440\u0430\u043D\u0438\u0446\u044F:"},format:{days:["\u043D\u0435\u0434\u0456\u043B\u044F","\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A","\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A","\u0441\u0435\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440","\u043F'\u044F\u0442\u043D\u0438\u0446\u044F","\u0441\u0443\u0431\u043E\u0442\u0430"],shortDays:["\u043D\u0434","\u043F\u043D","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043F\u0442","\u0441\u0431"],months:["\u0421\u0456\u0447\u0435\u043D\u044C","\u041B\u044E\u0442\u0438\u0439","\u0411\u0435\u0440\u0435\u0437\u0435\u043D\u044C","\u041A\u0432\u0456\u0442\u0435\u043D\u044C","\u0422\u0440\u0430\u0432\u0435\u043D\u044C","\u0427\u0435\u0440\u0432\u0435\u043D\u044C","\u041B\u0438\u043F\u0435\u043D\u044C","\u0421\u0435\u0440\u043F\u0435\u043D\u044C","\u0412\u0435\u0440\u0435\u0441\u0435\u043D\u044C","\u0416\u043E\u0432\u0442\u0435\u043D\u044C","\u041B\u0438\u0441\u0442\u043E\u043F\u0430\u0434","\u0413\u0440\u0443\u0434\u0435\u043D\u044C"],shortMonths:["\u0421\u0456\u0447.","\u041B\u044E\u0442.","\u0411\u0435\u0440\u0435\u0437.","\u041A\u0432\u0456\u0442.","\u0422\u0440\u0430\u0432.","\u0427\u0435\u0440\u0432.","\u041B\u0438\u043F.","\u0421\u0435\u0440\u043F.","\u0412\u0435\u0440\u0435\u0441.","\u0416\u043E\u0432\u0442.","\u041B\u0438\u0441\u0442\u043E\u043F.","\u0413\u0440\u0443\u0434."],date:"%d.%m.%Y",decimal:",",thousands:" "}}});var iDe=J((tGt,nDe)=>{"use strict";nDe.exports={moduleType:"locale",name:"ur",dictionary:{},format:{days:["\u0627\u062A\u0648\u0627\u0631","\u067E\u064A\u0631","\u0645\u0646\u06AF\u0644","\u0628\u062F\u06BE","\u062C\u0645\u0639\u0631\u0627\u062A","\u062C\u0645\u0639\u06C1","\u06C1\u0641\u062A\u06C1"],shortDays:["\u0627\u062A\u0648\u0627\u0631","\u067E\u064A\u0631","\u0645\u0646\u06AF\u0644","\u0628\u062F\u06BE","\u062C\u0645\u0639\u0631\u0627\u062A","\u062C\u0645\u0639\u06C1","\u06C1\u0641\u062A\u06C1"],months:["\u062C\u0646\u0648\u0631\u06CC","\u0641\u0631\u0648\u0631\u06CC","\u0645\u0627\u0631\u0686","\u0627\u067E\u0631\u06CC\u0644","\u0645\u0626\u06CC","\u062C\u0648\u0646","\u062C\u0648\u0644\u0627\u0626\u06CC","\u0627\u06AF\u0633\u062A","\u0633\u062A\u0645\u0628\u0631","\u0627\u06A9\u062A\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062F\u0633\u0645\u0628\u0631"],shortMonths:["1","2","3","4","5","6","7","8","9","10","11","12"],date:"%d/%m/%Y"}}});var oDe=J((rGt,aDe)=>{"use strict";aDe.exports={moduleType:"locale",name:"vi",dictionary:{},format:{days:["Ch\u1EE7 Nh\u1EADt","Th\u1EE9 Hai","Th\u1EE9 Ba","Th\u1EE9 T\u01B0","Th\u1EE9 N\u0103m","Th\u1EE9 S\xE1u","Th\u1EE9 B\u1EA3y"],shortDays:["CN","T2","T3","T4","T5","T6","T7"],months:["Th\xE1ng M\u1ED9t","Th\xE1ng Hai","Th\xE1ng Ba","Th\xE1ng T\u01B0","Th\xE1ng N\u0103m","Th\xE1ng S\xE1u","Th\xE1ng B\u1EA3y","Th\xE1ng T\xE1m","Th\xE1ng Ch\xEDn","Th\xE1ng M\u01B0\u1EDDi","Th\xE1ng M\u01B0\u1EDDi M\u1ED9t","Th\xE1ng M\u01B0\u1EDDi Hai"],shortMonths:["Th\xE1ng 1","Th\xE1ng 2","Th\xE1ng 3","Th\xE1ng 4","Th\xE1ng 5","Th\xE1ng 6","Th\xE1ng 7","Th\xE1ng 8","Th\xE1ng 9","Th\xE1ng 10","Th\xE1ng 11","Th\xE1ng 12"],date:"%d/%m/%Y"}}});var lDe=J((nGt,sDe)=>{"use strict";sDe.exports={moduleType:"locale",name:"zh-CN",dictionary:{Autoscale:"\u81EA\u52A8\u7F29\u653E","Box Select":"\u77E9\u5F62\u6846\u9009","Click to enter Colorscale title":"\u70B9\u51FB\u8F93\u5165\u8272\u9636\u7684\u6807\u9898","Click to enter Component A title":"\u70B9\u51FB\u8F93\u5165\u7EC4\u4EF6A\u7684\u6807\u9898","Click to enter Component B title":"\u70B9\u51FB\u8F93\u5165\u7EC4\u4EF6B\u7684\u6807\u9898","Click to enter Component C title":"\u70B9\u51FB\u8F93\u5165\u7EC4\u4EF6C\u7684\u6807\u9898","Click to enter Plot title":"\u70B9\u51FB\u8F93\u5165\u56FE\u8868\u7684\u6807\u9898","Click to enter X axis title":"\u70B9\u51FB\u8F93\u5165X\u8F74\u7684\u6807\u9898","Click to enter Y axis title":"\u70B9\u51FB\u8F93\u5165Y\u8F74\u7684\u6807\u9898","Compare data on hover":"\u60AC\u505C\u65F6\u6BD4\u8F83\u6570\u636E","Double-click on legend to isolate one trace":"\u53CC\u51FB\u56FE\u4F8B\u6765\u7A81\u663E\u5BF9\u5E94\u8F68\u8FF9","Double-click to zoom back out":"\u53CC\u51FB\u8FD4\u56DE\u7F29\u5C0F\u663E\u793A","Download plot as a png":"\u4E0B\u8F7D\u56FE\u8868\u4E3APNG\u683C\u5F0F","Download plot":"\u4E0B\u8F7D\u56FE\u8868","Edit in Chart Studio":"\u5728Chart Studio\u4E2D\u7F16\u8F91","IE only supports svg. Changing format to svg.":"IE\u53EA\u652F\u6301SVG\u3002\u8F6C\u6362\u683C\u5F0F\u4E3ASVG\u3002","Lasso Select":"\u5957\u7D22\u9009\u62E9","Orbital rotation":"\u8F68\u9053\u65CB\u8F6C",Pan:"\u5E73\u79FB","Produced with Plotly.js":"\u7531Plotly.js\u751F\u6210",Reset:"\u91CD\u7F6E","Reset axes":"\u91CD\u7F6E\u8F74","Reset camera to default":"\u91CD\u7F6E\u955C\u5934\u89C6\u89D2\u4E3A\u9ED8\u8BA4\u72B6\u6001","Reset camera to last save":"\u91CD\u7F6E\u955C\u5934\u89C6\u89D2\u4E3A\u4E0A\u6B21\u4FDD\u5B58\u72B6\u6001","Reset view":"\u91CD\u7F6E\u89C6\u56FE","Reset views":"\u91CD\u7F6E\u89C6\u56FE","Show closest data on hover":"\u60AC\u505C\u65F6\u663E\u793A\u6700\u8FD1\u7684\u6570\u636E","Snapshot succeeded":"\u751F\u6210\u5FEB\u7167\u6210\u529F","Sorry, there was a problem downloading your snapshot!":"\u62B1\u6B49\uFF0C\u4E0B\u8F7D\u5FEB\u7167\u51FA\u73B0\u95EE\u9898\uFF01","Taking snapshot - this may take a few seconds":"\u6B63\u5728\u751F\u6210\u5FEB\u7167 - \u53EF\u80FD\u9700\u8981\u51E0\u79D2\u949F",Zoom:"\u7F29\u653E","Zoom in":"\u653E\u5927","Zoom out":"\u7F29\u5C0F","close:":"\u5173\u95ED:",trace:"\u8E2A\u8FF9:","lat:":"\u7EAC\u5EA6:","lon:":"\u7ECF\u5EA6:","q1:":"\u7B2C\u4E00\u56DB\u5206\u4F4D\u6570:","q3:":"\u7B2C\u4E09\u56DB\u5206\u4F4D\u6570:","source:":"\u6E90:","target:":"\u76EE\u6807:","lower fence:":"\u5185\u4FA7\u680F(lower fence):","upper fence:":"\u5916\u4FA7\u680F(upper fence):","max:":"\u6700\u5927\u503C:","mean \xB1 \u03C3:":"\u5E73\u5747\u6570 \xB1 \u6807\u51C6\u5DEE\u03C3:","mean:":"\u5E73\u5747\u6570:","median:":"\u4E2D\u4F4D\u6570:","min:":"\u6700\u5C0F\u503C:","Turntable rotation":"\u65CB\u8F6C\u8F6C\u76D8:","Toggle Spike Lines":"\u5207\u6362\u663E\u793A\u6570\u636E\u70B9\u8F85\u52A9\u7EBF(Spike Lines)","open:":"\u6253\u5F00:","high:":"\u9AD8:","low:":"\u4F4E:","Toggle show closest data on hover":"\u5207\u6362\u60AC\u505C\u65F6\u663E\u793A\u6700\u8FD1\u7684\u6570\u636E\u70B9","incoming flow count:":"\u6D41\u5165\u6570\u91CF:","outgoing flow count:":"\u6D41\u51FA\u6570\u91CF:","kde:":"kde:","Click to enter radial axis title":"\u70B9\u51FB\u8F93\u5165\u5F84\u5411\u8F74\u6807\u9898","new text":"\u65B0\u5EFA\u6587\u672C"},format:{days:["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],shortDays:["\u5468\u65E5","\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D"],months:["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"],shortMonths:["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"],date:"%Y-%m-%d"}}});var fDe=J((iGt,uDe)=>{"use strict";uDe.exports={moduleType:"locale",name:"zh-HK",dictionary:{},format:{days:["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],shortDays:["\u5468\u65E5","\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D"],months:["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"],shortMonths:["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"],date:"%d-%m-%Y"}}});var hDe=J((aGt,cDe)=>{"use strict";cDe.exports={moduleType:"locale",name:"zh-TW",dictionary:{Autoscale:"\u81EA\u52D5\u7E2E\u653E","Box Select":"\u77E9\u5F62\u9078\u64C7","Click to enter Colorscale title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u8272\u968E\u6A19\u984C","Click to enter Component A title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u5143\u4EF6 A \u6A19\u984C","Click to enter Component B title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u5143\u4EF6 B \u6A19\u984C","Click to enter Component C title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u5143\u4EF6 C \u6A19\u984C","Click to enter Plot title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u7E6A\u5716\u6A19\u984C","Click to enter X axis title":"\u9EDE\u64CA\u4EE5\u8F38\u5165 X \u8EF8\u6A19\u984C","Click to enter Y axis title":"\u9EDE\u64CA\u4EE5\u8F38\u5165 Y \u8EF8\u6A19\u984C","Click to enter radial axis title":"\u9EDE\u64CA\u4EE5\u8F38\u5165\u8F3B\u5C04\u8EF8\u6A19\u984C","Compare data on hover":"\u6E38\u6A19\u505C\u7559\u6642\u6BD4\u8F03\u8CC7\u6599","Double-click on legend to isolate one trace":"\u96D9\u64CA\u5716\u4F8B\u4EE5\u9694\u96E2\u55AE\u4E00\u8ECC\u8DE1","Double-click to zoom back out":"\u96D9\u64CA\u56DE\u5FA9\u7E2E\u653E","Download plot as a png":"\u4E0B\u8F09\u5716\u8868\u70BA PNG \u5716\u6A94","Download plot":"\u4E0B\u8F09\u5716\u8868","Draw circle":"\u7E6A\u88FD\u5713\u5708","Draw closed freeform":"\u7E6A\u88FD\u5C01\u9589\u7684\u4EFB\u610F\u5716\u5F62","Draw line":"\u7E6A\u88FD\u7DDA\u689D","Draw open freeform":"\u7E6A\u88FD\u958B\u653E\u7684\u4EFB\u610F\u5716\u5F62","Draw rectangle":"\u7E6A\u88FD\u77E9\u5F62","Edit in Chart Studio":"\u65BC Chart Studio \u7DE8\u8F2F","Erase active shape":"\u6E05\u9664\u4F5C\u7528\u4E2D\u7684\u5F62\u72C0","IE only supports svg. Changing format to svg.":"IE \u50C5\u652F\u63F4 SVG\uFF0C\u5C07\u8B8A\u66F4\u683C\u5F0F\u70BA SVG\u3002","Lasso Select":"\u5957\u7D22\u9078\u64C7","Orbital rotation":"\u8ECC\u9053\u65CB\u8F49",Pan:"\u5E73\u79FB","Produced with Plotly.js":"\u4F7F\u7528 Plotly.js \u88FD\u4F5C",Reset:"\u91CD\u7F6E","Reset axes":"\u91CD\u7F6E\u8EF8","Reset camera to default":"\u91CD\u7F6E\u76F8\u6A5F\u81F3\u9810\u8A2D\u4F4D\u7F6E","Reset camera to last save":"\u91CD\u7F6E\u76F8\u6A5F\u81F3\u4E0A\u6B21\u5132\u5B58\u7684\u4F4D\u7F6E","Reset view":"\u91CD\u7F6E\u8996\u5716","Reset views":"\u91CD\u7F6E\u8996\u5716","Show closest data on hover":"\u6E38\u6A19\u505C\u7559\u6642\u986F\u793A\u6700\u63A5\u8FD1\u7684\u8CC7\u6599","Snapshot succeeded":"\u5FEB\u7167\u6210\u529F","Sorry, there was a problem downloading your snapshot!":"\u62B1\u6B49\uFF0C\u4E0B\u8F09\u5FEB\u7167\u6642\u767C\u751F\u932F\u8AA4!","Taking snapshot - this may take a few seconds":"\u7522\u751F\u5FEB\u7167\u4E2D - \u53EF\u80FD\u9700\u8981\u4E00\u9EDE\u6642\u9593",Zoom:"\u7E2E\u653E","Zoom in":"\u653E\u5927","Zoom out":"\u7E2E\u5C0F","close:":"\u95DC\u9589:",concentration:"\u96C6\u4E2D",trace:"\u8ECC\u8DE1:","lat:":"\u7DEF\u5EA6:","lon:":"\u7D93\u5EA6:","q1:":"\u7B2C\u4E00\u56DB\u5206\u4F4D\u6578:","q3:":"\u7B2C\u4E09\u56DB\u5206\u4F4D\u6578:","source:":"\u4F86\u6E90:","target:":"\u76EE\u6A19:","lower fence:":"\u4E0B\u570D\u7C6C\u503C:","upper fence:":"\u4E0A\u570D\u7C6C\u503C:","max:":"\u6700\u5927\u503C:","mean \xB1 \u03C3:":"\u5E73\u5747 \xB1 \u03C3:","mean:":"\u5E73\u5747\u503C:","median:":"\u4E2D\u4F4D\u6578:","min:":"\u6700\u5C0F\u503C:","Turntable rotation":"\u8F49\u76E4\u65CB\u8F49:","Toggle Spike Lines":"\u5207\u63DB\u5C16\u5CF0\u7DDA","open:":"\u958B\u555F:","high:":"\u9AD8:","low:":"\u4F4E:","Toggle show closest data on hover":"\u5207\u63DB\u6ED1\u9F20\u61F8\u505C\u986F\u793A\u6700\u63A5\u8FD1\u7684\u8CC7\u6599","incoming flow count:":"\u50B3\u5165\u6D41\u91CF\u8A08\u6578:","outgoing flow count:":"\u50B3\u51FA\u6D41\u91CF\u8A08\u6578:","kde:":"kde:","new text":"\u65B0\u6587\u672C"},format:{days:["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],shortDays:["\u9031\u65E5","\u9031\u4E00","\u9031\u4E8C","\u9031\u4E09","\u9031\u56DB","\u9031\u4E94","\u9031\u516D"],months:["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"],shortMonths:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],date:"%Y-%m-%d"}}});var MDe=J((nXt,ADe)=>{var jC,nN;jC=[];nN=[];function l4t(e,t,r){var n,i,a,o,s,l,u,f;if(e===t)return 0;if(n=e.length,i=t.length,n===0)return i;if(i===0)return n;for(r&&(e=e.toLowerCase(),t=t.toLowerCase()),u=0;uo?l>o?o+1:l:l>s?s+1:l;return o}ADe.exports=l4t});var iN=J((iXt,SDe)=>{var kDe=MDe();function u4t(){var e,t,r,n,i,a=0,o=arguments[0],s=arguments[1],l=s.length,u=arguments[2];u&&(n=u.threshold,i=u.ignoreCase),n===void 0&&(n=0);for(var f=0;fo.length?e=1-t/s[f].length:e=1-t/o.length,e>a&&(a=e,r=s[f]);return a>=n?r:null}SDe.exports=u4t});var VC=J((ob,m3)=>{(function(){var e,t="4.17.21",r=200,n="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",i="Expected a function",a="Invalid `variable` option passed into `_.template`",o="__lodash_hash_undefined__",s=500,l="__lodash_placeholder__",u=1,f=2,c=4,h=1,d=2,v=1,m=2,b=4,g=8,_=16,T=32,w=64,k=128,x=256,M=512,A=30,p="...",S=800,y=16,E=1,C=2,L=3,R=1/0,I=9007199254740991,P=17976931348623157e292,D=0/0,q=4294967295,N=q-1,U=q>>>1,G=[["ary",k],["bind",v],["bindKey",m],["curry",g],["curryRight",_],["flip",M],["partial",T],["partialRight",w],["rearg",x]],ee="[object Arguments]",Q="[object Array]",j="[object AsyncFunction]",O="[object Boolean]",Z="[object Date]",K="[object DOMException]",$="[object Error]",oe="[object Function]",te="[object GeneratorFunction]",V="[object Map]",ne="[object Number]",W="[object Null]",fe="[object Object]",ge="[object Promise]",Ce="[object Proxy]",Ne="[object RegExp]",pe="[object Set]",me="[object String]",Ie="[object Symbol]",Re="[object Undefined]",ze="[object WeakMap]",Be="[object WeakSet]",tt="[object ArrayBuffer]",rt="[object DataView]",ce="[object Float32Array]",Ee="[object Float64Array]",Ae="[object Int8Array]",Pe="[object Int16Array]",He="[object Int32Array]",Fe="[object Uint8Array]",ke="[object Uint8ClampedArray]",Ue="[object Uint16Array]",Ge="[object Uint32Array]",lt=/\b__p \+= '';/g,it=/\b(__p \+=) '' \+/g,wt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,_t=/&(?:amp|lt|gt|quot|#39);/g,Tt=/[&<>"']/g,nt=RegExp(_t.source),bt=RegExp(Tt.source),At=/<%-([\s\S]+?)%>/g,Ye=/<%([\s\S]+?)%>/g,je=/<%=([\s\S]+?)%>/g,$e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ve=/^\w*$/,Y=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,Te=RegExp(ie.source),Ve=/^\s+/,at=/\s/,ft=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ht=/\{\n\/\* \[wrapped with (.+)\] \*/,Xt=/,? & /,St=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Vt=/[()=,{}\[\]\/\s]/,er=/\\(\\)?/g,_r=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,br=/\w*$/,or=/^[-+]0x[0-9a-f]+$/i,tn=/^0b[01]+$/i,Lr=/^\[object .+?Constructor\]$/,Gr=/^0o[0-7]+$/i,sn=/^(?:0|[1-9]\d*)$/,Hr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Br=/($^)/,qn=/['\n\r\u2028\u2029\\]/g,kn="\\ud800-\\udfff",Yn="\\u0300-\\u036f",Wn="\\ufe20-\\ufe2f",Fn="\\u20d0-\\u20ff",wn=Yn+Wn+Fn,Si="\\u2700-\\u27bf",Aa="a-z\\xdf-\\xf6\\xf8-\\xff",ia="\\xac\\xb1\\xd7\\xf7",An="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ji="\\u2000-\\u206f",ii=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",bo="A-Z\\xc0-\\xd6\\xd8-\\xde",ga="\\ufe0e\\ufe0f",Ia=ia+An+Ji+ii,si="['\u2019]",aa="["+kn+"]",wo="["+Ia+"]",ma="["+wn+"]",oa="\\d+",yu="["+Si+"]",Xl="["+Aa+"]",xu="[^"+kn+Ia+oa+Si+Aa+bo+"]",De="\\ud83c[\\udffb-\\udfff]",ct="(?:"+ma+"|"+De+")",ht="[^"+kn+"]",Mt="(?:\\ud83c[\\udde6-\\uddff]){2}",Gt="[\\ud800-\\udbff][\\udc00-\\udfff]",Lt="["+bo+"]",ir="\\u200d",zt="(?:"+Xl+"|"+xu+")",ar="(?:"+Lt+"|"+xu+")",kr="(?:"+si+"(?:d|ll|m|re|s|t|ve))?",Er="(?:"+si+"(?:D|LL|M|RE|S|T|VE))?",Xr=ct+"?",vn="["+ga+"]?",ei="(?:"+ir+"(?:"+[ht,Mt,Gt].join("|")+")"+vn+Xr+")*",Rn="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",hi="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Xn=vn+Xr+ei,$i="(?:"+[yu,Mt,Gt].join("|")+")"+Xn,Ki="(?:"+[ht+ma+"?",ma,Mt,Gt,aa].join("|")+")",sa=RegExp(si,"g"),Ma=RegExp(ma,"g"),qa=RegExp(De+"(?="+De+")|"+Ki+Xn,"g"),Fa=RegExp([Lt+"?"+Xl+"+"+kr+"(?="+[wo,Lt,"$"].join("|")+")",ar+"+"+Er+"(?="+[wo,Lt+zt,"$"].join("|")+")",Lt+"?"+zt+"+"+kr,Lt+"+"+Er,hi,Rn,oa,$i].join("|"),"g"),$o=RegExp("["+ir+kn+wn+ga+"]"),_o=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ka=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],za=-1,zn={};zn[ce]=zn[Ee]=zn[Ae]=zn[Pe]=zn[He]=zn[Fe]=zn[ke]=zn[Ue]=zn[Ge]=!0,zn[ee]=zn[Q]=zn[tt]=zn[O]=zn[rt]=zn[Z]=zn[$]=zn[oe]=zn[V]=zn[ne]=zn[fe]=zn[Ne]=zn[pe]=zn[me]=zn[ze]=!1;var Zr={};Zr[ee]=Zr[Q]=Zr[tt]=Zr[rt]=Zr[O]=Zr[Z]=Zr[ce]=Zr[Ee]=Zr[Ae]=Zr[Pe]=Zr[He]=Zr[V]=Zr[ne]=Zr[fe]=Zr[Ne]=Zr[pe]=Zr[me]=Zr[Ie]=Zr[Fe]=Zr[ke]=Zr[Ue]=Zr[Ge]=!0,Zr[$]=Zr[oe]=Zr[ze]=!1;var vi={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Ko={"&":"&","<":"<",">":">",'"':""","'":"'"},tl={"&":"&","<":"<",">":">",""":'"',"'":"'"},Zl={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},qs=parseFloat,Qo=parseInt,rl=typeof global=="object"&&global&&global.Object===Object&&global,ef=typeof self=="object"&&self&&self.Object===Object&&self,Bi=rl||ef||Function("return this")(),tf=typeof ob=="object"&&ob&&!ob.nodeType&&ob,so=tf&&typeof m3=="object"&&m3&&!m3.nodeType&&m3,es=so&&so.exports===tf,Fs=es&&rl.process,lo=function(){try{var Wt=so&&so.require&&so.require("util").types;return Wt||Fs&&Fs.binding&&Fs.binding("util")}catch{}}(),bs=lo&&lo.isArrayBuffer,ws=lo&&lo.isDate,rf=lo&&lo.isMap,ts=lo&&lo.isRegExp,Id=lo&&lo.isSet,kl=lo&&lo.isTypedArray;function Ja(Wt,fr,tr){switch(tr.length){case 0:return Wt.call(fr);case 1:return Wt.call(fr,tr[0]);case 2:return Wt.call(fr,tr[0],tr[1]);case 3:return Wt.call(fr,tr[0],tr[1],tr[2])}return Wt.apply(fr,tr)}function wp(Wt,fr,tr,Kr){for(var Sn=-1,mi=Wt==null?0:Wt.length;++Sn-1}function af(Wt,fr,tr){for(var Kr=-1,Sn=Wt==null?0:Wt.length;++Kr-1;);return tr}function Tv(Wt,fr){for(var tr=Wt.length;tr--&&Jl(fr,Wt[tr],0)>-1;);return tr}function Fd(Wt,fr){for(var tr=Wt.length,Kr=0;tr--;)Wt[tr]===fr&&++Kr;return Kr}var zc=uf(vi),Nc=uf(Ko);function Sl(Wt){return"\\"+Zl[Wt]}function Ch(Wt,fr){return Wt==null?e:Wt[fr]}function Cl(Wt){return $o.test(Wt)}function Eh(Wt){return _o.test(Wt)}function zd(Wt){for(var fr,tr=[];!(fr=Wt.next()).done;)tr.push(fr.value);return tr}function Oc(Wt){var fr=-1,tr=Array(Wt.size);return Wt.forEach(function(Kr,Sn){tr[++fr]=[Sn,Kr]}),tr}function Nd(Wt,fr){return function(tr){return Wt(fr(tr))}}function No(Wt,fr){for(var tr=-1,Kr=Wt.length,Sn=0,mi=[];++tr-1}function gf(F,B){var ae=this.__data__,we=re(ae,F);return we<0?(++this.size,ae.push([F,B])):ae[we][1]=B,this}Ua.prototype.clear=Kl,Ua.prototype.delete=Rl,Ua.prototype.get=pf,Ua.prototype.has=ll,Ua.prototype.set=gf;function ns(F){var B=-1,ae=F==null?0:F.length;for(this.clear();++B=B?F:B)),F}function Qe(F,B,ae,we,We,vt){var Et,Ut=B&u,Jt=B&f,gr=B&c;if(ae&&(Et=We?ae(F,we,We,vt):ae(F)),Et!==e)return Et;if(!fo(F))return F;var xr=ai(F);if(xr){if(Et=ZRe(F),!Ut)return Lu(F,Et)}else{var Sr=Il(F),en=Sr==oe||Sr==te;if(Xd(F))return bf(F,Ut);if(Sr==fe||Sr==ee||en&&!We){if(Et=Jt||en?{}:rO(F),!Ut)return Jt?NRe(F,ye(Et,F)):zRe(F,de(Et,F))}else{if(!Zr[Sr])return We?F:{};Et=JRe(F,Sr,Ut)}}vt||(vt=new Hs);var bn=vt.get(F);if(bn)return bn;vt.set(F,Et),DO(F)?F.forEach(function(Hn){Et.add(Qe(Hn,B,ae,Hn,F,vt))}):EO(F)&&F.forEach(function(Hn,Ci){Et.set(Ci,Qe(Hn,B,ae,Ci,F,vt))});var Un=gr?Jt?h6:c6:Jt?Ru:Gs,pi=xr?e:Un(F);return Na(pi||F,function(Hn,Ci){pi&&(Ci=Hn,Hn=F[Ci]),is(Et,Ci,Qe(Hn,B,ae,Ci,F,vt))}),Et}function st(F){var B=Gs(F);return function(ae){return et(ae,F,B)}}function et(F,B,ae){var we=ae.length;if(F==null)return!we;for(F=yi(F);we--;){var We=ae[we],vt=B[We],Et=F[We];if(Et===e&&!(We in F)||!vt(Et))return!1}return!0}function ut(F,B,ae){if(typeof F!="function")throw new Os(i);return xb(function(){F.apply(e,ae)},B)}function yt(F,B,ae,we){var We=-1,vt=nl,Et=!0,Ut=F.length,Jt=[],gr=B.length;if(!Ut)return Jt;ae&&(B=Ui(B,zo(ae))),we?(vt=af,Et=!1):B.length>=r&&(vt=ff,Et=!1,B=new Oo(B));e:for(;++WeWe?0:We+ae),we=we===e||we>We?We:ui(we),we<0&&(we+=We),we=ae>we?0:PO(we);ae0&&ae(Ut)?B>1?Ur(Ut,B-1,ae,we,We):zs(We,Ut):we||(We[We.length]=Ut)}return We}var an=jN(),un=jN(!0);function on(F,B){return F&&an(F,B,Gs)}function Mi(F,B){return F&&un(F,B,Gs)}function Oi(F,B){return rs(B,function(ae){return Fv(F[ae])})}function Nn(F,B){B=Nh(B,F);for(var ae=0,we=B.length;F!=null&&aeB}function mf(F,B){return F!=null&&Di.call(F,B)}function Gc(F,B){return F!=null&&B in yi(F)}function as(F,B,ae){return F>=be(B,ae)&&F=120&&xr.length>=120)?new Oo(Et&&xr):e}xr=F[0];var Sr=-1,en=Ut[0];e:for(;++Sr-1;)Ut!==F&&Dl.call(Ut,Jt,1),Dl.call(F,Jt,1);return F}function Rt(F,B){for(var ae=F?B.length:0,we=ae-1;ae--;){var We=B[ae];if(ae==we||We!==vt){var vt=We;qv(We)?Dl.call(F,We,1):ko(F,We)}}return F}function ur(F,B){return F+vf(Ke()*(B-F+1))}function Dr(F,B,ae,we){for(var We=-1,vt=Ca(Gf((B-F)/(ae||1)),0),Et=tr(vt);vt--;)Et[we?vt:++We]=F,F+=ae;return Et}function Pr(F,B){var ae="";if(!F||B<1||B>I)return ae;do B%2&&(ae+=F),B=vf(B/2),B&&(F+=F);while(B);return ae}function lr(F,B){return x6(aO(F,B,Pu),F+"")}function Vr(F){return Mp(o1(F))}function Yr(F,B){var ae=o1(F);return O3(ae,Le(B,0,ae.length))}function yn(F,B,ae,we){if(!fo(F))return F;B=Nh(B,F);for(var We=-1,vt=B.length,Et=vt-1,Ut=F;Ut!=null&&++WeWe?0:We+B),ae=ae>We?We:ae,ae<0&&(ae+=We),We=B>ae?0:ae-B>>>0,B>>>=0;for(var vt=tr(We);++we>>1,Et=F[vt];Et!==null&&!wf(Et)&&(ae?Et<=B:Et=r){var gr=B?null:HRe(F);if(gr)return cf(gr);Et=!1,We=ff,Jt=new Oo}else Jt=B?[]:Ut;e:for(;++we=we?F:Pi(F,B,ae)}var eu=Ih||function(F){return Bi.clearTimeout(F)};function bf(F,B){if(B)return F.slice();var ae=F.length,we=Ud?Ud(ae):new F.constructor(ae);return F.copy(we),we}function Pl(F){var B=new F.constructor(F.byteLength);return new Mu(B).set(new Mu(F)),B}function Wd(F,B){var ae=B?Pl(F.buffer):F.buffer;return new F.constructor(ae,F.byteOffset,F.byteLength)}function Rv(F){var B=new F.constructor(F.source,br.exec(F));return B.lastIndex=F.lastIndex,B}function Oh(F){return yr?yi(yr.call(F)):{}}function Sp(F,B){var ae=B?Pl(F.buffer):F.buffer;return new F.constructor(ae,F.byteOffset,F.length)}function gb(F,B){if(F!==B){var ae=F!==e,we=F===null,We=F===F,vt=wf(F),Et=B!==e,Ut=B===null,Jt=B===B,gr=wf(B);if(!Ut&&!gr&&!vt&&F>B||vt&&Et&&Jt&&!Ut&&!gr||we&&Et&&Jt||!ae&&Jt||!We)return 1;if(!we&&!vt&&!gr&&F=Ut)return Jt;var gr=ae[we];return Jt*(gr=="desc"?-1:1)}}return F.index-B.index}function BN(F,B,ae,we){for(var We=-1,vt=F.length,Et=ae.length,Ut=-1,Jt=B.length,gr=Ca(vt-Et,0),xr=tr(Jt+gr),Sr=!we;++Ut1?ae[We-1]:e,Et=We>2?ae[2]:e;for(vt=F.length>3&&typeof vt=="function"?(We--,vt):e,Et&&tu(ae[0],ae[1],Et)&&(vt=We<3?e:vt,We=1),B=yi(B);++we-1?We[vt?B[Et]:Et]:e}}function GN(F){return Iv(function(B){var ae=B.length,we=ae,We=Gn.prototype.thru;for(F&&B.reverse();we--;){var vt=B[we];if(typeof vt!="function")throw new Os(i);if(We&&!Et&&z3(vt)=="wrapper")var Et=new Gn([],!0)}for(we=Et?we:ae;++we1&&Fi.reverse(),xr&&JtUt))return!1;var gr=vt.get(F),xr=vt.get(B);if(gr&&xr)return gr==B&&xr==F;var Sr=-1,en=!0,bn=ae&d?new Oo:e;for(vt.set(F,B),vt.set(B,F);++Sr1?"& ":"")+B[we],B=B.join(ae>2?", ":" "),F.replace(ft,`{ +/* [wrapped with `+B+`] */ +`)}function KRe(F){return ai(F)||Lp(F)||!!(hf&&F&&F[hf])}function qv(F,B){var ae=typeof F;return B=B??I,!!B&&(ae=="number"||ae!="symbol"&&sn.test(F))&&F>-1&&F%1==0&&F0){if(++B>=S)return arguments[0]}else B=0;return F.apply(e,arguments)}}function O3(F,B){var ae=-1,we=F.length,We=we-1;for(B=B===e?we:B;++ae1?F[B-1]:e;return ae=typeof ae=="function"?(F.pop(),ae):e,mO(F,ae)});function yO(F){var B=Ze(F);return B.__chain__=!0,B}function uIe(F,B){return B(F),F}function B3(F,B){return B(F)}var fIe=Iv(function(F){var B=F.length,ae=B?F[0]:0,we=this.__wrapped__,We=function(vt){return _e(vt,F)};return B>1||this.__actions__.length||!(we instanceof $r)||!qv(ae)?this.thru(We):(we=we.slice(ae,+ae+(B?1:0)),we.__actions__.push({func:B3,args:[We],thisArg:e}),new Gn(we,this.__chain__).thru(function(vt){return B&&!vt.length&&vt.push(e),vt}))});function cIe(){return yO(this)}function hIe(){return new Gn(this.value(),this.__chain__)}function vIe(){this.__values__===e&&(this.__values__=RO(this.value()));var F=this.__index__>=this.__values__.length,B=F?e:this.__values__[this.__index__++];return{done:F,value:B}}function dIe(){return this}function pIe(F){for(var B,ae=this;ae instanceof Kn;){var we=cO(ae);we.__index__=0,we.__values__=e,B?We.__wrapped__=we:B=we;var We=we;ae=ae.__wrapped__}return We.__wrapped__=F,B}function gIe(){var F=this.__wrapped__;if(F instanceof $r){var B=F;return this.__actions__.length&&(B=new $r(this)),B=B.reverse(),B.__actions__.push({func:B3,args:[b6],thisArg:e}),new Gn(B,this.__chain__)}return this.thru(b6)}function mIe(){return Ms(this.__wrapped__,this.__actions__)}var yIe=R3(function(F,B,ae){Di.call(F,ae)?++F[ae]:Me(F,ae,1)});function xIe(F,B,ae){var we=ai(F)?bu:Zt;return ae&&tu(F,B,ae)&&(B=e),we(F,On(B,3))}function bIe(F,B){var ae=ai(F)?rs:Ir;return ae(F,On(B,3))}var wIe=YN(hO),_Ie=YN(vO);function TIe(F,B){return Ur(U3(F,B),1)}function AIe(F,B){return Ur(U3(F,B),R)}function MIe(F,B,ae){return ae=ae===e?1:ui(ae),Ur(U3(F,B),ae)}function xO(F,B){var ae=ai(F)?Na:Ct;return ae(F,On(B,3))}function bO(F,B){var ae=ai(F)?nf:qt;return ae(F,On(B,3))}var kIe=R3(function(F,B,ae){Di.call(F,ae)?F[ae].push(B):Me(F,ae,[B])});function SIe(F,B,ae,we){F=Du(F)?F:o1(F),ae=ae&&!we?ui(ae):0;var We=F.length;return ae<0&&(ae=Ca(We+ae,0)),G3(F)?ae<=We&&F.indexOf(B,ae)>-1:!!We&&Jl(F,B,ae)>-1}var CIe=lr(function(F,B,ae){var we=-1,We=typeof B=="function",vt=Du(F)?tr(F.length):[];return Ct(F,function(Et){vt[++we]=We?Ja(B,Et,ae):ul(Et,B,ae)}),vt}),EIe=R3(function(F,B,ae){Me(F,ae,B)});function U3(F,B){var ae=ai(F)?Ui:Xe;return ae(F,On(B,3))}function LIe(F,B,ae,we){return F==null?[]:(ai(B)||(B=B==null?[]:[B]),ae=we?e:ae,ai(ae)||(ae=ae==null?[]:[ae]),mt(F,B,ae))}var DIe=R3(function(F,B,ae){F[ae?0:1].push(B)},function(){return[[],[]]});function RIe(F,B,ae){var we=ai(F)?of:_u,We=arguments.length<3;return we(F,On(B,4),ae,We,Ct)}function PIe(F,B,ae){var we=ai(F)?sf:_u,We=arguments.length<3;return we(F,On(B,4),ae,We,qt)}function IIe(F,B){var ae=ai(F)?rs:Ir;return ae(F,V3(On(B,3)))}function qIe(F){var B=ai(F)?Mp:Vr;return B(F)}function FIe(F,B,ae){(ae?tu(F,B,ae):B===e)?B=1:B=ui(B);var we=ai(F)?kp:Yr;return we(F,B)}function zIe(F){var B=ai(F)?pb:xi;return B(F)}function NIe(F){if(F==null)return 0;if(Du(F))return G3(F)?Tu(F):F.length;var B=Il(F);return B==V||B==pe?F.size:Se(F).length}function OIe(F,B,ae){var we=ai(F)?wu:Ii;return ae&&tu(F,B,ae)&&(B=e),we(F,On(B,3))}var BIe=lr(function(F,B){if(F==null)return[];var ae=B.length;return ae>1&&tu(F,B[0],B[1])?B=[]:ae>2&&tu(B[0],B[1],B[2])&&(B=[B[0]]),mt(F,Ur(B,1),[])}),H3=Hd||function(){return Bi.Date.now()};function UIe(F,B){if(typeof B!="function")throw new Os(i);return F=ui(F),function(){if(--F<1)return B.apply(this,arguments)}}function wO(F,B,ae){return B=ae?e:B,B=F&&B==null?F.length:B,Pv(F,k,e,e,e,e,B)}function _O(F,B){var ae;if(typeof B!="function")throw new Os(i);return F=ui(F),function(){return--F>0&&(ae=B.apply(this,arguments)),F<=1&&(B=e),ae}}var _6=lr(function(F,B,ae){var we=v;if(ae.length){var We=No(ae,i1(_6));we|=T}return Pv(F,we,B,ae,We)}),TO=lr(function(F,B,ae){var we=v|m;if(ae.length){var We=No(ae,i1(TO));we|=T}return Pv(B,we,F,ae,We)});function AO(F,B,ae){B=ae?e:B;var we=Pv(F,g,e,e,e,e,e,B);return we.placeholder=AO.placeholder,we}function MO(F,B,ae){B=ae?e:B;var we=Pv(F,_,e,e,e,e,e,B);return we.placeholder=MO.placeholder,we}function kO(F,B,ae){var we,We,vt,Et,Ut,Jt,gr=0,xr=!1,Sr=!1,en=!0;if(typeof F!="function")throw new Os(i);B=Zf(B)||0,fo(ae)&&(xr=!!ae.leading,Sr="maxWait"in ae,vt=Sr?Ca(Zf(ae.maxWait)||0,B):vt,en="trailing"in ae?!!ae.trailing:en);function bn(Uo){var Jc=we,Nv=We;return we=We=e,gr=Uo,Et=F.apply(Nv,Jc),Et}function Un(Uo){return gr=Uo,Ut=xb(Ci,B),xr?bn(Uo):Et}function pi(Uo){var Jc=Uo-Jt,Nv=Uo-gr,YO=B-Jc;return Sr?be(YO,vt-Nv):YO}function Hn(Uo){var Jc=Uo-Jt,Nv=Uo-gr;return Jt===e||Jc>=B||Jc<0||Sr&&Nv>=vt}function Ci(){var Uo=H3();if(Hn(Uo))return Fi(Uo);Ut=xb(Ci,pi(Uo))}function Fi(Uo){return Ut=e,en&&we?bn(Uo):(we=We=e,Et)}function _f(){Ut!==e&&eu(Ut),gr=0,we=Jt=We=Ut=e}function ru(){return Ut===e?Et:Fi(H3())}function Tf(){var Uo=H3(),Jc=Hn(Uo);if(we=arguments,We=this,Jt=Uo,Jc){if(Ut===e)return Un(Jt);if(Sr)return eu(Ut),Ut=xb(Ci,B),bn(Jt)}return Ut===e&&(Ut=xb(Ci,B)),Et}return Tf.cancel=_f,Tf.flush=ru,Tf}var HIe=lr(function(F,B){return ut(F,1,B)}),jIe=lr(function(F,B,ae){return ut(F,Zf(B)||0,ae)});function VIe(F){return Pv(F,M)}function j3(F,B){if(typeof F!="function"||B!=null&&typeof B!="function")throw new Os(i);var ae=function(){var we=arguments,We=B?B.apply(this,we):we[0],vt=ae.cache;if(vt.has(We))return vt.get(We);var Et=F.apply(this,we);return ae.cache=vt.set(We,Et)||vt,Et};return ae.cache=new(j3.Cache||ns),ae}j3.Cache=ns;function V3(F){if(typeof F!="function")throw new Os(i);return function(){var B=arguments;switch(B.length){case 0:return!F.call(this);case 1:return!F.call(this,B[0]);case 2:return!F.call(this,B[0],B[1]);case 3:return!F.call(this,B[0],B[1],B[2])}return!F.apply(this,B)}}function YIe(F){return _O(2,F)}var GIe=xf(function(F,B){B=B.length==1&&ai(B[0])?Ui(B[0],zo(On())):Ui(Ur(B,1),zo(On()));var ae=B.length;return lr(function(we){for(var We=-1,vt=be(we.length,ae);++We=B}),Lp=Eu(function(){return arguments}())?Eu:function(F){return So(F)&&Di.call(F,"callee")&&!Yf.call(F,"callee")},ai=tr.isArray,sqe=bs?zo(bs):yf;function Du(F){return F!=null&&Y3(F.length)&&!Fv(F)}function Bo(F){return So(F)&&Du(F)}function lqe(F){return F===!0||F===!1||So(F)&&Ri(F)==O}var Xd=sl||I6,uqe=ws?zo(ws):Wf;function fqe(F){return So(F)&&F.nodeType===1&&!bb(F)}function cqe(F){if(F==null)return!0;if(Du(F)&&(ai(F)||typeof F=="string"||typeof F.splice=="function"||Xd(F)||a1(F)||Lp(F)))return!F.length;var B=Il(F);if(B==V||B==pe)return!F.size;if(yb(F))return!Se(F).length;for(var ae in F)if(Di.call(F,ae))return!1;return!0}function hqe(F,B){return js(F,B)}function vqe(F,B,ae){ae=typeof ae=="function"?ae:e;var we=ae?ae(F,B):e;return we===e?js(F,B,e,ae):!!we}function A6(F){if(!So(F))return!1;var B=Ri(F);return B==$||B==K||typeof F.message=="string"&&typeof F.name=="string"&&!bb(F)}function dqe(F){return typeof F=="number"&&df(F)}function Fv(F){if(!fo(F))return!1;var B=Ri(F);return B==oe||B==te||B==j||B==Ce}function CO(F){return typeof F=="number"&&F==ui(F)}function Y3(F){return typeof F=="number"&&F>-1&&F%1==0&&F<=I}function fo(F){var B=typeof F;return F!=null&&(B=="object"||B=="function")}function So(F){return F!=null&&typeof F=="object"}var EO=rf?zo(rf):Dv;function pqe(F,B){return F===B||z(F,B,d6(B))}function gqe(F,B,ae){return ae=typeof ae=="function"?ae:e,z(F,B,d6(B),ae)}function mqe(F){return LO(F)&&F!=+F}function yqe(F){if(tPe(F))throw new Sn(n);return H(F)}function xqe(F){return F===null}function bqe(F){return F==null}function LO(F){return typeof F=="number"||So(F)&&Ri(F)==ne}function bb(F){if(!So(F)||Ri(F)!=fe)return!1;var B=ku(F);if(B===null)return!0;var ae=Di.call(B,"constructor")&&B.constructor;return typeof ae=="function"&&ae instanceof ae&&$l.call(ae)==jc}var M6=ts?zo(ts):X;function wqe(F){return CO(F)&&F>=-I&&F<=I}var DO=Id?zo(Id):se;function G3(F){return typeof F=="string"||!ai(F)&&So(F)&&Ri(F)==me}function wf(F){return typeof F=="symbol"||So(F)&&Ri(F)==Ie}var a1=kl?zo(kl):ue;function _qe(F){return F===e}function Tqe(F){return So(F)&&Il(F)==ze}function Aqe(F){return So(F)&&Ri(F)==Be}var Mqe=F3(qe),kqe=F3(function(F,B){return F<=B});function RO(F){if(!F)return[];if(Du(F))return G3(F)?$a(F):Lu(F);if(Cu&&F[Cu])return zd(F[Cu]());var B=Il(F),ae=B==V?Oc:B==pe?cf:o1;return ae(F)}function zv(F){if(!F)return F===0?F:0;if(F=Zf(F),F===R||F===-R){var B=F<0?-1:1;return B*P}return F===F?F:0}function ui(F){var B=zv(F),ae=B%1;return B===B?ae?B-ae:B:0}function PO(F){return F?Le(ui(F),0,q):0}function Zf(F){if(typeof F=="number")return F;if(wf(F))return D;if(fo(F)){var B=typeof F.valueOf=="function"?F.valueOf():F;F=fo(B)?B+"":B}if(typeof F!="string")return F===0?F:+F;F=qd(F);var ae=tn.test(F);return ae||Gr.test(F)?Qo(F.slice(2),ae?2:8):or.test(F)?D:+F}function IO(F){return Bh(F,Ru(F))}function Sqe(F){return F?Le(ui(F),-I,I):F===0?F:0}function ua(F){return F==null?"":bi(F)}var Cqe=r1(function(F,B){if(yb(B)||Du(B)){Bh(B,Gs(B),F);return}for(var ae in B)Di.call(B,ae)&&is(F,ae,B[ae])}),qO=r1(function(F,B){Bh(B,Ru(B),F)}),W3=r1(function(F,B,ae,we){Bh(B,Ru(B),F,we)}),Eqe=r1(function(F,B,ae,we){Bh(B,Gs(B),F,we)}),Lqe=Iv(_e);function Dqe(F,B){var ae=fn(F);return B==null?ae:de(ae,B)}var Rqe=lr(function(F,B){F=yi(F);var ae=-1,we=B.length,We=we>2?B[2]:e;for(We&&tu(B[0],B[1],We)&&(we=1);++ae1),vt}),Bh(F,h6(F),ae),we&&(ae=Qe(ae,u|f|c,jRe));for(var We=B.length;We--;)ko(ae,B[We]);return ae});function Jqe(F,B){return zO(F,V3(On(B)))}var $qe=Iv(function(F,B){return F==null?{}:kt(F,B)});function zO(F,B){if(F==null)return{};var ae=Ui(h6(F),function(we){return[we]});return B=On(B),Dt(F,ae,function(we,We){return B(we,We[0])})}function Kqe(F,B,ae){B=Nh(B,F);var we=-1,We=B.length;for(We||(We=1,F=e);++weB){var we=F;F=B,B=we}if(ae||F%1||B%1){var We=Ke();return be(F+We*(B-F+qs("1e-"+((We+"").length-1))),B)}return ur(F,B)}var u7e=n1(function(F,B,ae){return B=B.toLowerCase(),F+(ae?BO(B):B)});function BO(F){return C6(ua(F).toLowerCase())}function UO(F){return F=ua(F),F&&F.replace(Hr,zc).replace(Ma,"")}function f7e(F,B,ae){F=ua(F),B=bi(B);var we=F.length;ae=ae===e?we:Le(ui(ae),0,we);var We=ae;return ae-=B.length,ae>=0&&F.slice(ae,We)==B}function c7e(F){return F=ua(F),F&&bt.test(F)?F.replace(Tt,Nc):F}function h7e(F){return F=ua(F),F&&Te.test(F)?F.replace(ie,"\\$&"):F}var v7e=n1(function(F,B,ae){return F+(ae?"-":"")+B.toLowerCase()}),d7e=n1(function(F,B,ae){return F+(ae?" ":"")+B.toLowerCase()}),p7e=VN("toLowerCase");function g7e(F,B,ae){F=ua(F),B=ui(B);var we=B?Tu(F):0;if(!B||we>=B)return F;var We=(B-we)/2;return q3(vf(We),ae)+F+q3(Gf(We),ae)}function m7e(F,B,ae){F=ua(F),B=ui(B);var we=B?Tu(F):0;return B&&we>>0,ae?(F=ua(F),F&&(typeof B=="string"||B!=null&&!M6(B))&&(B=bi(B),!B&&Cl(F))?Ea($a(F),0,ae):F.split(B,ae)):[]}var A7e=n1(function(F,B,ae){return F+(ae?" ":"")+C6(B)});function M7e(F,B,ae){return F=ua(F),ae=ae==null?0:Le(ui(ae),0,F.length),B=bi(B),F.slice(ae,ae+B.length)==B}function k7e(F,B,ae){var we=Ze.templateSettings;ae&&tu(F,B,ae)&&(B=e),F=ua(F),B=W3({},B,we,$N);var We=W3({},B.imports,we.imports,$N),vt=Gs(We),Et=Fc(We,vt),Ut,Jt,gr=0,xr=B.interpolate||Br,Sr="__p += '",en=Dh((B.escape||Br).source+"|"+xr.source+"|"+(xr===je?_r:Br).source+"|"+(B.evaluate||Br).source+"|$","g"),bn="//# sourceURL="+(Di.call(B,"sourceURL")?(B.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++za+"]")+` +`;F.replace(en,function(Hn,Ci,Fi,_f,ru,Tf){return Fi||(Fi=_f),Sr+=F.slice(gr,Tf).replace(qn,Sl),Ci&&(Ut=!0,Sr+=`' + +__e(`+Ci+`) + +'`),ru&&(Jt=!0,Sr+=`'; +`+ru+`; +__p += '`),Fi&&(Sr+=`' + +((__t = (`+Fi+`)) == null ? '' : __t) + +'`),gr=Tf+Hn.length,Hn}),Sr+=`'; +`;var Un=Di.call(B,"variable")&&B.variable;if(!Un)Sr=`with (obj) { +`+Sr+` +} +`;else if(Vt.test(Un))throw new Sn(a);Sr=(Jt?Sr.replace(lt,""):Sr).replace(it,"$1").replace(wt,"$1;"),Sr="function("+(Un||"obj")+`) { +`+(Un?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(Ut?", __e = _.escape":"")+(Jt?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+Sr+`return __p +}`;var pi=jO(function(){return mi(vt,bn+"return "+Sr).apply(e,Et)});if(pi.source=Sr,A6(pi))throw pi;return pi}function S7e(F){return ua(F).toLowerCase()}function C7e(F){return ua(F).toUpperCase()}function E7e(F,B,ae){if(F=ua(F),F&&(ae||B===e))return qd(F);if(!F||!(B=bi(B)))return F;var we=$a(F),We=$a(B),vt=Sh(we,We),Et=Tv(we,We)+1;return Ea(we,vt,Et).join("")}function L7e(F,B,ae){if(F=ua(F),F&&(ae||B===e))return F.slice(0,Av(F)+1);if(!F||!(B=bi(B)))return F;var we=$a(F),We=Tv(we,$a(B))+1;return Ea(we,0,We).join("")}function D7e(F,B,ae){if(F=ua(F),F&&(ae||B===e))return F.replace(Ve,"");if(!F||!(B=bi(B)))return F;var we=$a(F),We=Sh(we,$a(B));return Ea(we,We).join("")}function R7e(F,B){var ae=A,we=p;if(fo(B)){var We="separator"in B?B.separator:We;ae="length"in B?ui(B.length):ae,we="omission"in B?bi(B.omission):we}F=ua(F);var vt=F.length;if(Cl(F)){var Et=$a(F);vt=Et.length}if(ae>=vt)return F;var Ut=ae-Tu(we);if(Ut<1)return we;var Jt=Et?Ea(Et,0,Ut).join(""):F.slice(0,Ut);if(We===e)return Jt+we;if(Et&&(Ut+=Jt.length-Ut),M6(We)){if(F.slice(Ut).search(We)){var gr,xr=Jt;for(We.global||(We=Dh(We.source,ua(br.exec(We))+"g")),We.lastIndex=0;gr=We.exec(xr);)var Sr=gr.index;Jt=Jt.slice(0,Sr===e?Ut:Sr)}}else if(F.indexOf(bi(We),Ut)!=Ut){var en=Jt.lastIndexOf(We);en>-1&&(Jt=Jt.slice(0,en))}return Jt+we}function P7e(F){return F=ua(F),F&&nt.test(F)?F.replace(_t,Mv):F}var I7e=n1(function(F,B,ae){return F+(ae?" ":"")+B.toUpperCase()}),C6=VN("toUpperCase");function HO(F,B,ae){return F=ua(F),B=ae?e:B,B===e?Eh(F)?Lh(F):Mh(F):F.match(B)||[]}var jO=lr(function(F,B){try{return Ja(F,e,B)}catch(ae){return A6(ae)?ae:new Sn(ae)}}),q7e=Iv(function(F,B){return Na(B,function(ae){ae=Uh(ae),Me(F,ae,_6(F[ae],F))}),F});function F7e(F){var B=F==null?0:F.length,ae=On();return F=B?Ui(F,function(we){if(typeof we[1]!="function")throw new Os(i);return[ae(we[0]),we[1]]}):[],lr(function(we){for(var We=-1;++WeI)return[];var ae=q,we=be(F,q);B=On(B),F-=q;for(var We=kh(we,B);++ae0||B<0)?new $r(ae):(F<0?ae=ae.takeRight(-F):F&&(ae=ae.drop(F)),B!==e&&(B=ui(B),ae=B<0?ae.dropRight(-B):ae.take(B-F)),ae)},$r.prototype.takeRightWhile=function(F){return this.reverse().takeWhile(F).reverse()},$r.prototype.toArray=function(){return this.take(q)},on($r.prototype,function(F,B){var ae=/^(?:filter|find|map|reject)|While$/.test(B),we=/^(?:head|last)$/.test(B),We=Ze[we?"take"+(B=="last"?"Right":""):B],vt=we||/^find/.test(B);We&&(Ze.prototype[B]=function(){var Et=this.__wrapped__,Ut=we?[1]:arguments,Jt=Et instanceof $r,gr=Ut[0],xr=Jt||ai(Et),Sr=function(Ci){var Fi=We.apply(Ze,zs([Ci],Ut));return we&&en?Fi[0]:Fi};xr&&ae&&typeof gr=="function"&&gr.length!=1&&(Jt=xr=!1);var en=this.__chain__,bn=!!this.__actions__.length,Un=vt&&!en,pi=Jt&&!bn;if(!vt&&xr){Et=pi?Et:new $r(this);var Hn=F.apply(Et,Ut);return Hn.__actions__.push({func:B3,args:[Sr],thisArg:e}),new Gn(Hn,en)}return Un&&pi?F.apply(this,Ut):(Hn=this.thru(Sr),Un?we?Hn.value()[0]:Hn.value():Hn)})}),Na(["pop","push","shift","sort","splice","unshift"],function(F){var B=Bs[F],ae=/^(?:push|sort|unshift)$/.test(F)?"tap":"thru",we=/^(?:pop|shift)$/.test(F);Ze.prototype[F]=function(){var We=arguments;if(we&&!this.__chain__){var vt=this.value();return B.apply(ai(vt)?vt:[],We)}return this[ae](function(Et){return B.apply(ai(Et)?Et:[],We)})}}),on($r.prototype,function(F,B){var ae=Ze[B];if(ae){var we=ae.name+"";Di.call(Qt,we)||(Qt[we]=[]),Qt[we].push({name:B,func:ae})}}),Qt[P3(e,m).name]=[{name:"wrapper",func:e}],$r.prototype.clone=Hi,$r.prototype.reverse=Zn,$r.prototype.value=uo,Ze.prototype.at=fIe,Ze.prototype.chain=cIe,Ze.prototype.commit=hIe,Ze.prototype.next=vIe,Ze.prototype.plant=pIe,Ze.prototype.reverse=gIe,Ze.prototype.toJSON=Ze.prototype.valueOf=Ze.prototype.value=mIe,Ze.prototype.first=Ze.prototype.head,Cu&&(Ze.prototype[Cu]=dIe),Ze},El=Sv();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Bi._=El,define(function(){return El})):so?((so.exports=El)._=El,tf._=El):Bi._=El}).call(ob)});var u8e=J((NZt,JC)=>{(function(){function e(n){for(var i=0,a=n.length-1,o=void 0,s=void 0,l=void 0,u=r(i,a);;){if(a<=i)return n[u];if(a==i+1)return n[i]>n[a]&&t(n,i,a),n[u];for(o=r(i,a),n[o]>n[a]&&t(n,o,a),n[i]>n[a]&&t(n,i,a),n[o]>n[i]&&t(n,o,i),t(n,o,i+1),s=i+1,l=a;;){do s++;while(n[i]>n[s]);do l--;while(n[l]>n[i]);if(l=u&&(a=l-1)}}var t=function(i,a,o){var s;return s=[i[o],i[a]],i[a]=s[0],i[o]=s[1],s},r=function(i,a){return~~((i+a)/2)};typeof JC<"u"&&JC.exports?JC.exports=e:window.median=e})()});var g8e=J((aJt,p8e)=>{"use strict";function M4t(e,t){for(var r=1,n=e.length,i=e[0],a=e[0],o=1;o{"use strict";var C4t=g8e();function m8e(e,t,r){var n=e.length,i=t.arrayArgs.length,a=t.indexArgs.length>0,o=[],s=[],l=0,u=0,f,c;for(f=0;f0&&o.push("var "+s.join(",")),f=n-1;f>=0;--f)l=e[f],o.push(["for(i",f,"=0;i",f,"0&&o.push(["index[",u,"]-=s",u].join("")),o.push(["++index[",l,"]"].join(""))),o.push("}")}return o.join(` +`)}function E4t(e,t,r,n){for(var i=t.length,a=r.arrayArgs.length,o=r.blockSize,s=r.indexArgs.length>0,l=[],u=0;u0;){"].join("")),l.push(["if(j",u,"<",o,"){"].join("")),l.push(["s",t[u],"=j",u].join("")),l.push(["j",u,"=0"].join("")),l.push(["}else{s",t[u],"=",o].join("")),l.push(["j",u,"-=",o,"}"].join("")),s&&l.push(["index[",t[u],"]=j",u].join(""));for(var u=0;u0&&(r=r&&t[n]===t[n-1])}return r?t[0]:t.join("")}function R4t(e,t){for(var r=t[1].length-Math.abs(e.arrayBlockIndices[0])|0,n=new Array(e.arrayArgs.length),i=new Array(e.arrayArgs.length),a=0;a0&&m.push("shape=SS.slice(0)"),e.indexArgs.length>0){for(var b=new Array(r),a=0;a0&&v.push("var "+m.join(","));for(var a=0;a3&&v.push(vN(e.pre,e,i));var w=vN(e.body,e,i),k=L4t(f);k3&&v.push(vN(e.post,e,i)),e.debug&&console.log("-----Generated cwise routine for ",t,`: +`+v.join(` +`)+` +----------`);var x=[e.funcName||"unnamed","_cwise_loop_",n[0].join("s"),"m",k,D4t(i)].join(""),M=new Function(["function ",x,"(",d.join(","),"){",v.join(` +`),"} return ",x].join(""));return M()}y8e.exports=R4t});var w8e=J((sJt,b8e)=>{"use strict";var P4t=x8e();function I4t(e){var t=["'use strict'","var CACHED={}"],r=[],n=e.funcName+"_cwise_thunk";t.push(["return function ",n,"(",e.shimArgs.join(","),"){"].join(""));for(var i=[],a=[],o=[["array",e.arrayArgs[0],".shape.slice(",Math.max(0,e.arrayBlockIndices[0]),e.arrayBlockIndices[0]<0?","+e.arrayBlockIndices[0]+")":")"].join("")],s=[],l=[],u=0;u0&&(s.push("array"+e.arrayArgs[0]+".shape.length===array"+f+".shape.length+"+(Math.abs(e.arrayBlockIndices[0])-Math.abs(e.arrayBlockIndices[u]))),l.push("array"+e.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[0])+"]===array"+f+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[u])+"]"))}e.arrayArgs.length>1&&(t.push("if (!("+s.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),t.push("for(var shapeIndex=array"+e.arrayArgs[0]+".shape.length-"+Math.abs(e.arrayBlockIndices[0])+"; shapeIndex-->0;) {"),t.push("if (!("+l.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),t.push("}"));for(var u=0;u{"use strict";var q4t=w8e();function F4t(){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 z4t(e){var t=new F4t;t.pre=e.pre,t.body=e.body,t.post=e.post;var r=e.args.slice(0);t.argTypes=r;for(var n=0;n0)throw new Error("cwise: pre() block may not reference array args");if(n0)throw new Error("cwise: post() block may not reference array args")}else if(i==="scalar")t.scalarArgs.push(n),t.shimArgs.push("scalar"+n);else if(i==="index"){if(t.indexArgs.push(n),n0)throw new Error("cwise: pre() block may not reference array index");if(n0)throw new Error("cwise: post() block may not reference array index")}else if(i==="shape"){if(t.shapeArgs.push(n),nr.length)throw new Error("cwise: Too many arguments in pre() block");if(t.body.args.length>r.length)throw new Error("cwise: Too many arguments in body() block");if(t.post.args.length>r.length)throw new Error("cwise: Too many arguments in post() block");return t.debug=!!e.printCode||!!e.debug,t.funcName=e.funcName||"cwise",t.blockSize=e.blockSize||64,q4t(t)}_8e.exports=z4t});var L8e=J(Li=>{"use strict";var $u=T8e(),KC={body:"",args:[],thisVars:[],localVars:[]};function dN(e){if(!e)return KC;for(var t=0;t>",rrshift:">>>"};(function(){for(var e in A8e){var t=A8e[e];Li[e]=xo({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),Li[e+"eq"]=xo({args:["array","array"],body:{args:["a","b"],body:"a"+t+"=b"},rvalue:!0,funcName:e+"eq"}),Li[e+"s"]=xo({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),Li[e+"seq"]=xo({args:["array","scalar"],body:{args:["a","s"],body:"a"+t+"=s"},rvalue:!0,funcName:e+"seq"})}})();var M8e={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var e in M8e){var t=M8e[e];Li[e]=xo({args:["array","array"],body:{args:["a","b"],body:"a="+t+"b"},funcName:e}),Li[e+"eq"]=xo({args:["array"],body:{args:["a"],body:"a="+t+"a"},rvalue:!0,count:2,funcName:e+"eq"})}})();var k8e={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var e in k8e){var t=k8e[e];Li[e]=xo({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),Li[e+"s"]=xo({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),Li[e+"eq"]=xo({args:["array","array"],body:{args:["a","b"],body:"a=a"+t+"b"},rvalue:!0,count:2,funcName:e+"eq"}),Li[e+"seq"]=xo({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+t+"s"},rvalue:!0,count:2,funcName:e+"seq"})}})();var S8e=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var e=0;ethis_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"});Li.norm1=$u({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"});Li.sup=$u({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:[]}});Li.inf=$u({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_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:[]}});Li.random=xo({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});Li.assign=xo({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});Li.assigns=xo({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});Li.equals=$u({args:["array","array"],pre:KC,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"})});var R8e=J((fJt,D8e)=>{"use strict";function O4t(e){for(var t=new Array(e),r=0;r{I8e.exports=function(e){return e!=null&&(P8e(e)||B4t(e)||!!e._isBuffer)};function P8e(e){return!!e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function B4t(e){return typeof e.readFloatLE=="function"&&typeof e.slice=="function"&&P8e(e.slice(0,0))}});var pN=J((hJt,F8e)=>{var U4t=R8e(),H4t=q8e(),j4t=typeof Float64Array<"u";function V4t(e,t){return e[0]-t[0]}function Y4t(){var e=this.stride,t=new Array(e.length),r;for(r=0;rMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):t===3&&i.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];}}})")):i.push("ORDER})")),i.push("proto.set=function "+r+"_set("+o.join(",")+",v){"),n?i.push("return this.data.set("+s+",v)}"):i.push("return this.data["+s+"]=v}"),i.push("proto.get=function "+r+"_get("+o.join(",")+"){"),n?i.push("return this.data.get("+s+")}"):i.push("return this.data["+s+"]}"),i.push("proto.index=function "+r+"_index(",o.join(),"){return "+s+"}"),i.push("proto.hi=function "+r+"_hi("+o.join(",")+"){return new "+r+"(this.data,"+a.map(function(b){return["(typeof i",b,"!=='number'||i",b,"<0)?this.shape[",b,"]:i",b,"|0"].join("")}).join(",")+","+a.map(function(b){return"this.stride["+b+"]"}).join(",")+",this.offset)}");var f=a.map(function(b){return"a"+b+"=this.shape["+b+"]"}),c=a.map(function(b){return"c"+b+"=this.stride["+b+"]"});i.push("proto.lo=function "+r+"_lo("+o.join(",")+"){var b=this.offset,d=0,"+f.join(",")+","+c.join(","));for(var h=0;h=0){d=i"+h+"|0;b+=c"+h+"*d;a"+h+"-=d}");i.push("return new "+r+"(this.data,"+a.map(function(b){return"a"+b}).join(",")+","+a.map(function(b){return"c"+b}).join(",")+",b)}"),i.push("proto.step=function "+r+"_step("+o.join(",")+"){var "+a.map(function(b){return"a"+b+"=this.shape["+b+"]"}).join(",")+","+a.map(function(b){return"b"+b+"=this.stride["+b+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var h=0;h=0){c=(c+this.stride["+h+"]*i"+h+")|0}else{a.push(this.shape["+h+"]);b.push(this.stride["+h+"])}");i.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),i.push("return function construct_"+r+"(data,shape,stride,offset){return new "+r+"(data,"+a.map(function(b){return"shape["+b+"]"}).join(",")+","+a.map(function(b){return"stride["+b+"]"}).join(",")+",offset)}");var m=new Function("CTOR_LIST","ORDER",i.join(` +`));return m(QC[e],Y4t)}function W4t(e){if(H4t(e))return"buffer";if(j4t)switch(Object.prototype.toString.call(e)){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";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(e)?"array":"generic"}var QC={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function X4t(e,t,r,n){if(e===void 0){var u=QC.array[0];return u([])}else typeof e=="number"&&(e=[e]);t===void 0&&(t=[e.length]);var i=t.length;if(r===void 0){r=new Array(i);for(var a=i-1,o=1;a>=0;--a)r[a]=o,o*=t[a]}if(n===void 0){n=0;for(var a=0;a{"use strict";var gN=32;Fo.INT_BITS=gN;Fo.INT_MAX=2147483647;Fo.INT_MIN=-1<0)-(e<0)};Fo.abs=function(e){var t=e>>gN-1;return(e^t)-t};Fo.min=function(e,t){return t^(e^t)&-(e65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Fo.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Fo.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function z8e(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Fo.countTrailingZeros=z8e;Fo.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Fo.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Fo.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var M3=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<>>8&255]<<16|M3[e>>>16&255]<<8|M3[e>>>24&255]};Fo.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Fo.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Fo.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Fo.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Fo.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>z8e(e)+1}});var B8e=J((dJt,O8e)=>{"use strict";function N8e(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a"u"&&(t=0),typeof e){case"number":if(e>0)return Z4t(e|0,t);break;case"object":if(typeof e.length=="number")return N8e(e,t,0);break}return[]}O8e.exports=J4t});var j8e=J(e6=>{"use strict";e6.byteLength=K4t;e6.toByteArray=eCt;e6.fromByteArray=nCt;var wv=[],Ic=[],$4t=typeof Uint8Array<"u"?Uint8Array:Array,yN="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Xm=0,U8e=yN.length;Xm0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function K4t(e){var t=H8e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function Q4t(e,t,r){return(t+r)*3/4-r}function eCt(e){var t,r=H8e(e),n=r[0],i=r[1],a=new $4t(Q4t(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=Ic[e.charCodeAt(l)]<<2|Ic[e.charCodeAt(l+1)]>>4,a[o++]=t&255),i===1&&(t=Ic[e.charCodeAt(l)]<<10|Ic[e.charCodeAt(l+1)]<<4|Ic[e.charCodeAt(l+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function tCt(e){return wv[e>>18&63]+wv[e>>12&63]+wv[e>>6&63]+wv[e&63]}function rCt(e,t,r){for(var n,i=[],a=t;as?s:o+a));return n===1?(t=e[r-1],i.push(wv[t>>2]+wv[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(wv[t>>10]+wv[t>>4&63]+wv[t<<2&63]+"=")),i.join("")}});var V8e=J(xN=>{xN.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,l=(1<>1,f=-7,c=r?i-1:0,h=r?-1:1,d=e[t+c];for(c+=h,a=d&(1<<-f)-1,d>>=-f,f+=s;f>0;a=a*256+e[t+c],c+=h,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=n;f>0;o=o*256+e[t+c],c+=h,f-=8);if(a===0)a=1-u;else{if(a===l)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-u}return(d?-1:1)*o*Math.pow(2,a-n)};xN.write=function(e,t,r,n,i,a){var o,s,l,u=a*8-i-1,f=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,v=n?1:-1,m=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+c>=1?t+=h/l:t+=h*Math.pow(2,1-c),t*l>=2&&(o++,l/=2),o+c>=f?(s=0,o=f):o+c>=1?(s=(t*l-1)*Math.pow(2,i),o=o+c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=v,s/=256,i-=8);for(o=o<0;e[r+d]=o&255,d+=v,o/=256,u-=8);e[r+d-v]|=m*128}});var sRe=J(hb=>{"use strict";var bN=j8e(),fb=V8e(),Y8e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;hb.Buffer=vr;hb.SlowBuffer=uCt;hb.INSPECT_MAX_BYTES=50;var t6=2147483647;hb.kMaxLength=t6;vr.TYPED_ARRAY_SUPPORT=iCt();!vr.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function iCt(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(vr.prototype,"parent",{enumerable:!0,get:function(){if(vr.isBuffer(this))return this.buffer}});Object.defineProperty(vr.prototype,"offset",{enumerable:!0,get:function(){if(vr.isBuffer(this))return this.byteOffset}});function Pd(e){if(e>t6)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,vr.prototype),t}function vr(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return AN(e)}return Z8e(e,t,r)}vr.poolSize=8192;function Z8e(e,t,r){if(typeof e=="string")return oCt(e,t);if(ArrayBuffer.isView(e))return sCt(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(_v(e,ArrayBuffer)||e&&_v(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(_v(e,SharedArrayBuffer)||e&&_v(e.buffer,SharedArrayBuffer)))return _N(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return vr.from(n,t,r);let i=lCt(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return vr.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}vr.from=function(e,t,r){return Z8e(e,t,r)};Object.setPrototypeOf(vr.prototype,Uint8Array.prototype);Object.setPrototypeOf(vr,Uint8Array);function J8e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function aCt(e,t,r){return J8e(e),e<=0?Pd(e):t!==void 0?typeof r=="string"?Pd(e).fill(t,r):Pd(e).fill(t):Pd(e)}vr.alloc=function(e,t,r){return aCt(e,t,r)};function AN(e){return J8e(e),Pd(e<0?0:MN(e)|0)}vr.allocUnsafe=function(e){return AN(e)};vr.allocUnsafeSlow=function(e){return AN(e)};function oCt(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!vr.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=$8e(e,t)|0,n=Pd(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function wN(e){let t=e.length<0?0:MN(e.length)|0,r=Pd(t);for(let n=0;n=t6)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+t6.toString(16)+" bytes");return e|0}function uCt(e){return+e!=e&&(e=0),vr.alloc(+e)}vr.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==vr.prototype};vr.compare=function(t,r){if(_v(t,Uint8Array)&&(t=vr.from(t,t.offset,t.byteLength)),_v(r,Uint8Array)&&(r=vr.from(r,r.offset,r.byteLength)),!vr.isBuffer(t)||!vr.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);ai.length?(vr.isBuffer(o)||(o=vr.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(vr.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function $8e(e,t){if(vr.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||_v(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return TN(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return oRe(e).length;default:if(i)return n?-1:TN(e).length;t=(""+t).toLowerCase(),i=!0}}vr.byteLength=$8e;function fCt(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return bCt(this,t,r);case"utf8":case"utf-8":return Q8e(this,t,r);case"ascii":return yCt(this,t,r);case"latin1":case"binary":return xCt(this,t,r);case"base64":return gCt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return wCt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}vr.prototype._isBuffer=!0;function Zm(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}vr.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(t+=" ... "),""};Y8e&&(vr.prototype[Y8e]=vr.prototype.inspect);vr.prototype.compare=function(t,r,n,i,a){if(_v(t,Uint8Array)&&(t=vr.from(t,t.offset,t.byteLength)),!vr.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,l=Math.min(o,s),u=this.slice(i,a),f=t.slice(r,n);for(let c=0;c2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,SN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=vr.from(t,n)),vr.isBuffer(t))return t.length===0?-1:G8e(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):G8e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function G8e(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function l(f,c){return a===1?f[c]:f.readUInt16BE(c*a)}let u;if(i){let f=-1;for(u=r;uo&&(r=o-s),u=r;u>=0;u--){let f=!0;for(let c=0;ci&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return cCt(this,t,r,n);case"utf8":case"utf-8":return hCt(this,t,r,n);case"ascii":case"latin1":case"binary":return vCt(this,t,r,n);case"base64":return dCt(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return pCt(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};vr.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function gCt(e,t,r){return t===0&&r===e.length?bN.fromByteArray(e):bN.fromByteArray(e.slice(t,r))}function Q8e(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:a>223?3:a>191?2:1;if(i+s<=r){let l,u,f,c;switch(s){case 1:a<128&&(o=a);break;case 2:l=e[i+1],(l&192)===128&&(c=(a&31)<<6|l&63,c>127&&(o=c));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(c=(a&15)<<12|(l&63)<<6|u&63,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:l=e[i+1],u=e[i+2],f=e[i+3],(l&192)===128&&(u&192)===128&&(f&192)===128&&(c=(a&15)<<18|(l&63)<<12|(u&63)<<6|f&63,c>65535&&c<1114112&&(o=c))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return mCt(n)}var W8e=4096;function mCt(e){let t=e.length;if(t<=W8e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let a=t;an&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}vr.prototype.readUintLE=vr.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||el(t,r,this.length);let i=this[t],a=1,o=0;for(;++o>>0,r=r>>>0,n||el(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};vr.prototype.readUint8=vr.prototype.readUInt8=function(t,r){return t=t>>>0,r||el(t,1,this.length),this[t]};vr.prototype.readUint16LE=vr.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||el(t,2,this.length),this[t]|this[t+1]<<8};vr.prototype.readUint16BE=vr.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||el(t,2,this.length),this[t]<<8|this[t+1]};vr.prototype.readUint32LE=vr.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||el(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};vr.prototype.readUint32BE=vr.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||el(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};vr.prototype.readBigUInt64LE=xp(function(t){t=t>>>0,cb(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&k3(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<>>0,cb(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&k3(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||el(t,r,this.length);let i=this[t],a=1,o=0;for(;++o=a&&(i-=Math.pow(2,8*r)),i};vr.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||el(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};vr.prototype.readInt8=function(t,r){return t=t>>>0,r||el(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};vr.prototype.readInt16LE=function(t,r){t=t>>>0,r||el(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};vr.prototype.readInt16BE=function(t,r){t=t>>>0,r||el(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};vr.prototype.readInt32LE=function(t,r){return t=t>>>0,r||el(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};vr.prototype.readInt32BE=function(t,r){return t=t>>>0,r||el(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};vr.prototype.readBigInt64LE=xp(function(t){t=t>>>0,cb(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&k3(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<>>0,cb(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&k3(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<>>0,r||el(t,4,this.length),fb.read(this,t,!0,23,4)};vr.prototype.readFloatBE=function(t,r){return t=t>>>0,r||el(t,4,this.length),fb.read(this,t,!1,23,4)};vr.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||el(t,8,this.length),fb.read(this,t,!0,52,8)};vr.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||el(t,8,this.length),fb.read(this,t,!1,52,8)};function Ku(e,t,r,n,i,a){if(!vr.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}vr.prototype.writeUintLE=vr.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Ku(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Ku(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};vr.prototype.writeUint8=vr.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,1,255,0),this[r]=t&255,r+1};vr.prototype.writeUint16LE=vr.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};vr.prototype.writeUint16BE=vr.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};vr.prototype.writeUint32LE=vr.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};vr.prototype.writeUint32BE=vr.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function eRe(e,t,r,n,i){aRe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function tRe(e,t,r,n,i){aRe(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}vr.prototype.writeBigUInt64LE=xp(function(t,r=0){return eRe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});vr.prototype.writeBigUInt64BE=xp(function(t,r=0){return tRe(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});vr.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Ku(this,t,r,n,l-1,-l)}let a=0,o=1,s=0;for(this[r]=t&255;++a>0)-s&255;return r+n};vr.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Ku(this,t,r,n,l-1,-l)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};vr.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};vr.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};vr.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};vr.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};vr.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Ku(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};vr.prototype.writeBigInt64LE=xp(function(t,r=0){return eRe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});vr.prototype.writeBigInt64BE=xp(function(t,r=0){return tRe(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function rRe(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function nRe(e,t,r,n,i){return t=+t,r=r>>>0,i||rRe(e,t,r,4,34028234663852886e22,-34028234663852886e22),fb.write(e,t,r,n,23,4),r+4}vr.prototype.writeFloatLE=function(t,r,n){return nRe(this,t,r,!0,n)};vr.prototype.writeFloatBE=function(t,r,n){return nRe(this,t,r,!1,n)};function iRe(e,t,r,n,i){return t=+t,r=r>>>0,i||rRe(e,t,r,8,17976931348623157e292,-17976931348623157e292),fb.write(e,t,r,n,52,8),r+8}vr.prototype.writeDoubleLE=function(t,r,n){return iRe(this,t,r,!0,n)};vr.prototype.writeDoubleBE=function(t,r,n){return iRe(this,t,r,!1,n)};vr.prototype.copy=function(t,r,n,i){if(!vr.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a2**32?i=X8e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=X8e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function X8e(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function _Ct(e,t,r){cb(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&k3(t,e.length-(r+1))}function aRe(e,t,r,n,i,a){if(e>r||e3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new ub.ERR_OUT_OF_RANGE("value",s,e)}_Ct(n,i,a)}function cb(e,t){if(typeof e!="number")throw new ub.ERR_INVALID_ARG_TYPE(t,"number",e)}function k3(e,t,r){throw Math.floor(e)!==e?(cb(e,r),new ub.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new ub.ERR_BUFFER_OUT_OF_BOUNDS:new ub.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var TCt=/[^+/0-9A-Za-z-_]/g;function ACt(e){if(e=e.split("=")[0],e=e.trim().replace(TCt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function TN(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function MCt(e){let t=[];for(let r=0;r>8,i=r%256,a.push(i),a.push(n);return a}function oRe(e){return bN.toByteArray(ACt(e))}function r6(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function _v(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function SN(e){return e!==e}var SCt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function xp(e){return typeof BigInt>"u"?CCt:e}function CCt(){throw new Error("BigInt not supported")}});var _Re=J(qi=>{"use strict";var bp=mN(),Ml=B8e(),lRe=sRe().Buffer;global.__TYPEDARRAY_POOL||(global.__TYPEDARRAY_POOL={UINT8:Ml([32,0]),UINT16:Ml([32,0]),UINT32:Ml([32,0]),BIGUINT64:Ml([32,0]),INT8:Ml([32,0]),INT16:Ml([32,0]),INT32:Ml([32,0]),BIGINT64:Ml([32,0]),FLOAT:Ml([32,0]),DOUBLE:Ml([32,0]),DATA:Ml([32,0]),UINT8C:Ml([32,0]),BUFFER:Ml([32,0])});var ECt=typeof Uint8ClampedArray<"u",LCt=typeof BigUint64Array<"u",DCt=typeof BigInt64Array<"u",Jo=global.__TYPEDARRAY_POOL;Jo.UINT8C||(Jo.UINT8C=Ml([32,0]));Jo.BIGUINT64||(Jo.BIGUINT64=Ml([32,0]));Jo.BIGINT64||(Jo.BIGINT64=Ml([32,0]));Jo.BUFFER||(Jo.BUFFER=Ml([32,0]));var n6=Jo.DATA,i6=Jo.BUFFER;qi.free=function(t){if(lRe.isBuffer(t))i6[bp.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=bp.log2(r)|0;n6[n].push(t)}};function uRe(e){if(e){var t=e.length||e.byteLength,r=bp.log2(t);n6[r].push(e)}}function RCt(e){uRe(e.buffer)}qi.freeUint8=qi.freeUint16=qi.freeUint32=qi.freeBigUint64=qi.freeInt8=qi.freeInt16=qi.freeInt32=qi.freeBigInt64=qi.freeFloat32=qi.freeFloat=qi.freeFloat64=qi.freeDouble=qi.freeUint8Clamped=qi.freeDataView=RCt;qi.freeArrayBuffer=uRe;qi.freeBuffer=function(t){i6[bp.log2(t.length)].push(t)};qi.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return Qu(t);switch(r){case"uint8":return CN(t);case"uint16":return fRe(t);case"uint32":return cRe(t);case"int8":return hRe(t);case"int16":return vRe(t);case"int32":return dRe(t);case"float":case"float32":return pRe(t);case"double":case"float64":return gRe(t);case"uint8_clamped":return mRe(t);case"bigint64":return xRe(t);case"biguint64":return yRe(t);case"buffer":return wRe(t);case"data":case"dataview":return bRe(t);default:return null}return null};function Qu(t){var t=bp.nextPow2(t),r=bp.log2(t),n=n6[r];return n.length>0?n.pop():new ArrayBuffer(t)}qi.mallocArrayBuffer=Qu;function CN(e){return new Uint8Array(Qu(e),0,e)}qi.mallocUint8=CN;function fRe(e){return new Uint16Array(Qu(2*e),0,e)}qi.mallocUint16=fRe;function cRe(e){return new Uint32Array(Qu(4*e),0,e)}qi.mallocUint32=cRe;function hRe(e){return new Int8Array(Qu(e),0,e)}qi.mallocInt8=hRe;function vRe(e){return new Int16Array(Qu(2*e),0,e)}qi.mallocInt16=vRe;function dRe(e){return new Int32Array(Qu(4*e),0,e)}qi.mallocInt32=dRe;function pRe(e){return new Float32Array(Qu(4*e),0,e)}qi.mallocFloat32=qi.mallocFloat=pRe;function gRe(e){return new Float64Array(Qu(8*e),0,e)}qi.mallocFloat64=qi.mallocDouble=gRe;function mRe(e){return ECt?new Uint8ClampedArray(Qu(e),0,e):CN(e)}qi.mallocUint8Clamped=mRe;function yRe(e){return LCt?new BigUint64Array(Qu(8*e),0,e):null}qi.mallocBigUint64=yRe;function xRe(e){return DCt?new BigInt64Array(Qu(8*e),0,e):null}qi.mallocBigInt64=xRe;function bRe(e){return new DataView(Qu(e),0,e)}qi.mallocDataView=bRe;function wRe(e){e=bp.nextPow2(e);var t=bp.log2(e),r=i6[t];return r.length>0?r.pop():new lRe(e)}qi.mallocBuffer=wRe;qi.clearCache=function(){for(var t=0;t<32;++t)Jo.UINT8[t].length=0,Jo.UINT16[t].length=0,Jo.UINT32[t].length=0,Jo.INT8[t].length=0,Jo.INT16[t].length=0,Jo.INT32[t].length=0,Jo.FLOAT[t].length=0,Jo.DOUBLE[t].length=0,Jo.BIGUINT64[t].length=0,Jo.BIGINT64[t].length=0,Jo.UINT8C[t].length=0,n6[t].length=0,i6[t].length=0}});var TRe=J((bJt,EN)=>{var S3=mN();function PCt(e,t,r,n,i,a,o){e|=0,t|=0,r|=0,i|=0,a|=0,S3.isPow2(r)?a6(e,t,r,n,i,a):qCt(e,t,r,n,i,a,o)}EN.exports=PCt;function ICt(e){return S3.isPow2(e)?0:2*e+4*S3.nextPow2(2*e+1)}EN.exports.scratchMemory=ICt;function a6(e,t,r,n,i,a){e|=0,t|=0,r|=0,i|=0,a|=0;var o,s,l,u,f,c,h,d,v,m,b,g,_,T,w,k,x,M,A,p,S,y,E,C,L,R;for(o=r,s=S3.log2(o),A=0;A>1,f=0,l=0;l>=1;f+=c}for(b=-1,g=0,m=1,d=0;d{"use strict";var vb=L8e(),o6=pN(),LN=_Re(),ARe=TRe();function FCt(e,t,r){var n=t.shape,i=n.length,a=1,o=new Array(i),s=0,l,u;for(l=i-1;l>=0;--l)if(o[l]=a,a*=n[l],s=Math.max(s,ARe.scratchMemory(n[l])),t.shape[l]!==r.shape[l])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var f=4*a+s,c;t.dtype==="array"||t.dtype==="float64"||t.dtype==="custom"?c=LN.mallocDouble(f):c=LN.mallocFloat(f);var h=o6(c,n.slice(0),o,0),d=o6(c,n.slice(0),o.slice(0),a),v=o6(c,n.slice(0),o.slice(0),2*a),m=o6(c,n.slice(0),o.slice(0),3*a),b,g,_,T,w=4*a;for(vb.assign(h,t),vb.assign(d,r),l=i-1;l>=0&&(ARe(e,a/n[l],n[l],c,h.offset,d.offset,w),l!==0);--l){for(g=1,_=v.stride,T=m.stride,u=l-1;u=0;--u)T[u]=_[u]=g,g*=n[u];vb.assign(v,h),vb.assign(m,d),b=h,h=v,v=b,b=d,d=m,m=b}vb.assign(t,h),vb.assign(r,d),LN.free(c)}MRe.exports=FCt});var ERe=J((qJt,CRe)=>{"use strict";function OCt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>=0?(a=o,i=o-1):n=o+1}return a}function BCt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>0?(a=o,i=o-1):n=o+1}return a}function UCt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<0?(a=o,n=o+1):i=o-1}return a}function HCt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<=0?(a=o,n=o+1):i=o-1}return a}function jCt(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function D3(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}CRe.exports={ge:function(e,t,r,n,i){return D3(e,t,r,n,i,OCt)},gt:function(e,t,r,n,i){return D3(e,t,r,n,i,BCt)},lt:function(e,t,r,n,i){return D3(e,t,r,n,i,UCt)},le:function(e,t,r,n,i){return D3(e,t,r,n,i,HCt)},eq:function(e,t,r,n,i){return D3(e,t,r,n,i,jCt)}}});var IRe=$c(bV());var wV="3.3.5";function BHe(e){return Boolean(e)}var UHe=e=>{let t=Array.from(document.querySelectorAll('style[id^="plotly.js"]')).map(r=>r.sheet).filter(BHe).flatMap(r=>Array.from(r.cssRules)).map(r=>r.cssText).join(` +`);e.innerHTML+=` + .js-plotly-plot .plotly .modebar-btn { + fill: rgb(136,136,136); + } + ${t}`},_V=UHe;window.global=window;var vDe=Aue();vDe.register([kfe(),vce(),The(),jhe(),rve(),ede(),vde(),Qde(),C0e(),upe(),Zpe(),zge(),S1e(),dye(),Vye(),vxe(),Ybe(),f2e(),C2e(),B2e(),ewe(),pwe(),Dwe(),n3e(),S3e(),vTe(),MTe(),eAe(),lMe(),RMe(),vke(),ISe(),n5e(),A5e(),Z5e(),u4e(),uCe(),CCe(),qCe(),NCe(),UCe(),VCe(),_6e(),A6e(),k6e(),C6e(),L6e(),R6e(),I6e(),F6e(),N6e(),B6e(),H6e(),V6e(),G6e(),X6e(),J6e(),K6e(),eEe(),rEe(),iEe(),oEe(),lEe(),fEe(),hEe(),dEe(),gEe(),yEe(),bEe(),_Ee(),AEe(),kEe(),CEe(),LEe(),REe(),IEe(),FEe(),NEe(),BEe(),HEe(),VEe(),GEe(),XEe(),JEe(),KEe(),eLe(),rLe(),iLe(),oLe(),lLe(),fLe(),hLe(),dLe(),gLe(),yLe(),bLe(),_Le(),ALe(),kLe(),CLe(),LLe(),RLe(),ILe(),FLe(),NLe(),BLe(),HLe(),VLe(),GLe(),XLe(),JLe(),KLe(),eDe(),rDe(),iDe(),oDe(),lDe(),fDe(),hDe()]);var TC=vDe;function v3(e){return!(Dd(e)||yp(e))}function Dd(e){return!!e.attribute}function yp(e){return!!e.statistic}var d3=!0;if(!d3){let e=new WebSocket("ws://localhost:8081");e.addEventListener("connection",t=>{console.log("connected ",t)}),e.addEventListener("message",async t=>{if(window.no_hot_reload)return;console.log("Message from server ",t);let{action:r,payload:n}=JSON.parse(t.data);r==="update-app"&&window.location.reload(),r==="error"&&console.warn(n)})}var AC=e=>new Promise(t=>setTimeout(t,e));function dDe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function pDe(e){let t=Promise.resolve(),r={cancelled:!1};return n=>{r.cancelled=!0;let i={cancelled:!1};return r=i,t=t.catch(()=>{}).then(()=>new Promise(async a=>{n&&await AC(n),requestAnimationFrame(async()=>{i.cancelled?a():a(e())})}))}}function Nm(e){if(e===null||e===!0||e===!1)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function Ni(e,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}function MC(e){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?MC=function(r){return typeof r}:MC=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},MC(e)}function da(e){Ni(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||MC(e)==="object"&&t==="[object Date]"?new Date(e.getTime()):typeof e=="number"||t==="[object Number]"?new Date(e):((typeof e=="string"||t==="[object String]")&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn(new Error().stack)),new Date(NaN))}var gDe={};function ib(){return gDe}function mDe(e){gDe=e}function kC(e,t){var r,n,i,a,o,s,l,u;Ni(1,arguments);var f=ib(),c=Nm((r=(n=(i=(a=t?.weekStartsOn)!==null&&a!==void 0?a:t==null||(o=t.locale)===null||o===void 0||(s=o.options)===null||s===void 0?void 0:s.weekStartsOn)!==null&&i!==void 0?i:f.weekStartsOn)!==null&&n!==void 0?n:(l=f.locale)===null||l===void 0||(u=l.options)===null||u===void 0?void 0:u.weekStartsOn)!==null&&r!==void 0?r:0);if(!(c>=0&&c<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var h=da(e),d=h.getDay(),v=(d=0&&c<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var h=da(e),d=h.getDay(),v=(d2)return t;if(/:/.test(r[0])?n=r[0]:(t.date=r[0],n=r[1],BC.timeZoneDelimiter.test(t.date)&&(t.date=e.split(BC.timeZoneDelimiter)[0],n=e.substr(t.date.length,e.length))),n){var i=BC.timezone.exec(n);i?(t.time=n.replace(i[1],""),t.timezone=i[1]):t.time=n}return t}function V5t(e,t){var r=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),n=e.match(r);if(!n)return{year:NaN,restDateString:""};var i=n[1]?parseInt(n[1]):null,a=n[2]?parseInt(n[2]):null;return{year:a===null?i:a*100,restDateString:e.slice((n[1]||n[2]).length)}}function Y5t(e,t){if(t===null)return new Date(NaN);var r=e.match(B5t);if(!r)return new Date(NaN);var n=!!r[4],i=p3(r[1]),a=p3(r[2])-1,o=p3(r[3]),s=p3(r[4]),l=p3(r[5])-1;if(n)return K5t(t,s,l)?X5t(t,s,l):new Date(NaN);var u=new Date(0);return!J5t(t,a,o)||!$5t(t,i)?new Date(NaN):(u.setUTCFullYear(t,a,Math.max(i,o)),u)}function p3(e){return e?parseInt(e):1}function G5t(e){var t=e.match(U5t);if(!t)return NaN;var r=tN(t[1]),n=tN(t[2]),i=tN(t[3]);return Q5t(r,n,i)?r*eN+n*Qz+i*1e3:NaN}function tN(e){return e&&parseFloat(e.replace(",","."))||0}function W5t(e){if(e==="Z")return 0;var t=e.match(H5t);if(!t)return 0;var r=t[1]==="+"?-1:1,n=parseInt(t[2]),i=t[3]&&parseInt(t[3])||0;return e4t(n,i)?r*(n*eN+i*Qz):NaN}function X5t(e,t,r){var n=new Date(0);n.setUTCFullYear(e,0,4);var i=n.getUTCDay()||7,a=(t-1)*7+r+1-i;return n.setUTCDate(n.getUTCDate()+a),n}var Z5t=[31,null,31,30,31,30,31,31,30,31,30,31];function xDe(e){return e%400===0||e%4===0&&e%100!==0}function J5t(e,t,r){return t>=0&&t<=11&&r>=1&&r<=(Z5t[t]||(xDe(e)?29:28))}function $5t(e,t){return t>=1&&t<=(xDe(e)?366:365)}function K5t(e,t,r){return t>=1&&t<=53&&r>=0&&r<=6}function Q5t(e,t,r){return e===24?t===0&&r===0:r>=0&&r<60&&t>=0&&t<60&&e>=0&&e<25}function e4t(e,t){return t>=0&&t<=59}function UC(e){Ni(1,arguments);var t={},r=ib();for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n]);for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(e[i]===void 0?delete t[i]:t[i]=e[i]);mDe(t)}var t4t=250,HC=class{constructor(t){this.isEnabled=!0;this.clientX=0;this.clientY=0;this.lastSingleTouchTimestamp=0;this.state="idle";this.onTouchStart=async t=>{if(!this.isEnabled)return;let r=this.state;if(this.state="idle",t.touches.length==1){let n=Date.now();n-this.lastSingleTouchTimestamp{this.isEnabled&&(t.touches.length===1&&this.state==="one finger"&&this.handleSingleFingerZoom(t),t.touches.length===2&&this.state==="two fingers"&&this.handleTwoFingersZoom(t))};this.onTouchEnd=()=>{this.isEnabled&&this.state!=="idle"&&(this.onZoomEnd(),this.state="idle")};this.el=t.el,this.onZoomStart=t.onZoomStart,this.onZoomEnd=t.onZoomEnd}disconnect(){this.el.removeEventListener("touchmove",this.onTouchMove),this.el.removeEventListener("touchstart",this.onTouchStart),this.el.removeEventListener("touchend",this.onTouchEnd)}connect(){this.el.addEventListener("touchmove",this.onTouchMove,{capture:!0}),this.el.addEventListener("touchstart",this.onTouchStart,{capture:!0}),this.el.addEventListener("touchend",this.onTouchEnd,{capture:!0})}async handleSingleFingerZoom(t){t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation();let r=this.lastTouches;this.lastTouches=t.touches;let i=t.touches[0].clientY-r[0].clientY;await this.handleZoom(i)}async handleTwoFingersZoom(t){t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation();let r=this.lastTouches;this.lastTouches=t.touches;let n=t.touches,i=Math.sqrt((r[0].clientX-r[1].clientX)**2+(r[0].clientY-r[1].clientY)**2),a=Math.sqrt((n[0].clientX-n[1].clientX)**2+(n[0].clientY-n[1].clientY)**2);await this.handleZoom(a-i)}async handleZoom(t){let r=new WheelEvent("wheel",{clientX:this.clientX,clientY:this.clientY,deltaX:0,deltaY:-t});this.el.querySelector(".nsewdrag.drag").dispatchEvent(r)}};var r4t=([e,t],[r,n])=>{if(te.flatMap(r=>r4t(r,t)),bDe=(e,t)=>t.reduce((r,n)=>n4t(r,n),e),wDe=e=>e.slice().sort((t,r)=>t[0]-r[0]).reduce((t,r)=>{if(t.length===0)return[r];let n=t[t.length-1];if(n[1]+1>=r[0]){let i=[n[0],r[1]];return[...t.slice(0,-1),i]}return[...t,r]},[]);async function i4t(e,t,[r,n]){let i=null;try{i=(await e.callWS({type:"recorder/statistics_during_period",start_time:r.toISOString(),end_time:n.toISOString(),statistic_ids:[t.entity],period:t.period}))[t.entity]}catch(a){throw console.error(a),new Error(`Error fetching statistics of ${t.entity}: ${JSON.stringify(a.message||"")}`)}return(i||[]).map(a=>({statistics:a,x:new Date(a.start),y:null})).filter(({x:a})=>a)}var _De=i4t;async function a4t(e,t,[r,n]){let i=`history/period/${r.toISOString()}?`+[`filter_entity_id=${t.entity}`,"significant_changes_only=0",Dd(t)?"":"no_attributes&",Dd(t)?"":"minimal_response&",`end_time=${n.toISOString()}`].filter(Boolean).join("&"),a;try{a=(await e.callApi("GET",i)||[])[0]}catch(o){throw console.error(o),new Error(`Error fetching states of ${t.entity}: ${JSON.stringify(o.message||"")}`)}return(a||[]).map(o=>({state:o,x:new Date(o.last_updated||o.last_changed),y:null})).filter(({x:o})=>o)}var TDe=a4t;async function o4t(e,t,[r,n]){let i=Math.max(0,5e3-(n-r)),a=new Date(r-1-i);n=Math.min(n,Date.now());let o=new Date(n),s;return yp(t)?s=await _De(e,t,[a,o]):(s=await TDe(e,t,[a,o]),s.length&&(s[0].fake_boundary_datapoint=!0)),{range:[r,n],history:s}}function rN(e){if(Dd(e))return`${e.entity}::attribute:`;if(yp(e))return`${e.entity}::statistics::${e.period}`;if(v3(e))return`${e.entity}`;throw new Error(`Entity malformed:${JSON.stringify(e)}`)}var s4t=Date.parse("0001-01-02T00:00:00.000Z"),g3=class{constructor(){this.ranges={};this.histories={};this.busy=Promise.resolve(null)}add(t,r,n){var o,s,l,u;let i=rN(t),a=(s=(o=this.histories)[i])!=null?s:o[i]=[];a.push(...r),a.sort((f,c)=>+f.x-+c.x),yp(t)||(a=a.filter((f,c)=>c==0||!f.fake_boundary_datapoint)),a=a.filter((f,c)=>{var h;return+((h=a[c-1])==null?void 0:h.x)!=+a[c].x}),this.histories[i]=a,(u=(l=this.ranges)[i])!=null||(l[i]=[]),this.ranges[i].push(n),this.ranges[i]=wDe(this.ranges[i])}clearCache(){this.ranges={},this.histories={}}getData(t){let r=rN(t),n=this.histories[r]||[],i={xs:[],ys:[],states:[],statistics:[]};if(i.xs=n.map(({x:a})=>a),yp(t))i.statistics=n.map(({statistics:a})=>a),i.ys=i.statistics.map(a=>a[t.statistic]);else if(Dd(t))i.states=n.map(({state:a})=>a),i.ys=i.states.map(a=>a.attributes[t.attribute]);else if(v3(t))i.states=n.map(({state:a})=>a),i.ys=i.states.map(a=>a.state);else throw new Error(`Unrecognised fetch type for ${t.entity}`);return i.ys=i.ys.map(a=>a==="unavailable"||a==="none"||a==="unknown"?null:a),i}async fetch(t,r,n){return this.busy=this.busy.catch(()=>{}).then(async()=>{var i,a;if(t=t.map(o=>Math.max(s4t,o)),r.entity){let o=rN(r);(a=(i=this.ranges)[o])!=null||(i[o]=[]);let s=bDe([t],this.ranges[o]);for(let l of s){let u=await o4t(n,r,l);this.add(r,u.history,u.range)}}return this.getData(r)})}};var DRe=$c(iN()),RRe=$c(oE());var Om=$c(VC());var YC={accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],category10:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],category20:["#1f77b4","#aec7e8","#ff7f0e","#ffbb78","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5","#8c564b","#c49c94","#e377c2","#f7b6d2","#7f7f7f","#c7c7c7","#bcbd22","#dbdb8d","#17becf","#9edae5"],category20b:["#393b79","#5254a3","#6b6ecf","#9c9ede","#637939","#8ca252","#b5cf6b","#cedb9c","#8c6d31","#bd9e39","#e7ba52","#e7cb94","#843c39","#ad494a","#d6616b","#e7969c","#7b4173","#a55194","#ce6dbd","#de9ed6"],category20c:["#3182bd","#6baed6","#9ecae1","#c6dbef","#e6550d","#fd8d3c","#fdae6b","#fdd0a2","#31a354","#74c476","#a1d99b","#c7e9c0","#756bb1","#9e9ac8","#bcbddc","#dadaeb","#636363","#969696","#bdbdbd","#d9d9d9"],dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"],pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],tableau10:["#4c78a8","#f58518","#e45756","#72b7b2","#54a24b","#eeca3b","#b279a2","#ff9da6","#9d755d","#bab0ac"],tableau20:["#4c78a8","#9ecae9","#f58518","#ffbf79","#54a24b","#88d27a","#b79a20","#f2cf5b","#439894","#83bcb6","#e45756","#ff9d98","#79706e","#bab0ac","#d67195","#fcbfd2","#b279a2","#d6a5c9","#9e765f","#d8b5a5"],retro_metro:["#ea5545","#f46a9b","#ef9b20","#edbf33","#ede15b","#bdcf32","#87bc45","#27aeef","#b33dc6"],dutch_field:["#e60049","#0bb4ff","#50e991","#e6d800","#9b19f5","#ffa300","#dc0ab4","#b3d4ff","#00bfa0"],river_nights:["#b30000","#7c1158","#4421af","#1a53ff","#0d88e6","#00b7c7","#5ad45a","#8be04e","#ebdc78"],spring_pastels:["#fd7f6f","#7eb0d5","#b2e061","#bd7ebe","#ffb55a","#ffee65","#beb9db","#fdcce5","#8bd3c7"],blue_to_yellow:["#115f9a","#1984c5","#22a7f0","#48b5c4","#76c68f","#a6d75b","#c9e52f","#d0ee11","#d0f400"],grey_to_red:["#d7e1ee","#cbd6e4","#bfcbdb","#b3bfd1","#a4a2a8","#df8879","#c86558","#b04238","#991f17"],black_to_pink:["#2e2b28","#3b3734","#474440","#54504c","#6b506b","#ab3da9","#de25da","#eb44e8","#ff80ff"],blue_to_red:["#1984c5","#22a7f0","#63bff0","#a7d5ed","#e2e2e2","#e1a692","#de6e56","#e14b31","#c23728"],orange_to_purple:["#ffb400","#d2980d","#a57c1b","#786028","#363445","#48446e","#5e569b","#776bcd","#9080ff"],pink_foam:["#54bebe","#76c8c8","#98d1d1","#badbdb","#dedad2","#e4bcad","#df979e","#d7658b","#c80064"],salmon_to_aqua:["#e27c7c","#a86464","#6d4b4b","#503f3f","#333333","#3c4e4b","#466964","#599e94","#6cd4c5"]};function f4t(e){return Array.isArray(e)}function CDe(e){let t=e!=null?e:"category10",r=f4t(t)?t:YC[t]||YC[Object.keys(YC)[t]]||null;if(r===null)throw new Error(`color_scheme: "${e}" is not valid. Valid are an array of colors (see readme) or ${Object.keys(YC)}`);return r}var aN={tickcolor:"rgba(127,127,127,.3)",gridcolor:"rgba(127,127,127,.3)",linecolor:"rgba(127,127,127,.3)",zerolinecolor:"rgba(127,127,127,.3)"};function oN(e){return{paper_bgcolor:e["card-background-color"],plot_bgcolor:e["card-background-color"],font:{color:e["secondary-text-color"],size:11},xaxis:{...aN},yaxis:{...aN},...Object.fromEntries(Array.from({length:28}).map((t,r)=>[`yaxis${r+2}`,{...aN}]))}}var GC=()=>()=>{},c4t={entity:"",show_value:!1,internal:!1,time_offset:"0s",on_legend_click:GC,on_legend_dblclick:GC,on_click:GC},h4t={mode:"lines",line:{width:1,shape:"hv",color:({getFromConfig:e,path:t})=>{let r=CDe(e("color_scheme"));return r[WC(t)%r.length]}},unit_of_measurement:({meta:e})=>e.unit_of_measurement||"",name:({meta:e,getFromConfig:t})=>{let r=e.friendly_name||t(".entity"),n=t(".attribute");return n&&(r+=` (${n}) `),r},hovertemplate:({getFromConfig:e})=>`${e(".name")}
%{x}
%{y} ${e(".unit_of_measurement")}`,yaxis:({getFromConfig:e,path:t})=>{let r=[];for(let i=0;i<=WC(t);i++){let a=e(`entities.${i}.unit_of_measurement`);!e(`entities.${i}.internal`)&&!r.includes(a)&&r.push(a)}let n=r.indexOf(e(".unit_of_measurement"))+1;return"y"+(n===1?"":n)}},v4t={title:"",hours_to_show:1,refresh_interval:"auto",color_scheme:"category10",time_offset:"0s",raw_plotly_config:!1,ha_theme:!0,disable_pinch_to_zoom:!1,raw_plotly:!1,defaults:{entity:{},yaxes:{}},layout:{},on_dblclick:GC,autorange_after_scroll:!1},EDe={side:"right",overlaying:"y",showgrid:!1,visible:!1,layer:"below traces"},d4t={config:{displaylogo:!1,scrollZoom:!0,modeBarButtonsToRemove:["resetScale2d","toImage","lasso2d","select2d"],locale:({hass:e})=>{var t;return(t=e.locale)==null?void 0:t.language}},layout:{height:285,dragmode:"pan",xaxis:{autorange:!1,type:"date"},yaxis:{},yaxis2:{...EDe,visible:!0},...Object.fromEntries(Array.from({length:27}).map((e,t)=>[`yaxis${t+3}`,{...EDe}])),legend:{orientation:"h",bgcolor:"transparent",x:0,y:1,yanchor:"bottom"},title:{y:1,pad:{t:15}},modebar:{orientation:"v"},margin:{b:50,t:0,l:60,r:({getFromConfig:e})=>{let t=e("entities"),r=t.some(({yaxis:i})=>i==="y2"),n=t.some(({show_value:i})=>i);return r|n?60:30}}}};function LDe(e,t){let r=(0,Om.merge)({},e,v4t,e);for(let n=1;n<31;n++){let i="yaxis"+(n==1?"":n);r.layout[i]=(0,Om.merge)({},r.layout[i],r.defaults.yaxes,r.layout[i])}return r=(0,Om.merge)({},r,{layout:r.ha_theme?oN(t):{}},r.raw_plotly_config?{}:d4t,r),r.entities=r.entities.map(n=>{var o,s;typeof n=="string"&&(n={entity:n}),(o=n.entity)!=null||(n.entity="");let[i,a]=n.entity.split("::");return a&&(n.entity=i,n.attribute=a),n=(0,Om.merge)({},n,c4t,r.raw_plotly_config?{}:h4t,(s=r.defaults)==null?void 0:s.entity,n),n}),r}function DDe(e){let t=Object.fromEntries(e.entities.map(({unit_of_measurement:n,yaxis:i})=>["yaxis"+(i==null?void 0:i.slice(1)),{title:n}])),r=(0,Om.merge)({},e.layout,e.raw_plotly_config?{}:{xaxis:{range:e.visible_range}},e.raw_plotly_config?{}:t,e.layout);return(0,Om.merge)({},e,{layout:r},e)}var sb={ms:1,s:1e3,m:1e3*60,h:1e3*60*60,d:1e3*60*60*24,w:1e3*60*60*24*7,M:1e3*60*60*24*30,y:1e3*60*60*24*365},mu=e=>{if(e==="0")return 0;if(!e||!e.match)throw new Error(`Cannot parse "${e}" as a duration`);let t=e.match(/^(?[+-])?(?\d*(\.\d)?)(?(ms|s|m|h|d|w|M|y))$/);if(!t||!t.groups)throw new Error(`Cannot parse "${e}" as a duration`);let r=t.groups,n=r.sign==="-"?-1:1,i=parseFloat(r.number);if(Number.isNaN(i))throw new Error(`Cannot parse "${e}" as a duration`);let a=sb[r.unit];if(a===void 0)throw new Error(`Cannot parse "${e}" as a duration`);return n*i*a},RDe=e=>{try{return mu(e),!0}catch(t){return!1}},PDe=e=>{let t=e.locale.first_weekday,r={language:void 0,sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6}[t];UC({locale:{code:e.locale.language},weekStartsOn:r})},sN=e=>{let t=new Date;switch(e){case"current_minute":return[+LC(t),+zC(t)];case"current_hour":return[+OC(t),+qC(t)];case"current_day":return[+SC(t),+CC(t)];case"current_week":return[+kC(t),+FC(t)];case"current_month":return[+RC(t),+EC(t)];case"current_quarter":return[+DC(t),+NC(t)];case"current_year":return[+IC(t),+PC(t)]}throw new Error(`${e} is not a dynamic relative time`)},IDe=e=>{try{return sN(e),!0}catch(t){return!1}};var lN=["state","sum","min","max","mean"],y3=["5minute","hour","day","week","month"];function p4t(e){if(!dDe(e))return!1;let t=-1;for(let r in e){let n=e[r],i=mu(r);if(!y3.includes(n))throw new Error(`Error parsing automatic period config: "${n}" not expected. Must be ${y3}`);if(i<=t)throw new Error(`Error parsing automatic period config: ranges must be sorted in ascending order, "${r}" not expected`);t=i}return!0}function qDe(e,t,r){if(!t&&!r)return null;if(t!=null||(t="mean"),r!=null||(r="hour"),r==="auto"&&(r={0:"5minute","100h":"hour","100d":"day","100w":"week","100M":"month"}),p4t(r)){let n=r;r="5minute";let i=e[1]-e[0],a=Object.entries(n).map(([o,s])=>[mu(o),s]);for(let[o,s]of a)i>=o&&(r=s)}if(!lN.includes(t))throw new Error(`statistic: "${t}" is not valid. Use ${lN}`);if(!y3.includes(r))throw new Error(`period: "${r}" is not valid. Use ${y3}`);return{statistic:t,period:r}}var SRe=$c(iN());var g4t=Object.prototype.toString;function pa(e){return g4t.call(e).endsWith("Array]")}function Zi(e,t){return e<0?(e=0-e,typeof t=="number"?`- ${e.toPrecision(t)}`:`- ${e.toString()}`):typeof t=="number"?e.toPrecision(t):e.toString()}function Wl(e,t){if(!pa(e)||!pa(t))throw new TypeError("x and y must be arrays");if(e.length!==t.length)throw new RangeError("x and y arrays must have the same length")}var Is=class{constructor(){if(new.target===Is)throw new Error("BaseRegression must be subclassed")}predict(t){if(typeof t=="number")return this._predict(t);if(pa(t)){let r=[];for(let n=0;n1&&arguments[1]!==void 0?arguments[1]:{};if(!pa(e))throw new TypeError("input must be an array");if(e.length===0)throw new TypeError("input must not be empty");var r=t.fromIndex,n=r===void 0?0:r,i=t.toIndex,a=i===void 0?e.length:i;if(n<0||n>=e.length||!Number.isInteger(n))throw new Error("fromIndex must be a positive integer smaller than length");if(a<=n||a>e.length||!Number.isInteger(a))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var o=e[n],s=n+1;so&&(o=e[s]);return o}function zDe(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!pa(e))throw new TypeError("input must be an array");if(e.length===0)throw new TypeError("input must not be empty");var r=t.fromIndex,n=r===void 0?0:r,i=t.toIndex,a=i===void 0?e.length:i;if(n<0||n>=e.length||!Number.isInteger(n))throw new Error("fromIndex must be a positive integer smaller than length");if(a<=n||a>e.length||!Number.isInteger(a))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var o=e[n],s=n+1;s1&&arguments[1]!==void 0?arguments[1]:{};if(pa(e)){if(e.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var r;if(t.output!==void 0){if(!pa(t.output))throw new TypeError("output option must be an array if specified");r=t.output}else r=new Array(e.length);var n=zDe(e),i=FDe(e);if(n===i)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var a=t.min,o=a===void 0?t.autoMinMax?n:0:a,s=t.max,l=s===void 0?t.autoMinMax?i:1:s;if(o>=l)throw new RangeError("min option must be smaller than max option");for(var u=(l-o)/(i-n),f=0;f=0&&r?` ${NDe(e,t-1)}`:NDe(e,t)).padEnd(t)}function NDe(e,t){let r=e.toString();if(r.length<=t)return r;let n=e.toFixed(t);if(n.length>t&&(n=e.toFixed(Math.max(0,t-(n.length-t)))),n.length<=t&&!n.startsWith("0.000")&&!n.startsWith("-0.000"))return n;let i=e.toExponential(t);return i.length>t&&(i=e.toExponential(Math.max(0,t-(i.length-t)))),i.slice(0)}function UDe(e,t){e.prototype.add=function(n){return typeof n=="number"?this.addS(n):this.addM(n)},e.prototype.addS=function(n){for(let i=0;i>n);return this},e.prototype.signPropagatingRightShiftM=function(n){if(n=t.checkMatrix(n),this.rows!==n.rows||this.columns!==n.columns)throw new RangeError("Matrices dimensions must be equal");for(let i=0;i>n.get(i,a));return this},e.signPropagatingRightShift=function(n,i){return new t(n).signPropagatingRightShift(i)},e.prototype.rightShift=function(n){return typeof n=="number"?this.rightShiftS(n):this.rightShiftM(n)},e.prototype.rightShiftS=function(n){for(let i=0;i>>n);return this},e.prototype.rightShiftM=function(n){if(n=t.checkMatrix(n),this.rows!==n.rows||this.columns!==n.columns)throw new RangeError("Matrices dimensions must be equal");for(let i=0;i>>n.get(i,a));return this},e.rightShift=function(n,i){return new t(n).rightShift(i)},e.prototype.zeroFillRightShift=e.prototype.rightShift,e.prototype.zeroFillRightShiftS=e.prototype.rightShiftS,e.prototype.zeroFillRightShiftM=e.prototype.rightShiftM,e.zeroFillRightShift=e.rightShift,e.prototype.not=function(){for(let n=0;nn)throw new RangeError("Row index out of range")}function Rc(e,t,r){let n=r?e.columns:e.columns-1;if(t<0||t>n)throw new RangeError("Column index out of range")}function Bm(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.columns)throw new RangeError("vector size must be the same as the number of columns");return t}function Um(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.rows)throw new RangeError("vector size must be the same as the number of rows");return t}function HDe(e,t){if(!pa(t))throw new TypeError("row indices must be an array");for(let r=0;r=e.rows)throw new RangeError("row indices are out of range")}function jDe(e,t){if(!pa(t))throw new TypeError("column indices must be an array");for(let r=0;r=e.columns)throw new RangeError("column indices are out of range")}function cN(e,t,r,n,i){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if(ZC("startRow",t),ZC("endRow",r),ZC("startColumn",n),ZC("endColumn",i),t>r||n>i||t<0||t>=e.rows||r<0||r>=e.rows||n<0||n>=e.columns||i<0||i>=e.columns)throw new RangeError("Submatrix indices are out of range")}function x3(e,t=0){let r=[];for(let n=0;n=a)throw new RangeError("min must be smaller than max");let s=a-i,l=new mn(t,r);for(let u=0;un?(a=!0,n=r):(i=!1,a=!0);t++}return i}isReducedEchelonForm(){let t=0,r=0,n=-1,i=!0,a=!1;for(;tn?(a=!0,n=r):(i=!1,a=!0);for(let o=r+1;ot.get(i,n)&&(i=a);if(t.get(i,n)===0)n++;else{t.swapRows(r,i);let a=t.get(r,n);for(let o=n;o=0;)if(t.maxRow(i)===0)i--;else{let a=0,o=!1;for(;ar[n]&&(r[n]=this.get(n,i));return r}case"column":{let r=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let n=0;nr[i]&&(r[i]=this.get(n,i));return r}case void 0:{let r=this.get(0,0);for(let n=0;nr&&(r=this.get(n,i));return r}default:throw new Error(`invalid option: ${t}`)}}maxIndex(){Hm(this);let t=this.get(0,0),r=[0,0];for(let n=0;nt&&(t=this.get(n,i),r[0]=n,r[1]=i);return r}min(t){if(this.isEmpty())return NaN;switch(t){case"row":{let r=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let n=0;nr&&(r=this.get(t,n));return r}maxRowIndex(t){Dc(this,t),Hm(this);let r=this.get(t,0),n=[t,0];for(let i=1;ir&&(r=this.get(t,i),n[1]=i);return n}minRow(t){if(Dc(this,t),this.isEmpty())return NaN;let r=this.get(t,0);for(let n=1;nr&&(r=this.get(n,t));return r}maxColumnIndex(t){Rc(this,t),Hm(this);let r=this.get(0,t),n=[0,t];for(let i=1;ir&&(r=this.get(i,t),n[0]=i);return n}minColumn(t){if(Rc(this,t),this.isEmpty())return NaN;let r=this.get(0,t);for(let n=1;n=n)throw new RangeError("min must be smaller than max");let i=new mn(this.rows,this.columns);for(let a=0;a0&&uN(o,{min:r,max:n,output:o}),i.setRow(a,o)}return i}scaleColumns(t={}){if(typeof t!="object")throw new TypeError("options must be an object");let{min:r=0,max:n=1}=t;if(!Number.isFinite(r))throw new TypeError("min must be a number");if(!Number.isFinite(n))throw new TypeError("max must be a number");if(r>=n)throw new RangeError("min must be smaller than max");let i=new mn(this.rows,this.columns);for(let a=0;an||r<0||r>=this.columns||n<0||n>=this.columns)throw new RangeError("Argument out of range");let i=new mn(t.length,n-r+1);for(let a=0;a=this.rows)throw new RangeError(`Row index out of range: ${t[a]}`);i.set(a,o-r,this.get(t[a],o))}return i}subMatrixColumn(t,r,n){if(r===void 0&&(r=0),n===void 0&&(n=this.rows-1),r>n||r<0||r>=this.rows||n<0||n>=this.rows)throw new RangeError("Argument out of range");let i=new mn(n-r+1,t.length);for(let a=0;a=this.columns)throw new RangeError(`Column index out of range: ${t[a]}`);i.set(o-r,a,this.get(o,t[a]))}return i}setSubMatrix(t,r,n){if(t=mn.checkMatrix(t),t.isEmpty())return this;let i=r+t.rows-1,a=n+t.columns-1;cN(this,r,i,n,a);for(let o=0;otypeof t=="number")}ni.random=ni.rand;ni.randomInt=ni.randInt;ni.diagonal=ni.diag;ni.prototype.diagonal=ni.prototype.diag;ni.identity=ni.eye;ni.prototype.negate=ni.prototype.neg;ni.prototype.tensorProduct=ni.prototype.kroneckerProduct;var mn=class extends ni{constructor(t,r){if(super(),mn.isMatrix(t))return t.clone();if(Number.isInteger(t)&&t>=0)if(this.data=[],Number.isInteger(r)&&r>=0)for(let n=0;n"u"&&(r=t,t=this.columns),Rc(this,t,!0),r=Um(this,r);for(let n=0;nMath.abs(v[f])&&(f=s);if(f!==l){for(u=0;u=0;u--){for(l=0;lo?i.set(a,o,t.get(a,o)):a===o?i.set(a,o,1):i.set(a,o,0);return i}get upperTriangularMatrix(){let t=this.LU,r=t.rows,n=t.columns,i=new mn(r,n);for(let a=0;aMath.abs(t)?(r=t/e,Math.abs(e)*Math.sqrt(1+r*r)):t!==0?(r=e/t,Math.abs(t)*Math.sqrt(1+r*r)):0}var _3=class{constructor(t){t=Pc.checkMatrix(t);let r=t.clone(),n=t.rows,i=t.columns,a=new Float64Array(i),o,s,l,u;for(l=0;l=0;u--){for(l=0;l=0;s--){for(a=0;a=0;y--)if(v[y]!==0){for(let E=y+1;E=0;y--){if(y0;){let y,E;for(y=M-2;y>=-1&&y!==-1;y--){let C=Number.MIN_VALUE+S*Math.abs(v[y]+Math.abs(v[y+1]));if(Math.abs(g[y])<=C||Number.isNaN(g[y])){g[y]=0;break}}if(y===M-2)E=4;else{let C;for(C=M-1;C>=y&&C!==y;C--){let L=(C!==M?Math.abs(g[C]):0)+(C!==y+1?Math.abs(g[C-1]):0);if(Math.abs(v[C])<=S*L){v[C]=0;break}}C===y?E=3:C===M-1?E=1:(E=2,y=C)}switch(y++,E){case 1:{let C=g[M-2];g[M-2]=0;for(let L=M-2;L>=y;L--){let R=Rd(v[L],C),I=v[L]/R,P=C/R;if(v[L]=R,L!==y&&(C=-P*g[L-1],g[L-1]=I*g[L-1]),u)for(let D=0;D=v[y+1]);){let C=v[y];if(v[y]=v[y+1],v[y+1]=C,u&&yr&&a.set(f,c,t.get(f,c)/this.s[c]);let o=this.U,s=o.rows,l=o.columns,u=new mn(n,s);for(let f=0;ft&&r++;return r}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return mn.diag(this.s)}};function A3(e,t,r=!1){return e=Pc.checkMatrix(e),t=Pc.checkMatrix(t),r?new T3(e).solve(t):e.isSquare()?new w3(e).solve(t):new _3(e).solve(t)}var Vm=class extends Is{constructor(t,r,n){super(),t===!0?(this.degree=r.degree,this.powers=r.powers,this.coefficients=r.coefficients):(Wl(t,r),w4t(this,t,r,n))}_predict(t){let r=0;for(let n=0;n0&&l!==this.coefficients.length-1?s=` + ${s}`:l!==this.coefficients.length-1&&(s=` ${s}`)),o=s+o;return o.charAt(0)==="+"&&(o=o.slice(1)),`f(x) = ${o}`}static load(t){if(t.name!=="polynomialRegression")throw new TypeError("not a polynomial regression model");return new Vm(!0,t)}};function w4t(e,t,r,n){let i=t.length,a;if(Array.isArray(n))a=n,n=a.length;else{n++,a=new Array(n);for(let c=0;c=0?r=`f(x) = ${Zi(this.A,t)}x^{${Zi(this.B,t)}}`:r=`f(x) = \\frac{${Zi(this.A,t)}}{x^{${Zi(-this.B,t)}}}`,r=r.replace(/e([+-]?[0-9]+)/g,"e^{$1}"),r}static load(t){if(t.name!=="powerRegression")throw new TypeError("not a power regression model");return new Ym(!0,t)}};function _4t(e,t,r){let n=t.length,i=new Array(n),a=new Array(n);for(let s=0;s=0?`f(x) = ${Zi(this.B,t)}e^{${Zi(this.A,t)}x}`:`f(x) = \\frac{${Zi(this.B,t)}}{e^{${Zi(-this.A,t)}x}}`}static load(t){if(t.name!=="exponentialRegression")throw new TypeError("not a exponential regression model");return new Gm(!0,t)}};function T4t(e,t,r){let n=t.length,i=new Array(n);for(let o=0;on.residual-i.residual);let t=e.length,r=Math.floor(t/2);return t%2===0?e[r-1]:e[r]}function d8e(e,t,r,n){let i=Array(n).fill(0).map((s,l)=>l),a=h8e(t,r,n),o;for(let s of a){let l=c8e(s,i),u=[];for(let c=0;c0&&f!==l.length-1?s=` + ${s}`:f!==l.length-1&&(s=` ${s}`)),o=s+o;return o.startsWith("+")&&(o=o.slice(1)),`f(x) = ${o}`}static load(t){if(t.name!=="robustPolynomialRegression")throw new TypeError("not a RobustPolynomialRegression model");return new lb(t,void 0,void 0)}};var DN=$c(kRe()),RN=$c(pN());var C3=class extends Is{constructor(r,n,i){super();X3(this,"x0",0);X3(this,"dt",0);X3(this,"filtered",[]);if(r===!0)throw new Error("not implemented");Wl(r,n),this._regress(r,n,i)}_regress(r,n,i){var a=(0,RN.default)(new Float64Array(n)),o=(0,RN.default)(new Float64Array(Array(n.length).fill(0)));(0,DN.default)(1,a,o),this.x0=r[0],this.dt=(r[r.length-1]-r[0])/r.length;let s=Array.from(a.data).map((l,u)=>[l,u]).sort((l,u)=>u[0]-l[0]);for(let l=i;lparseFloat(e),E3=typeof window!="undefined"?window.eval:global.eval,db=(e,t)=>e.map((r,n)=>{let i=qN(r);return Number.isNaN(i)?r:t(i,n)}),L3=({xs:e,ys:t,states:r,statistics:n,...i})=>{let a=t.map(s=>qN(s)),o=a.map(s=>!isNaN(s));return{ys:a.filter((s,l)=>o[l]),xs:e.filter((s,l)=>o[l]),states:r.filter((s,l)=>o[l]),statistics:n.filter((s,l)=>o[l]),...i}},zCt={force_numeric:()=>L3,add:e=>({ys:t})=>({ys:db(t,r=>r+e)}),multiply:e=>({ys:t})=>({ys:db(t,r=>r*e)}),calibrate_linear:e=>({ys:t,meta:r})=>{let n=e.map(a=>a.split("->").map(parseFloat)),i=new Lc(n.map(([a,o])=>a),n.map(([a,o])=>o));return{ys:i.predict(t.map(qN)),meta:{...r,regression:i}}},deduplicate_adjacent:()=>({xs:e,ys:t,states:r,statistics:n})=>{let i=t.map((a,o)=>a!==t[o-1]);return{ys:t.filter((a,o)=>i[o]),xs:e.filter((a,o)=>i[o]),states:r.filter((a,o)=>i[o]),statistics:n.filter((a,o)=>i[o])}},delta:()=>({ys:e,meta:t,xs:r,statistics:n,states:i})=>{let a={y:NaN};return{meta:{...t,unit_of_measurement:`\u0394${t.unit_of_measurement}`},ys:db(e,o=>{let s=o-a.y;return a.y=o,s}).slice(1),xs:r.slice(1),statistics:n.slice(1),states:i.slice(1)}},derivate:(e="h")=>({xs:t,ys:r,meta:n})=>{let i={x:+t[0],y:NaN};return PN(e),PN(e),{meta:{...n,unit_of_measurement:`${n.unit_of_measurement}/${e}`},xs:t,ys:db(r,(a,o)=>{let s=+t[o],l=(s-i.x)/sb[e],u=(a-i.y)/l;return i.y=a,i.x=s,u})}},integrate:(e="h")=>{var s,l,u;let t=typeof e=="string"?{unit:e}:e,r=(s=t.unit)!=null?s:"h",n=mu((l=t.reset_every)!=null?l:"0s"),i=mu((u=t.offset)!=null?u:"0s");PN(r);let a=new Date;a.setHours(0),a.setMinutes(0),a.setSeconds(0);let o=+a+i;return({xs:f,ys:c,meta:h})=>{let d=0,v={x:NaN,laps:0,y:0};return{meta:{...h,unit_of_measurement:`${h.unit_of_measurement}${r}`},xs:f,ys:db(c,(m,b)=>{let g=+f[b];if(n>0){let w=Math.floor((g-o)/n);w!==v.laps&&(d=0,v.laps=w)}let _=(g-v.x)/sb[r],T=isNaN(v.x);return v.x=g,T?NaN:(d+=v.y*_,v.y=m,d)})}}},sliding_window_moving_average:({window_size:e=10,extended:t=!1,centered:r=!0}={})=>n=>{let{xs:i,ys:a,...o}=L3(n),s=[],l=[],u={y:0,count:0,x:0};for(let f=0;f=e&&(u.x-=+i[f-e],u.y-=a[f-e],u.count--),(f>=e&&fn=>{let{xs:i,ys:a,...o}=L3(n),s=[],l=[],u={ys:[],x:0};for(let f=0;f=e&&(u.x-=+i[f-e],u.ys.shift()),f>=e&&ft=>{let{ys:r,...n}=L3(t),i=r[0];return{ys:r.map(a=>i=i*(1-e)+a*e),...n}},map_y_numbers:e=>{let t=E3(`(i, x, y, state, statistic, xs, ys, states, statistics, meta, vars, hass) => ${e}`);return({xs:r,ys:n,states:i,statistics:a,meta:o,vars:s,hass:l})=>({xs:r,ys:db(n,(u,f)=>t(f,r[f],n[f],i[f],a[f],r,n,i,a,o,s,l))})},map_y:e=>{let t=E3(`(i, x, y, state, statistic, xs, ys, states, statistics, meta, vars, hass) => ${e}`);return({xs:r,ys:n,states:i,statistics:a,meta:o,vars:s,hass:l})=>({xs:r,ys:n.map((u,f)=>t(f,r[f],n[f],i[f],a[f],r,n,i,a,o,s,l))})},map_x:e=>{let t=E3(`(i, x, y, state, statistic, xs, ys, states, statistics, meta, vars, hass) => ${e}`);return({xs:r,ys:n,states:i,statistics:a,meta:o,vars:s,hass:l})=>({ys:n,xs:r.map((u,f)=>t(f,r[f],n[f],i[f],a[f],r,n,i,a,o,s,l))})},resample:(e="5m")=>({xs:t,ys:r,states:n,statistics:i})=>{let a={xs:[],ys:[],states:[],statistics:[]},o=mu(e),s=Math.floor(+t[0]/o)*o,l=+t[t.length-1],u=0;for(let f=s;f({vars:t})=>t[e],store_var:e=>({vars:t,xs:r,ys:n,states:i,statistics:a,meta:o})=>({vars:{...t,[e]:{xs:r,ys:n,states:i,statistics:a,meta:o}}}),trendline:(e="linear")=>{var i,a,o,s,l;let t={};typeof e=="string"?t={type:e}:t={...e},(i=t.type)!=null||(t.type="linear"),(a=t.forecast)!=null||(t.forecast="0s"),(o=t.show_formula)!=null||(t.show_formula=!1),(s=t.show_r2)!=null||(t.show_r2=!1),(l=t.degree)!=null||(t.degree=2);let r=t,n=mu(r.forecast);return u=>{let{xs:f,ys:c,meta:h,...d}=L3(u),v=+f[0]-.1,m=+f[f.length-1],b=f.map(k=>+k-v),g=IN[r.type];if(!g)throw new Error(`Trendline '${r.type}' doesn't exist. Did you mean ${(0,SRe.default)(r.type,Object.keys(IN))}? +Others: ${Object.keys(IN)}`);let _=new g(b,c,r.degree),T=[];if(r.show_r2&&T.push(`r\xB2=${NCt(_.score(b,c).r2,2)}`),n>0){let k=Math.round(b.length/(b[b.length-1]-b[0])*n);b.push(...Array.from({length:k}).map((x,M)=>m-v+n/k*M))}let w=_.predict(b);return r.show_formula&&T.push(_.toString(2)),{...d,xs:b.map(k=>new Date(k+v)),ys:w,meta:{...h,friendly_name:"Trend"+(T.length?` (${T.join(", ")})`:"")}}}},fn:e=>E3(e),filter:e=>{let t=E3(`(i, x, y, state, statistic, xs, ys, states, statistics, meta, vars, hass) => ${e}`);return({xs:r,ys:n,states:i,statistics:a,meta:o,vars:s,hass:l})=>{let u=n.map((f,c)=>t(c,r[c],n[c],i[c],a[c],r,n,i,a,o,s,l));return{ys:n.filter((f,c)=>u[c]),xs:r.filter((f,c)=>u[c]),states:i.filter((f,c)=>u[c]),statistics:a.filter((f,c)=>u[c])}}}},s6=zCt;function PN(e){if(!sb[e])throw new Error(`Unit '${e}' is not valid, use ${Object.keys(sb)}`)}var IN={linear:Lc,polynomial:Vm,power:Ym,exponential:Gm,theil_sen:Wm,robust_polynomial:lb,fft:C3};function NCt(e,t){return Math.round(e*10**t)/10**t}var zN=$c(ERe()),PRe=$c(VC());function FN(e,t){let r=VCt(e,t);return r?new Error(`at [${e}]: ${r}`):null}function VCt(e,t){if(e.match(/^no_theme$/))return'renamed to
ha_theme (inverted logic) in v3.0.0';if(e.match(/^no_default_layout$/))return'replaced with more general raw-plotly-config in v3.0.0. See layout migration guide.';if(e.match(/^offset$/))return"renamed to time_offset in v3.0.0";if(e.match(/^entities\.\d+\.offset$/))try{return mu(t),'renamed to time_offset in v3.0.0 to avoid conflicts with bar-offsets.'}catch(r){}return e.match(/^entities\.\d+\.lambda$/)?'removed in v3.0.0, use filters instead. See lambda migration guide.':e.match(/^entities\.\d+\.show_value\.right_margin$/)?"removed in v3.0.0, use `true` and set the global `time_offset` or `layout.margins.r` to make space at the right. ":e.match(/^significant_changes_only$/)?"removed in v3.0.0, it is now always set to false":e.match(/^minimal_response$/)?"removed in v3.0.0, if you need attributes use the 'attribute' parameter instead.":null}var l6=class{constructor(){this.yaml={};this.cache=new g3;this.busy=!1;this.observed_range=[Date.now(),Date.now()]}resetObservedRange(){this.observed_range=[Date.now(),Date.now()]}async update(t){if(this.busy)throw new Error("ParseConfig was updated while busy");this.busy=!0;try{return this._update(t)}finally{this.busy=!1}}async _update({yaml:t,hass:r,css_vars:n}){var i;this.yaml={},this.errors=[],this.hass=r,this.yaml_with_defaults=LDe(t,n),PDe(r),this.fnParam={vars:{},path:"",hass:r,css_vars:n,getFromConfig:()=>"",get:()=>""};for(let[a,o]of Object.entries(this.yaml_with_defaults))try{await this.evalNode({parent:this.yaml,path:a,key:a,value:o})}catch(s){console.warn(`Plotly Graph Card: Error parsing [${a}]`,s),(i=this.errors)==null||i.push(s)}return this.yaml=DDe(this.yaml),{errors:this.errors,parsed:this.yaml}}async evalNode({parent:t,path:r,key:n,value:i}){var o,s,l,u,f;if(r.match(/^defaults$/))return;if(this.fnParam.path=r,this.fnParam.getFromConfig=c=>this.getEvaledPath(c,r),this.fnParam.get=this.fnParam.getFromConfig,!this.fnParam.xs&&r.match(/^entities\.\d+\./)&&!r.match(/^entities\.\d+\.(entity|attribute|time_offset|statistic|period)/)&&(LRe(i)||r.match(/^entities\.\d+\.filters\.\d+$/))){let c=r.match(/^(entities\.\d+)\./)[1];await this.fetchDataForEntity(c)}typeof i=="string"&&(i.startsWith("$ex")&&(i="$fn ({ getFromConfig, get, hass, vars, path, css_vars, xs, ys, statistics, states, meta }) => "+i.slice(3)),i.startsWith("$fn")&&(i=YCt(i.slice(3))));let a=FN(r,i);if(a&&((o=this.errors)==null||o.push(a)),typeof i=="function")t[n]=i=i(this.fnParam);else if(GCt(i)){let c=Array.isArray(i)?[]:{};t[n]=c;for(let[h,d]of Object.entries(i)){let v=`${r}.${h}`;try{await this.evalNode({parent:c,path:v,key:h,value:d})}catch(m){console.warn(`Plotly Graph Card: Error parsing [${v}]`,m),(s=this.errors)==null||s.push(new Error(`at [${v}]: ${(m==null?void 0:m.message)||m}`))}}}else t[n]=i;if(i=t[n],r.match(/^entities\.\d+\.filters\.\d+$/)&&this.evalFilter({parent:t,path:r,key:n,value:i}),r.match(/^entities\.\d+$/)){this.fnParam.xs||await this.fetchDataForEntity(r);let c=t[n];this.fnParam.getFromConfig("raw_plotly_config")||(c.x||(c.x=this.fnParam.xs),c.y||(c.y=this.fnParam.ys),c.x.length===0&&c.y.length===0&&(c.x=[new Date],c.y=[null])),delete this.fnParam.xs,delete this.fnParam.ys,delete this.fnParam.statistics,delete this.fnParam.states,delete this.fnParam.meta}if(r.match(/^entities$/)){t[n]=t[n].filter(({internal:d})=>!d);let c=t[n],h=c.length;for(let d=0;dnew Date(+m+o)),WCt(f,this.observed_range),c&&f.xs.length>0){let m=f.xs.length-1,b=Math.min(this.observed_range[1],Date.now());f.xs.push(new Date(Math.min(this.observed_range[1],b+o))),f.ys.push(f.ys[m]),f.states.length&&f.states.push(f.states[m]),f.statistics.length&&f.statistics.push(f.statistics[m])}this.fnParam.xs=f.xs,this.fnParam.ys=f.ys,this.fnParam.statistics=f.statistics,this.fnParam.states=f.states,this.fnParam.meta=((v=(d=this.hass)==null?void 0:d.states[a.entity])==null?void 0:v.attributes)||{}}getEvaledPath(t,r){if(t.startsWith(".")&&(t=r.split(".").slice(0,-1).concat(t.slice(1).split(".")).join(".")),(0,PRe.has)(this.yaml,t))return(0,RRe.default)(this.yaml,t);let n=this.yaml_with_defaults;for(let i of t.split(".")){if(n===void 0)return;if(n=n[i],LRe(n))throw new Error(`Since [${t}] is a $fn, it has to be defined before [${r}]`)}return n}evalFilter(t){let r=t.value,n,i=null;typeof r=="string"?n=r:(n=Object.keys(r)[0],i=Object.values(r)[0]);let a=s6[n];if(!a)throw new Error(`Filter '${n}' doesn't exist. Did you mean ${(0,DRe.default)(n,Object.keys(s6))}? +Others: ${Object.keys(s6)}`);let o=i===null?a():a(i);try{let s=o(this.fnParam);for(let l in s)this.fnParam[l]=s[l]}catch(s){throw console.error(s),new Error(`Error in filter: ${s}`)}}},YCt=typeof window!="undefined"?window.eval:global.eval;function GCt(e){return e!==null&&typeof e=="object"&&!(e instanceof Date)}function LRe(e){return typeof e=="function"||typeof e=="string"&&e.startsWith("$fn")||typeof e=="string"&&e.startsWith("$ex")}function WCt(e,t){let r=zN.default.le(e.xs,new Date(t[0]));r>-1&&(e.xs.splice(0,r),e.xs[0]=new Date(t[0]),e.ys.splice(0,r),e.states.splice(0,r),e.statistics.splice(0,r));let n=zN.default.gt(e.xs,new Date(t[1]));n>-1&&(e.xs.splice(n),e.ys.splice(n),e.states.splice(n),e.statistics.splice(n))}var WC=e=>+e.match(/entities\.(\d+)/)[1];var qRe=$c(VC()),ON=d3?"plotly-graph":"plotly-graph-dev";console.info(`%c ${ON.toUpperCase()} %c ${wV} production`,"color: orange; font-weight: bold; background: black","color: white; font-weight: bold; background: dimgray");var NN=class extends HTMLElement{constructor(){super();this.size={};this.isBrowsing=!1;this.isInternalRelayout=0;this.configParser=new l6;this.pausedRendering=!1;this.handles={};this.enterBrowsingMode=()=>{this.isBrowsing=!0,this.resetButtonEl.classList.remove("hidden")};this.exitBrowsingMode=async()=>{this.isBrowsing=!1,this.resetButtonEl.classList.add("hidden"),this.withoutRelayout(async()=>{this.configParser.resetObservedRange(),await this.plot({should_fetch:!0})})};this.onLegendItemClick=({curveNumber:r,...n})=>this.parsed_config.entities[r].on_legend_click({curveNumber:r,...n});this.onLegendItemDoubleclick=({curveNumber:r,...n})=>this.parsed_config.entities[r].on_legend_dblclick({curveNumber:r,...n});this.onDataClick=({points:r,...n})=>this.parsed_config.entities[r[0].curveNumber].on_click({points:r,...n});this.onDoubleclick=()=>this.parsed_config.on_dblclick();this.onRestyle=async()=>{this.isInternalRelayout||(this.enterBrowsingMode(),await this.plot({should_fetch:!0}))};this.onRelayout=async()=>{this.isInternalRelayout||(this.enterBrowsingMode(),await this.plot({should_fetch:!0}))};this.fetchScheduled=!1;this.plot=async({should_fetch:r},n)=>{r&&(this.fetchScheduled=!0),await this._plot(n)};this._plot=pDe(async()=>{var v,m;if(this.pausedRendering)return;let r=this.fetchScheduled;this.fetchScheduled=!1;let n=0;for(;!(this.config&&this.hass&&this.isConnected);){if(n++>50)throw new Error("Card didn't load");console.log("waiting for loading"),await AC(100)}let i=this.contentEl.data.map(({visible:b})=>r&&b!=="legendonly"),a=this.isBrowsing?((v=this.contentEl.layout)==null?void 0:v.uirevision)||0:Math.random(),o=(0,qRe.merge)({},this.config,{layout:{...this.size,uirevision:a},fetch_mask:i},this.isBrowsing?{visible_range:this.getVisibleRange()}:{},this.config),{errors:s,parsed:l}=await this.configParser.update({yaml:o,hass:this.hass,css_vars:this.getCSSVars()});this.errorMsgEl.style.display=s.length?"block":"none",this.errorMsgEl.innerHTML=s.map(b=>""+(b||"See devtools console")+"").join(` +
+`),this.parsed_config=l;let{entities:u,layout:f,config:c,refresh_interval:h,autorange_after_scroll:d}=this.parsed_config;clearTimeout(this.handles.refreshTimeout),h!=="auto"&&h>0&&(this.handles.refreshTimeout=window.setTimeout(()=>this.plot({should_fetch:!0}),h*1e3)),this.titleEl.innerText=this.parsed_config.title||"",f.paper_bgcolor&&(this.titleEl.style.background=f.paper_bgcolor),await this.withoutRelayout(async()=>{await TC.react(this.contentEl,u,f,c),d&&await TC.relayout(this.contentEl,{"yaxis.autorange":!0}),this.contentEl.style.visibility=""}),(m=this.handles.dataClick)==null||m.off("plotly_click",this.onDataClick),this.handles.dataClick=this.contentEl.on("plotly_click",this.onDataClick)});d3||(window.plotlyGraphCard=this);let r=this.attachShadow({mode:"open"});r.innerHTML=` + + +
+
+ + +
`,this.errorMsgEl=r.querySelector("#error-msg"),this.cardEl=r.querySelector("ha-card"),this.contentEl=r.querySelector("div#plotly"),this.resetButtonEl=r.querySelector("button#reset"),this.titleEl=r.querySelector("ha-card > #title"),_V(r.querySelector("style")),this.contentEl.style.visibility="hidden",this.touchController=new HC({el:this.contentEl,onZoomStart:()=>{this.pausedRendering=!0},onZoomEnd:()=>{this.pausedRendering=!1,this.plot({should_fetch:!0})}}),this.withoutRelayout(()=>TC.newPlot(this.contentEl,[],{}))}connectedCallback(){let r=async()=>{let n=this.cardEl.offsetWidth;this.contentEl.style.position="absolute";let i=this.cardEl.offsetHeight;this.contentEl.style.position="",this.size={width:n},i>100&&(this.size.height=i-this.titleEl.offsetHeight),this.plot({should_fetch:!1})};this.handles.resizeObserver=new ResizeObserver(r),this.handles.resizeObserver.observe(this.cardEl),r(),this.handles.relayoutListener=this.contentEl.on("plotly_relayout",this.onRelayout),this.handles.restyleListener=this.contentEl.on("plotly_restyle",this.onRestyle),this.handles.legendItemClick=this.contentEl.on("plotly_legendclick",this.onLegendItemClick),this.handles.legendItemDoubleclick=this.contentEl.on("plotly_legenddoubleclick",this.onLegendItemDoubleclick),this.handles.doubleclick=this.contentEl.on("plotly_doubleclick",this.onDoubleclick),this.resetButtonEl.addEventListener("click",this.exitBrowsingMode),this.touchController.connect(),this.plot({should_fetch:!0})}disconnectedCallback(){var r,n,i,a,o,s,l;(r=this.handles.resizeObserver)==null||r.disconnect(),(n=this.handles.relayoutListener)==null||n.off("plotly_relayout",this.onRelayout),(i=this.handles.restyleListener)==null||i.off("plotly_restyle",this.onRestyle),(a=this.handles.legendItemClick)==null||a.off("plotly_legendclick",this.onLegendItemClick),(o=this.handles.legendItemDoubleclick)==null||o.off("plotly_legenddoubleclick",this.onLegendItemDoubleclick),(s=this.handles.dataClick)==null||s.off("plotly_click",this.onDataClick),(l=this.handles.doubleclick)==null||l.off("plotly_doubleclick",this.onDoubleclick),clearTimeout(this.handles.refreshTimeout),this.resetButtonEl.removeEventListener("click",this.exitBrowsingMode),this.touchController.disconnect()}get hass(){return this._hass}set hass(r){var n,i;if(r){if(((n=this.parsed_config)==null?void 0:n.refresh_interval)==="auto"){let a=!1,o=!1;for(let s of this.parsed_config.entities){let l=r.states[s.entity],u=(i=this._hass)==null?void 0:i.states[s.entity];if(l&&u!==l){a=!0;let f=new Date((u==null?void 0:u.last_updated)||l.last_updated),c=new Date(l.last_updated),h=[+f,+c],d=!1;Dd(s)||v3(s)?d=!0:yp(s)&&(o=!0),d&&this.configParser.cache.add(s,[{state:l,x:new Date(c),y:null}],h)}}a&&this.plot({should_fetch:o},500)}this._hass=r}}async withoutRelayout(r){this.isInternalRelayout++,await r(),this.isInternalRelayout--}getVisibleRange(){var r,n;return(n=(r=this.contentEl.layout.xaxis)==null?void 0:r.range)==null?void 0:n.map(i=>Number.isFinite(i)?i:i.startsWith("-")?2*+ab("0000-01-01 00:00:00.000")-+ab(i.slice(1)):+ab(i))}async setConfig(r){let n=this.config;this.config=r;let i=this.config;this.touchController.isEnabled=!i.disable_pinch_to_zoom,this.exitBrowsingMode()}getCSSVars(){let r=window.getComputedStyle(this.contentEl);return(0,IRe.default)({"card-background-color":"red","primary-background-color":"red","primary-color":"red","primary-text-color":"red","secondary-text-color":"red"},(i,a)=>r.getPropertyValue("--"+a))}getCardSize(){return 3}static getStubConfig(){return{entities:[{entity:"sun.sun"}],hours_to_show:24,refresh_interval:10}}static async getConfigElement(){let{createCardElement:r}=await window.loadCardHelpers(),n=r({type:"history-graph",...this.getStubConfig()});for(;!n.constructor.getConfigElement;)await AC(100);return n.constructor.getConfigElement()}};window.customCards=window.customCards||[];window.customCards.push({type:ON,name:"Plotly Graph Card",preview:!0,description:"Plotly in HA"});customElements.define(ON,NN);})(); +/*! Bundled license information: + +native-promise-only/lib/npo.src.js: + (*! Native Promise Only + v0.8.1 (c) Kyle Simpson + MIT License: http://getify.mit-license.org + *) + +polybooljs/index.js: + (* + * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc + * @license MIT + * @preserve Project Home: https://github.com/voidqk/polybooljs + *) + +plotly.js/stackgl_modules/index.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + (*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + *) + (*! + * pad-left + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT license. + *) + (*! + * repeat-string + * + * Copyright (c) 2014-2015, Jon Schlinkert. + * Licensed under the MIT License. + *) + +object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) + +lodash/lodash.js: + (** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) + +is-buffer/index.js: + (*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + *) + +ieee754/index.js: + (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh *) + +buffer/index.js: + (*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + *) +*/